JBoss 7.1基于数据库的JAAS身份validation – 身份validation失败

我试图在JBoss 7.1应用程序服务器上实现基于数据库的JAAS身份validation,但得到以下错误。 任何指针都会有所帮助。

我已经分享了配置细节。

14:46:03,807 TRACE [org.jboss.security.auth.spi.DatabaseServerLoginModule](http-localhost / 127.0.0.1:8080-2)获取用户密码 14:46:03,808 DEBUG [org.jboss.jca.core。 connectionmanager.pool.strategy.OnePool](http-localhost / 127.0.0.1:8080-2)AppDS:returnConnection(40c2d8ac,false)[1/9] 14:46:03,808 TRACE [org.jboss.security.auth.spi .DatabaseServerLoginModule](http-localhost / 127.0.0.1:8080-2)resumeAnyTransaction 14:46:03,808 TRACE [org.jboss.security.auth.spi.DatabaseServerLoginModule](http-localhost / 127.0.0.1:8080-2) 用户’test_user’已通过validation,loginOk = true 14:46:03,808 TRACE [org.jboss.security.auth.spi.DatabaseServerLoginModule](http-localhost / 127.0.0.1:8080-2)abort 14:46:03,809 ERROR [org。 jboss.security.authentication.JBossCachedAuthenticationManager](http-localhost / 127.0.0.1:8080-2) 登录失败:javax.security.auth.login.FailedLoginException:密码不正确/密码在 org.jboss.security.auth.spi中是必需的 。 UsernamePasswordLoginModule.login(UsernamePasswordLogin 在sun.reflect.NativeMethodAccessorImpl.invoke0(本地方法)[rt.jar:1.7。 0_25] at sun.reflect.NativeMethodAccessorImpl.invoke(Unknown Source)[rt.jar:1.7.0_25] at sun.reflect.DelegatingMethodAccessorImpl.invoke(Unknown Source)[rt.jar:1.7.0_25] at java.lang.reflect .Method.invoke(未知来源)[rt.jar:1.7.0_25] at javax.security.auth.login.LoginContext.invoke(Unknown Source)[rt.jar:1.7.0_25] at javax.security.auth.login .LoginContext.access $ 000(未知来源)[rt.jar:1.7.0_25] at javax.security.auth.login.LoginContext $ 4.run(未知来源)[rt.jar:1.7.0_25] at javax.security.auth .login.LoginContext $ 4.run(未知来源)[rt.jar:1.7.0_25] at java.security.AccessController.doPrivileged(Native Method)[rt.jar:1.7.0_25] at javax.security.auth.login。 LoginContext.invokePriv(未知来源)[rt.jar:1.7.0_25],位于org.jboss.security.auth的javax.security.auth.login.LoginContext.login(未知来源)[rt.jar:1.7.0_25] 在org.jboss.security.authentication.JBossCachedAuthenticationManager中的entication.JBossCachedAuthenticationManager.defaultLogin(JBossCachedAuthenticationManager.java:449)[picketbox-infinispan-4.0.9.Final-redhat-1.jar:4.0.9.Final-redhat-1]。在org.jboss.security.authentication.JBossCachedAuthenticationManager.authenticate(JBossCachedAuthenticationManager。)上执行了JaasLogin(JBossCachedAuthenticationManager.java:383)[picketbox-infinispan-4.0.9.Final-redhat-1.jar:4.0.9.Final-redhat-1]。 java:371)[picketbox-infinispan-4.0.9.Final-redhat-1.jar:4.0.9.Final-redhat-1] atg.jboss.security.authentication.JBossCachedAuthenticationManager.isValid(JBossCachedAuthenticationManager.java:160) [picketbox-infinispan-4.0.9.Final-redhat-1.jar:4.0.9.Final-redhat-1]在org.jboss.as.web.security.JBossWebRealm.authenticate(JBossWebRealm.java:214)[jboss -as-web-7.1.2.Final-redhat-1.jar:7.1.2.Final-redhat-1] at org.apache.catalina.authenticator.FormAuthenticator.authenticate(FormAuthenticator.java:280)[jboss web-7.0.16.Final-redhat-1.jar:] at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:381)[jbossweb-7.0.16.Final-redhat-1.jar:]在org.jboss.as.jpa.interceptor.WebNonTxEmCloserValve.invoke(WebNonTxEmCloserValve.java:50)[jboss-as-jpa-7.1.2.Final-redhat-1.jar:7.1.2.Final-redhat-1]在org.jboss.as.web.security.SecurityContextAssociationValve.invoke(SecurityContextAssociationValve.java:153)[jboss-as-web-7.1.2.Final-redhat-1.jar:7.1.2.Final-redhat-1]在org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:155)[jbossweb-7.0.16.Final-redhat-1.jar:] at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve。 java:102)[jbossweb-7.0.16.Final-redhat-1.jar:] org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)[jbossweb-7.0.16.Final-redhat- 1.jar:] org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:368)[jbossweb-7.0.16.Final-redhat-1.jar:] at org.apache.coyote.http11.Http11Proc essor.process(Http11Processor.java:877)[jbossweb-7.0.16.Final-redhat-1.jar:] at org.apache.coyote.http11.Http11Protocol $ Http11ConnectionHandler.process(Http11Protocol.java:679)[jbossweb- 7.0.16.Final-redhat-1.jar:] org.apache.tomcat.util.net.JIoEndpoint $ Worker.run(JIoEndpoint.java:931)[jbossweb-7.0.16.Final-redhat-1.jar :] at java.lang.Thread.run(Unknown Source)[rt.jar:1.7.0_25]

的jboss-web.xml中

   <!-- java:/jaas/apsapp --> other /app  

web.xml中

  FORM  /login.xhtml /login.xhtml     Secured Content /auth/* GET POST   ADMINISTRATOR AUTHENTICATED    ADMINISTRATOR   AUTHENTICATED  

Standalone.xml

                       

login.xhtml

  

密码生成

 import org.jboss.security.auth.spi.*; String passwordHash = Util.createPasswordHash("MD5", "base64", null, null, "password"); //Value generated and stored in DB: X03MO1qnZdYdgyfeuILPmQ== 

在我评论出以下在standalone.xml中显示为默认语句的语句之后,它才起作用。