2017-05-29 58 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

但特定的公共用戶需要更改其他用戶的密碼,那麼如何解決? –