https://docs.oracle.com/en/database/oracle/oracle-database/19/netrf/parameters-for-the-sqlnet.ora.html#GUID-1FA9D26C-4D97-4D1C-AB47-1EC234D924AA

目的

设置连接到Oracle数据库实例时允许的最低身份验证协议。

使用说明

VERSION参数名称中的术语是指身份验证协议的版本,而不是Oracle数据库版本。

如果客户端没有与表1中与SQLNET.ALLOWED_LOGON_VERSION_SERVER参数的值匹配的行相对应的“客户端所需的能力”列中列出的能力,则身份验证将失败,并显示ORA-28040: No matching authentication protocol 错误或ORA-03134: Connections to this server version are no longer supported错误。

也可以看看:

Oracle数据库安全指南

的设置8允许所有密码版本,并允许任意组合DBA_USERS.PASSWORD_VERSIONS10G11G12C

设置12a仅允许12C密码版本。

较大的值表示服务器在客户端为了身份验证必须理解的协议方面的兼容性较差。服务器在对任何特定帐户进行身份验证所必须使用的密码版本方面也有更多限制。客户端是否可以对特定帐户进行身份验证,取决于服务器对其SQLNET.ALLOWED_LOGON_VERSION_SERVER参数的设置以及指定帐户存在的密码版本。密码版本的列表可以在中找到DBA_USERS.PASSWORD_VERSIONS

请注意将值设置为12or的以下含义12a

  • 的值FALSESEC_CASE_SENSITIVE_LOGON,不得使用Oracle实例初始化参数,因为密码不区分大小写需要使用的10G密码版本。如果SEC_CASE_SENSITIVE_LOGONOracle实例初始化参数设置为FALSE,则用户帐户和安全角色将变得不可用,因为独占模式会排除使用10G密码版本。的SEC_CASE_SENSITIVE_LOGONOracle实例初始化参数启用或禁用密码的情况下的灵敏度。但是,由于此版本默认情况下启用了独占模式,因此不支持禁用密码区分大小写。

    注意:

    • 不建议使用Oracle实例初始化参数SEC_CASE_SENSITIVE_LOGON,而应设置SQLNET.ALLOWED_LOGON_VERSION_SERVER参数12以确保以区分大小写的方式处理密码。

    • 在“独占”模式下(SQLNET.ALLOWED_LOGON_VERSION_SERVER设置为12或时,不支持禁用密码区分大小写12a)。

  • 早于Oracle数据库10 g的OCI客户端发行版无法使用基于密码的身份验证向Oracle数据库进行身份验证。

  • 如果客户端使用Oracle Database 10 g,则客户端将收到ORA-03134: Connections to this server version are no longer supported错误消息。要允许连接,请将SQLNET.ALLOWED_LOGON_VERSION_SERVER值设置为8。确保该DBA_USERS.PASSWORD_VERSIONS帐户的值包含该值10G。可能需要重置该帐户的密码。

请注意将值设置为的以下含义12a

  • 要利用12COracle数据库12.2版中引入的新密码版本,应该使用户密码过期,以鼓励用户更改其密码并导致12C为其帐户生成新的密码版本。在此版本中,默认情况下,新密码以区分大小写的方式处理。更改帐户密码后,10G会自动删除不区分大小写的早期密码版本,并12C生成新的密码版本。

  • 更改帐户密码后,先前10G的不区分大小写的密码版本和11G密码版本都会自动删除。

  • JDBC瘦客户端支持:

    在Oracle数据库12.1.0.2版和更高版本中,如果将sqlnet.ora参数设置为SQLNET.ALLOWED_LOGON_VERSION_SERVER12a然后创建一个新帐户或更改现有帐户的密码,则仅12C生成新的密码版本。该12C密码的版本是基于SHA-2 (Secure Hash Algorithm) SHA-512使用去优化的盐渍加密散列PBKDF2(基于密码密钥导出函数2)算法。当数据库服务器ALLOWED_LOGON_VERSION_SERVER设置12a为时运行时,它将以互斥模式运行。在这种模式下,要使用JDBC客户端登录,JRE版本必须至少为版本8。JDBC客户端O7L_MR仅在至少与JRE版本8一起运行时才启用其功能标志。

    注意:

    检查目录视图的PASSWORD_VERSIONS列,DBA_USERS以查看任何给定帐户的密码版本列表。

    如果将sqlnet.ora参数设置SQLNET.ALLOWED_LOGON_VERSION_SERVER12,则服务器将以“独占模式”运行,并且仅生成11G12C版本(分别为密码的基于SHA-1PBKDF2 SHA-2的哈希值)。在这种情况下,具有CPUOct2012修补程序的完全修补的JDBC客户端可以连接,因为这些JDBC客户端提供了O5L_NP客户端功能。

    不具有CPUOct2012的较旧的JDBC客户端不包含针对隐形密码破解漏洞CVE-2012-3132的修复程序,因此不提供O5L_NP客户端功能。因此,请确保正确修补了所有JDBC客户端。

