J'ai une question en trois parties liées à JBoss 5 Authentification (dans les conteneurs Web/EJB):authentification JBoss Question (s)
est-il un moyen de propager une identité autre que le nom d'utilisateur qui a été spécifié lors de la connexion? Pour exemple, en utilisant la DatabaseServerLoginModule, je veux authentifier l'utilisateur avec un nom d'utilisateur/mot de passe, mais retourner l'identifiant de l'utilisateur , et non nom d'utilisateur, lorsque ejbContext.getCallerPrincipal() ou httpRequest.getUserPrincipal() est appelé .
Mieux encore, je veux faire un module de connexion personnalisée qui retourne un objet utilisateur (probablement une entité qui a été chargée de la base de données). Cependant, même si j'enveloppe bien cet objet utilisateur dans une sous-classe principale dans mon module de connexion , la couche EJB jamais obtient cet objet. Au lieu de cela, la couche EJB obtient toujours un SimplePrincipal lorsque getCallerPrincipal est appelée.
Je veux être en mesure de déclencher une connexion programme, comme décrit dans WebAuthentication. Cependant, j'ai besoin de pour le faire sans connaître le mot de passe . Imaginez un service à la clientèle interface où un agent du service à la clientèle peut se connecter à l'application en tant qu'utilisateur final. Ils cliquent sur un bouton « login-en » et nous devrions être en mesure de les connecter par programme dans en tant qu'utilisateur, sans jamais connaître le mot de passe de l'utilisateur (le client agent de service est déjà lui-même authentifiées). Vous pouvez également ce même scénario avec « Mot de passe » qui utilise un mécanisme de connexion alternatif pour authentifier l'utilisateur, puis les enregistre dans programatically.
Merci!