Heim  >  Artikel  >  Datenbank  >  Oracle 10g监听加密

Oracle 10g监听加密

WBOY
WBOYOriginal
2016-06-07 17:03:14860Durchsuche

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

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn