geronimo-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Quintin Beukes <quin...@last.za.net>
Subject Possible Bug in Geronimo when doing remote login with OpenEJB RemoteInitialContextFactory
Date Thu, 10 Sep 2009 12:20:59 GMT
Hey,

Is this a bug, or did something change I don't know of? Note that it
is 2.2, so it could most definitely be either. The code didn't change.
I only changed my JAR files and installed the new server. previously
all this worked.

Either way. I define a security realm called KMSRealm. i test it with
a WAR and EJB and login+authorization works fine. So it seems to work.

But as soon as I test it with a remote OpenEJB client it doesn't work.
I initialize the context factory as so:
    p.put("java.naming.factory.initial",
"org.apache.openejb.client.RemoteInitialContextFactory");
    p.put("java.naming.provider.url", "ejbd://localhost:4201");
    p.put("openejb.authentication.realmName", "KMSRealm");
    p.put("java.naming.security.principal", "quintin");
    p.put("java.naming.security.credentials", "pass");
    InitialContext ctx = new InitialContext(p);

Then I get this\. This is usually the error you get when a Realm isn't
found. Can someone please advice what could have gone wrong so I can
fix it. Thanks.

Exception in thread "main" javax.naming.AuthenticationException: This
principle is not authorized. [Root exception is
javax.security.auth.login.LoginException: No LoginModules configured
for KMSRealm]
        at org.apache.openejb.client.JNDIContext.authenticate(JNDIContext.java:188)
        at org.apache.openejb.client.JNDIContext.getInitialContext(JNDIContext.java:129)
        at javax.naming.spi.NamingManager.getInitialContext(NamingManager.java:667)
        at javax.naming.InitialContext.getDefaultInitCtx(InitialContext.java:288)
        at javax.naming.InitialContext.init(InitialContext.java:223)
        at javax.naming.InitialContext.<init>(InitialContext.java:197)
        at net.kunye.test.Main.main(Main.java:37)
Caused by: javax.security.auth.login.LoginException: No LoginModules
configured for KMSRealm
        at javax.security.auth.login.LoginContext.init(LoginContext.java:256)
        at javax.security.auth.login.LoginContext.<init>(LoginContext.java:499)
        at org.apache.geronimo.security.ContextManager.login(ContextManager.java:92)
        at org.apache.geronimo.security.ContextManager.login(ContextManager.java:108)
        at org.apache.geronimo.openejb.GeronimoSecurityService.login(GeronimoSecurityService.java:53)
        at org.apache.openejb.server.ejbd.AuthRequestHandler.processRequest(AuthRequestHandler.java:56)
        at org.apache.openejb.server.ejbd.EjbDaemon.processAuthRequest(EjbDaemon.java:204)
        at org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:157)
        at org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:71)
        at org.apache.openejb.server.ejbd.KeepAliveServer$Session.service(KeepAliveServer.java:213)
        at org.apache.openejb.server.ejbd.KeepAliveServer.service(KeepAliveServer.java:233)
        at org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:66)
        at org.apache.openejb.server.ServicePool$2.run(ServicePool.java:91)
        at org.apache.openejb.server.ServicePool$3.run(ServicePool.java:120)
        at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
        at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
        at java.lang.Thread.run(Thread.java:595)

-- 
Quintin Beukes

Mime
View raw message