Oracle 10g监听加密


Oracle10g的监听安全管理机制和oracle9i有很大的变化,Listener的安全机制使用了Password方式和Local OS Authentication方式,在使用了Local OS Authentication方式下,即使是设置了监听密码,对于启动监听的用户来说,也是可以不需要任何密码就可以停止监听的。如没有在listener.ora文件里特殊设置的话,oracle10g的监听默认是采用Local OS Authentication安全认证方式的。所以在这种情况下,即使你创建了监听密码,也可以不需要输入密码就可以停止监听。   oracle10g具体采用哪种监听认证方式,可以从listener的启动和lsnrctl status中看到,例如:
LSNRCTL> status
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
LISTENER 的 STATUS
------------------------
别名                      LISTENER
版本                      TNSLSNR for 32-bit Windows: Version 10.2.0.1.0 - Produ
ction
启动日期                  12-5月 -2011 18:55:40
正常运行时间              0 天 0 小时 13 分 2 秒
跟踪级别                  off
安全性                    ON: Password or Local OS Authentication
SNMP                      OFF
监听程序参数文件          c:/oracle/product/10.2.0/db_1/network/admin/listener.o
ra
监听程序日志文件          c:/oracle/product/10.2.0/db_1/network/log/listener.log 。。。。。    从上面的内容“安全性” 可以了解到,监听安全认证的方式是:Password or Local OS Authentication
那如何让oracle10g采用passwod的方式的?只需要在listener.ora文件中添加:LOCAL_OS_AUTHENTICATION_[listener name] = OFF   例如,我现在,在我的listener.ora文件里添加 LOCAL_OS_AUTHENTICATION_LISTENER = OFF    文件内容如下:    # listener.ora Network Configuration File: c:/oracle/product/10.2.0/db_1/network/admin/listener.ora
# Generated by Oracle configuration tools. ###skate add
LOCAL_OS_AUTHENTICATION_LISTENER = OFF
SID_LIST_LISTENER =
  (SID_LIST =
    (SID_DESC =
      (SID_NAME = PLSExtProc)
      (ORACLE_HOME = c:/oracle/product/10.2.0/db_1)
      (PROGRAM = extproc)
    )
  ) LISTENER =
  (DESCRIPTION_LIST =
    (DESCRIPTION =
      (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC1))
      (ADDRESS = (PROTOCOL = TCP)(HOST = LENOVEV001)(PORT = 1521))
    )
  ) 。。。。。。      修改之后,在像oracle9i里那样设置监听密码,这回就需要输入密码验证了,采用了password的认证方式了,例如 
LSNRCTL> service
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
  例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
    处理程序:
      "DEDICATED" 已建立:0 已被拒绝:0
         LOCAL SERVER
服务 "orcl" 包含 1 个例程。
  例程 "orcl", 状态 READY, 包含此服务的 1 个处理程序...
    处理程序:
      "DEDICATED" 已建立:0 已拒绝:0 状态:ready
         LOCAL SERVER
。。。。。。 命令执行成功  
LSNRCTL> quit C:/Documents and Settings/Administrator>lsnrctl LSNRCTL for 32-bit Windows: Version 10.2.0.1.0 - Production on 12-5月 -2011 19:1
8:05 Copyright (c) 1991, 2005, Oracle.  All rights reserved. 欢迎来到LSNRCTL, 请键入"help"以获得信息。
LSNRCTL> service
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
TNS-01169: 监听程序尚未识别口令
LSNRCTL> set password
Password:
命令执行成功
LSNRCTL> service
正在连接到 (DESCRIPTION=(ADDRESS=(PROTOCOL=IPC)(KEY=EXTPROC1)))
服务摘要..
服务 "PLSExtProc" 包含 1 个例程。
  例程 "PLSExtProc", 状态 UNKNOWN, 包含此服务的 1 个处理程序...
    处理程序:
      "DEDICATED" 已建立:0 已被拒绝:0
         LOCAL SERVER
。。。。。。 命令执行成功
LSNRCTL>     ---end----

相关内容