2017-05-29 108 views
1

oracle apex应用程序的特定用户可以在必要时重置其他用户的密码。 我已经在按钮“更改密码”Click事件中编写了所需功能的代码。oracle apex公共用户管理员权限执行某些特定操作

BEGIN 
APEX_UTIL.REMOVE_USER(p_user_name => :P16_USER_ID); 
APEX_UTIL.CREATE_USER(
     p_user_name=> :P16_USER_ID, 
     p_web_password=> :P16_USER_ID 
    ); 
end; 

但它给出以下消息。

用户需要ADMIN权限才能执行此操作。请联系您的 应用程序管理员。

回答

2

东西告诉我这是一个坏主意。但是,如果您必须这样做,则允许执行此操作的用户必须是管理员,可以在“管理”部分中对其进行设置。

其次,我会用APEX_UTIL.EDIT_USER,而不是删除和创建。

+0

如上所述,如果我使用APEX_UTIL.EDIT_USER,它仍会给出管理员权限错误。 –

1

永远不会给APEX_PUBLIC_USER提供额外的权限,这将打开安全漏洞,因为APEX_PUBLIC_USER用于每个数据库连接。

如果您在APEX应用程序中调用此存储过程或程序包,那么架构所有者应该有权这样做。

+0

但特定的公共用户需要更改其他用户的密码,那么如何解决? –

相关问题