3

我正在使用 Oracle Database 11g Enterprise Edition Release 11.2.00.40 - 64bit Production。我们有一个初始管理员用户,将通过在安装过程中插入到表中来在数据库中创建该用户。此操作需要使用 SH1 协议对密码进行加密。根据 Oracle 文档,我应该能够使用数据库企业版附带的 DBMS_CRYPTO 包。但是我无法看到它。我可以看到 DBMS_CRYPTO_TOOLKIT 包,而不是 DBMS_CRYPTO。这个包没有很好的文档记录,但我发现它是随 Oracle 12c 一起提供的,这甚至让我更加困惑。

我应该额外安装 DBMS_CRYPTO 包还是使用 DBMS_CRYPTO_TOOLKIT 包?有没有人可以解释如何使用 DBMS_CRYPTO_TOOLKIT 包加密通行证?我没有对数据库的 SYS 访问权限,所以我想知道是否有一种方法可以生成 SH1 密码而不使用足够简单的 DBMS_CRYPTO?换句话说,值得安装吗?

4

1 回答 1

10

Oracle 文档说:

安全模型

Oracle 数据库将此包安装在 SYS 模式中。然后,您可以根据需要向现有用户和角色授予包访问权限。

请您的系统管理员授予对它的访问权限:

GRANT EXECUTE ON SYS.DBMS_CRYPTO TO USERXY;

甚至:

GRANT EXECUTE ON SYS.DBMS_CRYPTO TO PUBLIC;

我不明白 Oracle 试图通过不公开这个包来实现什么。我认为使用它不会造成任何伤害。

于 2016-01-15T10:01:26.957 回答