use*_*688 0 oracle-apex oracle12c
我正在 oracle Apex 18.2 中开发一个小型 ERP 我想实现如下所列的自定义安全性
1) 用户应从自定义表中进行身份验证
2) 身份验证后,用户应根据自定义表中的分配角色授权应用程序
3) 用户必须拥有对表的 READ、INSERT、UPDATE 和 DELETE 操作的授权
作为示例图像
根据我的一点知识,我已经做了一些谷歌搜索,但有很多令人困惑的选项,需要推荐和建议。
1) 用户应从自定义表中进行身份验证
Custom。以下是从页面构建器中的帮助文本中复制的可用示例代码:
function my_authentication (
p_username in varchar2,
p_password in varchar2 )
return boolean
is
l_user my_users.user_name%type := upper(p_username);
l_pwd my_users.password%type;
l_id my_users.id%type;
begin
select id , password
into l_id, l_pwd
from my_users
where user_name = l_user;
return l_pwd = rawtohex(sys.dbms_crypto.hash (
sys.utl_raw.cast_to_raw(p_password||l_id||l_user),
sys.dbms_crypto.hash_sh512 ));
exception
when NO_DATA_FOUND then return false;
end;
Run Code Online (Sandbox Code Playgroud)
my_authentication2) 身份验证后,用户应根据自定义表中的分配角色授权应用程序
post_login,检索用户的角色并将它们添加到应用程序项或 APEX 集合。post_login。或者
只需创建一个 Authorization Scheme 来简单地即时查询相同的信息,尽管根据调用这些授权的频率可能会对性能造成很小的影响。
3) 用户必须拥有对表的 READ、INSERT、UPDATE 和 DELETE 操作的授权
| 归档时间: |
|
| 查看次数: |
3101 次 |
| 最近记录: |