Java开发网 |
注册 |
登录 |
帮助 |
搜索 |
排行榜 |
发帖统计
|
您没有登录 |
» Java开发网 » Database/JDBC/SQL/JDO/Hibernate
» Oracle
打印话题 寄给朋友 订阅主题 |
作者 | 限制某些IP地址访问Oracle [精华] |
jeremy
发贴: 23 积分: 20 |
于 2003-09-19 15:18
由于历史原因,SYSTEM的密码大家都知道,觉得这样实在是比较危险,说不定那天把数据全删除了!咳,还是先限制某些IP地址的机器访问数据库。 服务器有没有防火墙,只能用下面的法子了。 1、确认已安装 Oracle Connection Manager,如果没有就安装吧! 2、修改Init.ora文件,将 mts_dispatchers 部分修改如下: mts_dispatchers="(protocol=tcp) (multiplex=on)" 3、修改%ORACLE_HOME%\network\admin\cman.ora文件,如果没有就到%ORACLE_HOME%\network\admin\sample目录下拷贝一个过来。 主要是修改 CMAN_RULES 部分 CMAN_RULES = (RULE_LIST= (RULE=(SRC=rd_01)(DST=rdserver)(SRV=passxz)(ACT=accept)) (RULE=(SRC=rd_02)(DST=rdserver)(SRV=passxz)(ACT=accept)) (RULE=(SRC=ts_03)(DST=rdserver)(SRV=passxz)(ACT=reject)) ) SRC:为客户机的IP地址 DST:为服务器的IP地址 SRV:为数据库的SID ACT:为accept表示接收客户机的联入,reject为拒绝客户机的联入 这样配置确保只有rd_01和rd_02能够连接rdserver上的passxz数据库。 4、重新启动Oracle数据库和OracleOraHome81CMan 服务。 5、修改客户机的 tnsnames.ora 文件,增加Connection Manager描述,如下所示,增加了红色部分: 原来的配置 XZ = (DESCRIPTION =(source_route=yes)(address=(protocol=tcp)(host=rdserver)(port=1630)) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = rdserver)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = xz) ) ) 修改后的配置 XZ = (DESCRIPTION =(source_route=yes)(address=(protocol=tcp)(host=rdserver)(port=1630)) (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = rdserver)(PORT = 1521)) ) (CONNECT_DATA = (SERVICE_NAME = xz) ) ) 6、配置完成,应该可以达到预期目标。 觉得还不妥,顺便增加一个Trigger。 create or replace trigger T_DB_EVENT before ddl ON database begin raise_application_error(-20999,'DO NOT DO THAT!'); end T_DB_EVENT; / 这样可以骗过一些半知不解的家伙。 菜鸟请教,基本程序调试不通,急急急急急急!!! |
话题树型展开 |
人气 | 标题 | 作者 | 字数 | 发贴时间 |
6764 | [精华] 限制某些IP地址访问Oracle | jeremy | 1634 | 2003-09-19 15:18 |
5279 | Re:限制某些IP地址访问Oracle | jeremy | 330 | 2003-09-22 16:32 |
5473 | Re:限制某些IP地址访问Oracle | jackzhuo | 23 | 2003-09-22 18:11 |
已读帖子 新的帖子 被删除的帖子 |
Powered by Jute Powerful Forum® Version Jute 1.5.6 Ent Copyright © 2002-2021 Cjsdn Team. All Righits Reserved. 闽ICP备05005120号-1 客服电话 18559299278 客服信箱 714923@qq.com 客服QQ 714923 |