JAAS LoginModule login () e commit () di successo, ma Utente non connesso
-
25-09-2019 - |
Domanda
Ho implementato un LoginModule per eseguire alcuni autenticazione personalizzata, e chiamare l'autenticazione utilizzando il login (metodo della classe LoginContext). login del modulo di login () e commit () metodi vengono chiamati con successo, ma invece di essere in grado di utilizzare l'applicazione web che sto essere rimandato alla pagina di accesso immediatamente. request.getUserPrincipal () è nullo, così come request.getRemoteUser ().
Tutte le idee sarebbe molto apprezzato. Grazie!
informazioni aggiuntive
Inoltre, subito dopo che io chiamo loginContext.login()
sul front-end, chiamando loginContext.getSubject().getPrincipals()
mi dà la giusta elenco dei committenti e ruoli per l'utente che appena effettuato l'accesso.
sto usando Tomcat 6.0.29 come il mio server.
Soluzione 2
I stava cercando di fare login programmatica in Tomcat, e anche se il modulo di login è in esecuzione, il contenitore non riceveva l'autenticazione. La mia soluzione era di fare l'autenticazione utilizzando un modulo HTML con "j_security_check", come di azione.
Altri suggerimenti
umm un salto nel buio
Hai provato dare il permesso nel file delle politiche in questo modo
grant codeBase "file:/myCustomModule.jar" {
permission javax.security.auth.AuthPermission "modifyPrincipals";
permission javax.security.auth.AuthPermission "modifyPublicCredentials";
permission javax.security.auth.AuthPermission "modifyPrivateCredentials";
};