Vous pouvez configurer le conteneur du client
d'application Liberty afin qu'il utilise un module de
connexion Java™
Authentication and Authorization Service (JAAS) personnalisé.
Avant de commencer
Assurez-vous que vous disposez d'un fichier
JAR contenant le module de connexion personnalisé
JAAS, qui implémente l'interface
javax.security.auth.spi.LoginModule.
Pourquoi et quand exécuter cette tâche
L'utilisation d'un module de connexion personnalisé permet de prendre des décisions
d'authentification supplémentaires ou d'ajouter des informations au sujet afin de prendre des décisions
d'autorisation plus fines à l'intérieur même de votre application. Pour configurer un module de connexion personnalisé JAAS, procédez
comme suit.
Procédure
- Ajoutez la fonction appSecurityClient-1.0 à votre fichier client.xml.
<feature>appSecurityClient-1.0</feature>
- Créez une classe com.sample.CustomLoginModule qui
implémente l'interface LoginModule et conditionnez-la dans le
fichier CustomLoginModule.jar.
- Créez un élément <library>
incorporant un élément <fileset> indiquant où
se trouve le fichier CustomLoginModule.jar. Dans
cet exemple, le fichier se trouvez dans le répertoire de
configuration du client et l'ID bibliothèque est customLoginLib.
<library id="customLoginLib">
<fileset dir="${server.config.dir}" includes="CustomLoginModule.jar"/>
</library>
- Créez un élément <jaasLoginModule>.
Dans cet exemple, l'ID est myCustom.
- Configurez le module de connexion personnalisé de manière à exiger
une authentification réussie en associant l'attribut controlFlag à la valeur REQUIRED.
- Définissez l'attribut libraryRef
sur customLoginLib, ID de l'élément
<library> qui est configuré à l'étape
précédente.
<jaasLoginModule id="myCustom" className="com.sample.CustomLoginModule" controlFlag="REQUIRED" libraryRef="customLoginLib"/>
- Créez un élément <jaasLogincontextEntry>
avec l'ID et le nom de la configuration
JAAS définie par le système dans le conteneur du client
d'application :
ClientContainer. Vous pouvez également
définir cette configuration JAAS
sur WSLogin, ou votre propre configuration
JAAS. Dans l'attribut loginModuleRef,
ajoutez l'ID du module de connexion proxy,
Module de connexion par proxy
et myCustom, l'ID de l'élément jaasLoginModule qui est créé à l'étape précédente.
<jaasLoginContextEntry id="ClientContainer" name="ClientContainer"
loginModuleRef="proxy, myCustom"/>