[rules-users] JAAS issue for GUVNOR login
starfish15
pooja.ghosh at accenture.com
Tue Dec 20 13:29:38 EST 2011
Hi,
We are trying to use JAAS to authenticate the GUVNOR login. I have done the
following already.
1. We use Tomcat 6 as the server.
2. Added Realm in the server.xml as follows
<Realm className="org.apache.catalina.realm.JAASRealm"
appName="drools-guvnor"
userClassNames="com.test.user.User" />
drools-guvnor is the drools war file. The Principal class is User.
3. Added the jaas.config file at <Tomcat>/conf as follows
drools-guvnor{
com.test.JaasGuvnor required debug=true;
};
4.Added the jaas-config-name in components.xml of Tomcat as follows
<security:identity authenticate-method="#{authenticator.authenticate}"
jaas-config-name="D:/Tomcat/6.0.29/apache-tomcat-6.0.29/conf/jass.config"/>
However, i continuously get this runtime error as mentioned below whenever i
try to go to GUVNOR
ERROR 20-12 22:48:02,453 (LoggingHelper.java:error:69) Service method
'public abstract org.drools.guvnor.client.rpc.Us
erSecurityContext
org.drools.guvnor.client.rpc.SecurityService.getCurrentUser()' threw an
unexpected exception: java.lan
g.SecurityException: Unable to locate a login configuration
java.lang.SecurityException: Unable to locate a login configuration
at com.sun.security.auth.login.ConfigFile.<init>(ConfigFile.java:93)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native
Method)
at
sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at
sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at java.lang.Class.newInstance0(Class.java:355)
at java.lang.Class.newInstance(Class.java:308)
at
javax.security.auth.login.Configuration$3.run(Configuration.java:247)
at java.security.AccessController.doPrivileged(Native Method)
at
javax.security.auth.login.Configuration.getConfiguration(Configuration.java:242)
at
javax.security.auth.login.LoginContext$1.run(LoginContext.java:237)
at java.security.AccessController.doPrivileged(Native Method)
at
javax.security.auth.login.LoginContext.init(LoginContext.java:234)
at
javax.security.auth.login.LoginContext.<init>(LoginContext.java:367)
at
javax.security.auth.login.LoginContext.<init>(LoginContext.java:444)
at
org.jboss.seam.security.Identity.getLoginContext(Identity.java:406)
at org.jboss.seam.security.Identity.authenticate(Identity.java:324)
at
org.drools.guvnor.server.security.SecurityServiceImpl.checkAutoLogin(SecurityServiceImpl.java:109)
at
org.drools.guvnor.server.security.SecurityServiceImpl.getCurrentUser(SecurityServiceImpl.java:90)
at
org.drools.guvnor.server.SecurityServiceServlet.getCurrentUser(SecurityServiceServlet.java:63)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at
com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:569)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(RemoteServiceServlet.java:208)
at
com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(RemoteServiceServlet.java:248)
at
com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(AbstractRemoteServiceServlet.java:62)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:637)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:717)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at org.jboss.seam.web.ContextFilter$1.process(ContextFilter.java:42)
at
org.jboss.seam.servlet.ContextualHttpServletRequest.run(ContextualHttpServletRequest.java:53)
at org.jboss.seam.web.ContextFilter.doFilter(ContextFilter.java:37)
at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:857)
at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
at java.lang.Thread.run(Thread.java:662)
Caused by: java.io.IOException: Unable to locate a login configuration
at com.sun.security.auth.login.ConfigFile.init(ConfigFile.java:250)
at com.sun.security.auth.login.ConfigFile.<init>(ConfigFile.java:91)
... 46 more
Any help will be highly appreciated.
--
View this message in context: http://drools.46999.n3.nabble.com/JAAS-issue-for-GUVNOR-login-tp3601947p3601947.html
Sent from the Drools: User forum mailing list archive at Nabble.com.
More information about the rules-users
mailing list