>  기사  >  데이터 베이스  >  Oracle 10g监听加密

Oracle 10g监听加密

WBOY
WBOY원래의
2016-06-07 17:03:14862검색

oracle10g的监听安全管理机制和oracle9i有很大的变化,Listener的安全机制使用了Password方式和Local OS Authentication方式,在

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----

linux

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.