Oracle 10g 数据库在安装完毕之后默认安装网页管理Oracle的访问路径,包括:
em:http://localhost:1158/em
isql*plus: http://localhost:5560/isqlplus 和http://localhost:5560/isqlplus/dba
两个isqlplus有两个网址,这是因为普通用户和dba用户登陆。
要以DBA身份登陆isqlplus,必须先配置好oc4j用户。oc4j可以使用两种身份认证方式:
基于xml配置文件(jazn-data.xml)
基于LDAP(Oracle Internet Directory)
第二种正在寻找测试,如果哪位测试出来了可以分享一下。
在此以第一种方式进行测试,也就是采用xml配置文件认证的方式。该配置文件位于
%ORACLE_HOME%/oc4j/j2ee/isqlplus/application-deployments/isqlplus/config(如果是linux或是unix的话是$ORACLE_HOME)
但是该配置文件中的密码是加密过的,所以我们不能手动修改该文件,而是通过JAZN(Java AuthoriZatioN)来配置。JAZN是oracle提供的一个JASS(Java Authentication and Authorization Service)工具,需要使用jdk,也可以使用oracle自带的jdk,在%ORACLE_HOME/jdk下面
需要配置java_home和path,这里就不在介绍了。
进入到dos下面如果跟oracle的安装路径不一样切换到相同的盘符,负责我们需要绝对路径。
前提条件了解后,我们开始操作:
进入到数据库的安装目录下面
%ORACLE_HOME%/oc4j/j2ee/isqlplus/application-deployments/isqlplus/
执行下面的命令:
D:oracleproduct10.2.0db_1BIN>java -Djava.security.properties=D:oracleprod
uct10.2.0db_1sqlplusadminiplusprovider -jar D:oracleproduct10.2.0db_1
oc4jj2eehomejazn.jar -user "iSQL*Plus DBA/admin" -password welcome -shell
进入后:
JAZN:>
添加一个用户:
JAZN:> adduser "iSQL*Plus DBA" user password
查看用户:
JAZN:> listusers "iSQL*Plus DBA"
admin
gyc
赋权限:
JAZN:> grantrole webDba "iSQL*Plus DBA" gyc
收回权限
JAZN:>revokerole webDba "iSQL*Plus DBA" gyc
重新启动isql*plus
isqlplusctl stop
isqlplusctl start
再次登录isqlplus以sysdba权限登录即可。
如果所在的路径不对的话会提示如下错误:
oracle.security.jazn.JAZNRuntimeException: Configuration file "configjazn.xml" does not exist. Check your JAAS configuration settings.
或者
Realm [iSQL*Plus DBA] does not exist in system.