如何获得Oracle数据库的无密码远程连接(OS认证)?



我正在考虑使用远程OS身份验证连接到Oracle数据库(版本11g)。使用[remote_os_authent]

的指引是什么?这是我想做的:我们建立了一个目录数据库,RMAN使用它来存储Oracle数据库的元数据。我想通过本地机器连接到目录DB,并执行以下命令来重新同步目录DB:

rman target sys/pass@localdb;连接目录catuser/password@catdb;同步目录;

我是否可以通过oracle企业管理器的工作做到这一点?(我通过调用execute文件来完成这个过程,但问题是密码在可执行文件中是明确的。)我需要它,因为我不希望用户密码可用和可见。我不能使用oracle的无密码连接。

使用远程操作系统身份验证被认为是一个坏习惯,因为它是不安全的。

如果您想要脚本而不必以可读格式存储密码以防止密码泄露,最简单的方法是使用oracle钱包。这仍然让您忙于维护数据库和钱包中的密码,但它是相当安全的。你的连接线是sqlplus /@tns_alias其中tns_alias是获取用户名和密码的钱包的密钥。可以在这里找到一个设置示例:http://ronr.blogspot.com/2017/01/cleartext-userid-and-passwords-in.html

另一个选项是启用中央管理用户(CMU)和kerberos。这确实需要相当多的设置,并且不太适合编写脚本。对于交互式使用,它工作得非常好,前提是您正确地设置了kerberos。可以在这里找到CMU设置的示例:https://blog.pythian.com/part-1-creating-an-oracle-18c-centrally-managed-users-testbed-using-oracle-cloud-infrastructure/

请将remote_os_authentication修改回false。它不安全,因为用户很容易被欺骗。

最新更新