David.Turing's blog

 

javax.security.auth.login.LoginException:没有为 XXX 配置LoginModules

sssneptune  提出了一个问题如下:
*********************************************************************
error信息为:
javax.security.auth.login.LoginException:没有为 MyRealm  配置LoginModules
我明明已经配置了MyRealm
在我的login.conf文件中
MyRealm  {
        com.jaas.ext.UserLoginModule required;
};

并在tomcat启动文件里,即catalina.bat文件中加入了,如下参数
set JAVA_OPTS=-Djava.security.auth.login.config=%CATALINA_HOME%/conf/login.config

然后又配置了我的myApp.xml文件.
<Realm className="org.apache.catalina.realm.JAASRealm"
         appName="MyRealm"
         userClassNames="com.security.impl.UserPrincipalImpl"
         roleClassNames="com.impl.RolePrincipalImpl"
         useContextClassLoader="false"
         debug="99"/>

为什么它还是报没有配置LoginModules ???
首先声明这个class  :com.jaas.ext.UserLoginModule 肯定是有的在classpath目录下
我估计是这个文件login.config还是没有找到,难道我还是遗漏了什么别的地方,?????
先谢过各位了
*********************************************************************
这是一个比较恼火的问题,我以前在dev2dev广州UG版上已经发帖
http://dev2dev.bea.com.cn/bbs/forum.jspa?forumID=29304&start=0
介绍过JAAS的LoginModule的查找顺序。

假设你的JDK目录是:C:\j2sdk1.4.1_02\
请务必检查 C:\j2sdk1.4.1_02\jre\lib\security下是否已经有该LoginConf文件,如果有,删除就行了,
因为JAAS首先搜索这个目录,你的
set JAVA_OPTS=-Djava.security.auth.login.config=%CATALINA_HOME%/conf/login.config
会被忽略,所以,LoginModule not found!

posted on 2006-03-20 10:17 david.turing 阅读(15841) 评论(6)  编辑  收藏 所属分类: Security异常问题

评论

# re: javax.security.auth.login.LoginException:没有为 XXX 配置LoginModules 2006-03-20 11:57 小云

这位大虾,这个问题我发在matrix论坛里面的,按照你的说法,发现C:\j2sdk1.4.1_02\jre\lib\security目录下并没有你说的这个问题。
没有该LoginConf文件
但是还是失败,希望继续关注  回复  更多评论   

# re: javax.security.auth.login.LoginException:没有为 XXX 配置LoginModules 2006-03-20 13:08 david.turing

恩,我之所以说这个问题比较恼火,是因为它打印出来的error信息不够详细。
它只告诉你LoginModule没找到而没有告诉你它去找了哪些LoginModule及其位置。

现在的情况是别人都能找到而你找不到,所以,很可能是你的login.config文件
已经在加载你的=%CATALINA_HOME%/conf/login.config之前已经被加载过了。
你需要检查你以前是否在哪些环境下用过login.config,简单的方式是Search你的
JDK目录及相关目录。

还有,我不是特指Login.conf这个文件名,而是说任何包含类似
MyRealm {
com.jaas.ext.UserLoginModule required;
};
的文件,再检查一下JRE/Lib/Security目录吧:)  回复  更多评论   

# re: javax.security.auth.login.LoginException:没有为 XXX 配置LoginModules 2006-03-29 14:04 小云

我不知道是否还有别方法可以把conf的文件放置在别的地方,你有没有接触过jetspeed2,它的配置文件就放的很奇怪的位置,
然后,catalina。bat文件中也没有指定参数如set JAVA_OPTS=Djava.security.auth.login.config=%CATALINA_HOME%/conf/login.config

所以我在想是不是还有另外的配置方式,希望继续关注
我的email是:
wangyywang@hotmail.com
  回复  更多评论   

# re: javax.security.auth.login.LoginException:没有为 XXX 配置LoginModules 2006-06-01 16:03 nickey's home

@小云
login.config 文件是在 Java 执行命令行上用特性 -Djava.security.auth.login.config==login.config 指定的。Java 有缺省登录配置文件,所以双等于号(==)替换系统登录配置文件。如果使用一个等于号,login.config 文件将被添加到(而不是替换)系统登录配置文件。因为我们不知道您的系统文件中可能会有什么,所以我们这样做来确保对于各种各样的教程用户都可以得到可靠的结果。

用两个==..  回复  更多评论   

# re: javax.security.auth.login.LoginException:没有为 XXX 配置LoginModules 2007-03-15 11:54 达闻西

我也遇到了这个问题,但是用command就是不行,我还是修改了D:\Program Files\Java\jdk1.5.0_07\jre\lib\security\下的java.security文件,加入了login.config.url.1=file:D:/DOWNLOAD/Josso/tomcatjosso/bin/jaas.conf这样命令才能用的
  回复  更多评论   

# re: javax.security.auth.login.LoginException:没有为 XXX 配置LoginModules [未登录] 2015-03-14 09:28 Alex

更改了java.security里的login.config.url还是不对,路径没错啊,有大神来没  回复  更多评论   


只有注册用户登录后才能发表评论。


网站导航:
 

导航

统计

常用链接

留言簿(110)

我参与的团队

随笔分类(126)

随笔档案(155)

文章分类(9)

文章档案(19)

相册

搜索

积分与排名

最新随笔

最新评论

阅读排行榜

评论排行榜