APEX 自定义数据库身份验证

APEX custom database authentication

目前我正在使用数据库帐户作为我的身份验证模式,因此任何拥有有效数据库帐户的人都可以登录。我希望这更具限制性。我所有的用户在他们的用户帐户名中都有一个前缀,用于指定他们所属的组。例如 dev_john、qa_cindy 等。我只希望用户名中带有特定前缀的特定组能够登录。数据库帐户似乎只允许所有。我看到有一个自定义身份验证,但我不确定如何从这里获取数据库用户。

我认为问题在于如何从您的自定义身份验证功能中检查 Oracle 用户的密码。希望您无法找出他们的密码来检查他们,那么您如何确定他们输入了正确的密码?也许有办法,我不知道。

但是,也许更适合此规则的是 授权 方案。用户可以登录,但如果他们的用户名未通过您的授权方案测试,他们将无法访问该应用程序。测试将是一个 PL/SQL 表达式,例如:

:APP_USER like 'QA%' or :APP_USER like 'TEST%'

当用户 DEV_JOHN 登录时,登录成功,但他们得到的只是一个页面,上面写着例如

Only QA and TEST users are allowed to access this system.