授予 dbms_crypto 权限

And*_*rew 6 oracle permissions sysdba grant dbms-crypto

我在我的 oracle 过程中使用 dbms_crypto.encrypt 函数来加密密码。我已连接到 oracle 为:

connect sqlplus as sysdba
Run Code Online (Sandbox Code Playgroud)

然后授予权限:

grant execute on sys.dbms_crypto to myuser;
Run Code Online (Sandbox Code Playgroud)

然后我可以在我的程序中使用 dbms_crypto。但我想知道如何检查我的数据库是否授予 dbms_crypto 权限?因为我必须在另一个数据库中使用此过程,并且不知道该数据库是否具有 dbms_crypto 的授予权限。

Ale*_*sej 7

您可以通过以下方式获得所有特权DBMS_CRYPTO

select *
from dba_tab_privs
where table_name = 'DBMS_CRYPTO'
  and owner = 'SYS';
Run Code Online (Sandbox Code Playgroud)

您图像中的结果表示USER_ABCD具有执行包的权限SYS.DBMS_CRYPTO,并且该权限已由SYS用户授予。