在服务器进行身份验证之前,客户端必须支持身份验证协议的某些功能。如果客户端不支持指定的身份验证功能,则服务器将拒绝连接并显示一条ORA-28040: No matching authentication protocol错误消息。

以下是所有列表 客户能力。一些客户没有所有能力。较新的客户端具有较旧客户端的所有功能,但是较旧的客户端往往比较新的客户端具有更少的功能。

  • O7L_MR:使用密码版本执行Oracle Database 10 g身份验证协议的能力12C。对于JDBC客户端,只有那些至少在JRE版本8上运行的客户端才提供O7L_MR功能。

  • O5L_NP:能够使用密码版本执行Oracle Database 10 g身份验证协议11G,并生成为关键补丁更新CPUOct2012加密的会话密钥。

  • O5L:使用密码版本执行Oracle Database 10 g身份验证协议的能力10G

  • O4L:可以使用密码版本执行Oracle9 i数据库认证协议10G

  • O3L:可以使用密码版本执行Oracle8 i数据库认证协议10G

在上面列表中显示较高的功能比在列表中较低显示的功能更新,更安全。最新的客户端具有旧客户端的所有功能。

下表介绍了:
  • SQLNET.ALLOWED_LOGON_VERSION_SERVER参数的允许设置

  • 创建帐户或更改密码时,其对生成的密码版本的影响

  • 服务器具有此设置时,客户端进行身份验证所需的功能标志

  • 以及该设置是否被视为互斥模式。

表5-1 SQLNET.ALLOWED_LOGON_VERSION_SERVER设置

ALLOWED_LOGON_VERSION_SERVER参数的值生成的密码版本客户要求的能力对客户的意义服务器以独占模式运行

12a

12C

O7L_MR

只有Oracle Database 12 c版本1(12.1.0.2或更高版本)客户端可以连接到服务器。

是的,因为它不同时使用密码版本10G11G密码版本。

12

11G, 12C

O5L_NP

Oracle Database 11 g第2版(11.2.0.3或更高版本)客户端可以连接到服务器。

较旧的客户端需要关键补丁更新CPUOct2012或更高版本,才能获得O5L_NP的功能。

只有已应用关键补丁更新的较旧的客户端才能连接到服务器。

是的,因为它不使用10G密码版本。

11

10G11G12C

O5L

使用Oracle Database 10 g及更高版本的客户端可以连接到服务器。

使用未使用关键补丁更新CPUOct2012或更高版本的Oracle数据库11.2.0.3之前的版本的客户端必须使用10G密码版本。

没有

10

10G11G12C

O5L

它与上一行具有相同的含义。

没有

9

10G11G12C

O4L

它与上一行具有相同的含义。

没有

8

10G11G12C

O3L

它与上一行具有相同的含义。

没有

值:

  • 12a适用于Oracle Database 12 c版本12.1.0.2或更高版本的身份验证协议(最严格的保护)

  • 12适用于Oracle Database 12 c版本12.1身份验证协议(默认和建议值)

  • 11适用于Oracle Database 11 g身份验证协议

  • 10适用于Oracle Database 10 g身份验证协议

  • 9用于Oracle9 i数据库认证协议

  • 8用于Oracle8 i数据库认证协议

注意:

  • 从Oracle Database 12 c版本2(12.2)开始,默认值为12。

  • 对于早期版本,在应用关键补丁更新CPUOct2012及更高版本之后,可以使用值12。

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