Configuration d'une connexion par programmation JAAS sur le conteneur du client d'application Liberty
Le conteneur du client d'application Liberty peut être configuré pour utiliser une connexion par programmation JAAS.
Avant de commencer
Pourquoi et quand exécuter cette tâche
- Configuration de connexion JAAS WSLogin : configuration de connexion JAAS générique qu'un conteneur de client d'application de Liberty peut utiliser pour réaliser l'authentification sur la base de l'ID et du mot de passe d'un utilisateur. Cependant, cette configuration ne prend pas en charge le gestionnaire CallbackHandler spécifié dans le descripteur de déploiement du module d'application client.
- Configuration de connexion JAAS ClientContainer : cette configuration de connexion JAAS
reconnaît le gestionnaire CallbackHandler spécifié dans le descripteur de déploiement
du module d'application client, si spécifié. Si aucun gestionnaire n'a été spécifié dans le descripteur de déploiement, le gestionnaire spécifié par programme est utilisé.
Les modules de connexion qui sont spécifiés par la configuration de connexion JAAS implémentent une technologie d'authentification définie. Un module de connexion peut rassembler les données d'identification de l'utilisateur à l'aide de l'interface javax.security.auth.callback.CallbackHandler. Liberty fournit une implémentation sans invite de l'interface CallbackHandler, qui est appelée com.ibm.websphere.security.auth.callback.WSCallbackHandlerImpl. Cette implémentation permet à un développeur d'application de spécifier les données d'identification directement dans l'application sans avoir à interagir avec l'utilisateur. Il existe deux façons de spécifier votre implémentation CallbackHandler :
- En spécifiant votre implémentation par programmation, en tant qu'argument au constructeur javax.security.auth.login.LoginContext, par exemple :
LoginContext logincontext = new LoginContext("ClientContainer", new WSCallbackHandlerImpl("user", "password"));
- En spécifiant votre nom d'implémentation dans le descripteur de déploiement du module d'application client
(application-client.xml), par exemple :
<callbackhandler>com.acme.callbackhandler.WSCallbackHandlerImpl/<callbackhandler>
- En spécifiant votre implémentation par programmation, en tant qu'argument au constructeur javax.security.auth.login.LoginContext, par exemple :