Disable guest users in Guvnor 5.5.0?
ndipiazza Aug 3, 2013 4:33 PMPlease excuse a somewhat simple question.
I'm running Guvnor 5.5.0.Final on tomcat-7.0.42. I replaced seam-security-3.1.0.Final with seam-security-3.2.0.Final.
Here is the XML snippets of which I set up a basic authenticator:
guvnor/WEB-INF/beans.xml
<security:IdentityImpl> <s:modifies/> <security:authenticatorName>jaasAuthenticator</security:authenticatorName> </security:IdentityImpl> <security:jaas.JaasAuthenticator> <s:modifies/> <security:jaasConfigName>drools-guvnor</security:jaasConfigName> </security:jaas.JaasAuthenticator>
jaas.config
drools-guvnor { com.ndipiazza.JaasGuvnor required debug=true; };
See the attached ZIP file for the Guvnor JAAS login
I did not enable Role-based Permissions. I'm fine with everyone having the same roles as long as there are no guest users.
But when I use this configuration and then go to Guvnor, I see I'm already logged in Welcome: guest [Sign Out]
I want it to go to a Form based login. How can I set this up? Am I missing something?
When I enable the role based permissions with this:
<guvnorSecurity:RoleBasedPermissionResolver> <s:modifies/> <guvnorSecurity:enableRoleBasedAuthorization>true</guvnorSecurity:enableRoleBasedAuthorization> </guvnorSecurity:RoleBasedPermissionResolver>
I then get this error message (401 This user has no permissions setup.). And the stack trace below shows:
INFO 03-08 12:53:23,517 (LoggingHelper.java:info:56) Service method 'public abstract org.drools.guvnor.client.rpc.UserSecurityContext org.drools.guvnor.clie nt.rpc.SecurityService.getCurrentUser()' threw an unexpected exception: org.jbos s.seam.security.AuthorizationException: This user has no permissions setup. com.google.gwt.user.server.rpc.UnexpectedException: Service method 'public abstr act org.drools.guvnor.client.rpc.UserSecurityContext org.drools.guvnor.client.rp c.SecurityService.getCurrentUser()' threw an unexpected exception: org.jboss.sea m.security.AuthorizationException: This user has no permissions setup. at com.google.gwt.user.server.rpc.RPC.encodeResponseForFailure(RPC.java: 385) at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:5 88) at com.google.gwt.user.server.rpc.RemoteServiceServlet.processCall(Remot eServiceServlet.java:208) at com.google.gwt.user.server.rpc.RemoteServiceServlet.processPost(Remot eServiceServlet.java:248) at com.google.gwt.user.server.rpc.AbstractRemoteServiceServlet.doPost(Ab stractRemoteServiceServlet.java:62) at javax.servlet.http.HttpServlet.service(HttpServlet.java:647) at javax.servlet.http.HttpServlet.service(HttpServlet.java:728) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:305) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:210) at org.jboss.solder.servlet.exception.CatchExceptionFilter.doFilter(Catc hExceptionFilter.java:65) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:210) at org.jboss.solder.servlet.event.ServletEventBridgeFilter.doFilter(Serv letEventBridgeFilter.java:74) at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Appl icationFilterChain.java:243) at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationF ilterChain.java:210) at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperV alve.java:222) at org.apache.catalina.core.StandardContextValve.invoke(StandardContextV alve.java:123) at org.apache.catalina.authenticator.AuthenticatorBase.invoke(Authentica torBase.java:502) at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.j ava:171) at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.j ava:99) at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java: 953) at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineVal ve.java:118) at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.jav a:408) at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp 11Processor.java:1023) at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process( AbstractProtocol.java:589) at org.apache.tomcat.util.net.AprEndpoint$SocketProcessor.run(AprEndpoin t.java:1852) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor. java:1145) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor .java:615) at java.lang.Thread.run(Thread.java:722) Caused by: org.jboss.seam.security.AuthorizationException: This user has no perm issions setup. at org.drools.guvnor.server.security.SecurityServiceImpl.getUserCapabili ties(SecurityServiceImpl.java:128) at org.drools.guvnor.server.security.SecurityServiceImpl.getCurrentUser( SecurityServiceImpl.java:101) at org.drools.guvnor.server.security.SecurityServiceImpl$Proxy$_$$_WeldC lientProxy.getCurrentUser(SecurityServiceImpl$Proxy$_$$_WeldClientProxy.java) at org.drools.guvnor.server.SecurityServiceServlet.getCurrentUser(Securi tyServiceServlet.java:74) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl. java:57) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAcces sorImpl.java:43) at java.lang.reflect.Method.invoke(Method.java:601) at com.google.gwt.user.server.rpc.RPC.invokeAndEncodeResponse(RPC.java:5 69) ... 27 more
Going in with a debugger i see the user ID is "guest".
What step am I missing so that I can see a login screen?
-
guvnor-jaas.zip 9.7 KB