users@glassfish.java.net

glassfish and custom login module

From: <glassfish_at_javadesktop.org>
Date: Fri, 25 Jan 2008 10:23:04 PST

Hello,

I writed a custom login module for an ejb 3 application. I have a swing app client, which has a login/password dialog. It used to work on Oracle AS, and we are moving to Sun AS. I've been looking for two days, still can't find the last errors.

My problems:

- I followed various instructions, extended AppservRealm/AppservPasswordLoginModule, configured everything I could read about (login.conf, domain.xml, <realm> in sun-application.xml). Now, I can see my login module's init method is called at server startup... and that's all. I then get this in server.log:

Logging in user [df] into realm: doctoratsRealm using JAAS module: doctoratsRealm
Login module initialized: class be.uclouvain.doctorat.auth.DoctoratsLoginModule
JAAS login complete.
JAAS authentication aborted.
SEC5046: Audit: Authentication refused for [df].
doPasswordLogin fails
javax.security.auth.login.LoginException: Echec de connexion : tous les modules ont été ignorés
        at javax.security.auth.login.LoginContext.invoke(LoginContext.java:921)
        at javax.security.auth.login.LoginContext.access$000(LoginContext.java:186)
        at javax.security.auth.login.LoginContext$4.run(LoginContext.java:683)
        at java.security.AccessController.doPrivileged(Native Method)
        at javax.security.auth.login.LoginContext.invokePriv(LoginContext.java:680)
        at javax.security.auth.login.LoginContext.login(LoginContext.java:580)
        at com.sun.enterprise.security.auth.LoginContextDriver.doPasswordLogin(LoginContextDriver.java:295)
        at com.sun.enterprise.security.auth.LoginContextDriver.login(LoginContextDriver.java:170)
        at com.sun.enterprise.iiop.security.SecurityServiceImpl$1.run(SecurityServiceImpl.java:306)
        at java.security.AccessController.doPrivileged(Native Method)
        at com.sun.enterprise.iiop.security.SecurityServiceImpl.authenticate(SecurityServiceImpl.java:304)
        at com.sun.enterprise.iiop.security.SecurityServiceImpl.setSecurityContext(SecurityServiceImpl.java:202)
        at com.sun.enterprise.iiop.security.SecServerRequestInterceptor.receive_request(SecServerRequestInterceptor.java:553)
        at com.sun.corba.ee.impl.interceptors.InterceptorInvoker.invokeServerInterceptorIntermediatePoint(InterceptorInvoker.java:627)
        at com.sun.corba.ee.impl.interceptors.PIHandlerImpl.invokeServerPIIntermediatePoint(PIHandlerImpl.java:530)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.getServantWithPI(CorbaServerRequestDispatcherImpl.java:406)
        at com.sun.corba.ee.impl.protocol.CorbaServerRequestDispatcherImpl.dispatch(CorbaServerRequestDispatcherImpl.java:224)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequestRequest(CorbaMessageMediatorImpl.java:1846)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:1706)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleInput(CorbaMessageMediatorImpl.java:1088)
        at com.sun.corba.ee.impl.protocol.giopmsgheaders.RequestMessage_1_2.callback(RequestMessage_1_2.java:223)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.handleRequest(CorbaMessageMediatorImpl.java:806)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.dispatch(CorbaMessageMediatorImpl.java:563)
        at com.sun.corba.ee.impl.protocol.CorbaMessageMediatorImpl.doWork(CorbaMessageMediatorImpl.java:2567)
        at com.sun.corba.ee.impl.orbutil.threadpool.ThreadPoolImpl$WorkerThread.run(ThreadPoolImpl.java:555)

 and I get an exception on the client (CORBA NO_PERMISSION 0 No)

- how to set up a password callback so that the user isn't prompted for password at connection, but with the cached username/password from my password dialog? I tried this, with no luck:

        ProgrammaticLogin pm = new ProgrammaticLogin();
        pm.login(username, password);

(nothing in the logs)
[Message sent by forum member 'ymajoros' (ymajoros)]

http://forums.java.net/jive/thread.jspa?messageID=255826