SQLNET.ORA 的常见用法

来源:互联网 发布:英雄联盟官方代练 知乎 编辑:程序博客网 时间:2024/06/06 14:13

一、IP 黑白名单

  1. 相关参数
    • TCP.VALIDNODE_CHECKING = YES
      使用这个参数来启用下边的两个参数。
    • TCP.EXCLUDED_NODES = (list of IP addresses)
      指定不允许访问oracle的节点,可以使用主机名或者IP地址 
    • TCP.INVITED_NODES = (list of IP addresses)
      指定允许访问db的客户端,他的优先级比TCP.EXCLUDED_NODES高。
  2. 注意:
    1. excluded_nodes与invited_nodes为互斥方式,不可以同时使用
    2. 如果tcp.invited_nodes与tcp.excluded_nodes都存在,则tcp.invited_nodes优先
    3. 需要将本地地址,或者Cluster群集其他节点的地址都加入到允许列表,否则监听器可能无法启动
    4. 配置或修改之后,一定要重起监听或reload(lsnrctl reload listener)才能生效。
  3. 例子
    tcp.invited_nodes = (192.168.1.192,192.168.1.193,192.168.1.194,192.168.2.*)

二、登录方式限定

  1. SQLNET.AUTHENTICATION_SERVICES= (NTS)
    指定启动一个或多个认证服务none:no authentication methods, including Microsoft Windows native operating system authentication. When SQLNET.AUTHENTICATION_SERVICES is set to none, a valid user name and password can be used to access the database.
    • all:所有的认证方式都支持
    • beq:native operating system authentication for operating systems other than Microsoft Windows
    • kerberos5:Kerberos authentication
    • nts:Windows系统认证
    • radius:Remote Authentication Dial-In User Service (RADIUS) authentication
    • tcps:SSL authentication
  2. NAMES.DIRECTORY_PATH= (TNSNAMES,HOSTNAME)
    指定client name解析方法的次序,默认是NAMES.DIRECTORY_PATH=(tnsnames, onames, hostname) tnsnames:客户端就会首先在tnsnames.ora文件中找orcl的记录(此处orcl为@后面的标记,由于不知道该如何具体称呼,所以此处用orcl代替,此处可能是库名,可能是tnsnames的名字,根据环境不同,所指的内容也不同)
    • ldap(dictionary server):Set to resolve a database service name, net service name, or network service alias through a directory server.
    • hostname/ezconnect:尝试把orcl当作一个主机名,通过网络的途径去解析它的ip地址然后去连接这个ip上GLOBAL_DBNAME=orcl这个实例
    • cds (分布式环境下):Set to resolve service information through an existing Network Information Service (NIS).
    • nis (Network Information Service (NIS)

    三、其它限制

    1. 时间限制
      连接超时时间,即连接300秒没有活动自动断开连接。
      sqlnet.expire_time = 300
    2. 版本限制
      可以对客户端的版本进行限制,8代表必须是8i以上版本的客户端才允许连进来
      • 12c以前版本(Version 9.2.0.8 to 11.2.0.4)
        SQLNET_ALLOWED_LOGON_VERSION=8;
      • 12c(默认只允许11g和12c客户端连进来)
        SQLNET.ALLOWED_LOGON_VERSION_SERVER=8
        SQLNET.ALLOWED_LOGON_VERSION_CLIENT=8

    四、Windows下的配置

    1. SQLNET.AUTHENTICATION_SERVICES  必须设置为NTS 或者ALL 才能使用OS 认证;不设置或者设置为其他任何值都不能使用OS  认证。

    2. 该用户必须属于OSDBA  组才能以sysdba  身份登录。这里的OSDBA  组在不同类型的操作系统上,名称会不一样。在unix  系统上名称为“dba ” ,而在windows  系统上名称则为“ORA_DBA ” 。
    3. 要保证 remote_login_passwordfile 参数 = EXCLUSIVE
    原创粉丝点击