Paramètres d'entrée des configurations de connexion au système pour JAAS (Java Authentication and Authorization Service)Cette page permet d'indiquer une liste des configurations de connexion au système JAAS (Java Authentication and Authorization Service).
Pour afficher cette page de la console d'administration, cliquez sur Sécurité > Configuration JAAS > Connexions au système.
Lisez JAAS (Java Authentication and Authorization Service) avant de commencer à définir les modules de connexion supplémentaires utilisés pour l'authentification au niveau du module de sécurité WebSphere Application Server. Ne supprimez pas les modules de connexion au système suivants :
Ces trois configurations de connexion peuvent transmettre les informations de rappel ci-après, gérées par les modules de connexion dans ces configurations. Ces rappels ne sont pas transmis au même moment. Cependant, la combinaison de ces rappels détermine comment WebSphere Application Server authentifie l'utilisateur.
| Rappel | Responsabilité |
|---|---|
| callbacks[0] = new javax.security.auth.callback.NameCallback("Username: "); | Collecte le nom d'utilisateur fourni au cours d'une connexion. Cette
information peut être constituée par le nom d'utilisateur pour les types de connexions suivants :
|
| callbacks[1] = new javax.security.auth.callback.PasswordCallback("Password: ", false); | Collecte le mot de passe fourni au cours d'une connexion. |
| callbacks[2] = new com.ibm.websphere.security.auth.callback.WSCredTokenCallbackImpl("Credential Token: "); | Collecte le jeton LTPA (Lightweight Third Party Authentication) ou un autre type de jeton au cours d'une connexion. En général, ces informations sont définies lorsqu'aucun nom d'utilisateur ni mot de passe n'est défini. |
| callbacks[3] = new com.ibm.wsspi.security.auth.callback.WSTokenHolderCallback("Authz Token List: "); | Collecte l'élément ArrayList des objets TokenHolder renvoyés par l'appel à WSOpaqueTokenHelper. Méthode createTokenHolderListFromOpaqueToken () utilisant comme entrée le jeton d'autorisation CSIv2 (Common Secure Interoperability version 2). |
Dans les configurations de connexion au système, WebSphere Application Server authentifie l'utilisateur sur la base des informations collectées par les rappels. Cependant, un module de connexion personnalisé ne doit pas exécuter d'action sur ces rappels. La liste ci-dessous présente les combinaisons types de ces rappels.
Ce rappel se produit pour la vérification d'identité CSIv2, Web, les connexions par certificat X509 CSIv2, les connexions TAI (Trust Association Interceptor) classiques, etc. Dans une connexion par certificat X.509 CSIv2, WebSphere Application Server mappe le certificat vers un nom d'utilisateur. Cet rappel est utilisé par tout type de connexion établissant des relations de confiance à l'aide du nom d'utilisateur uniquement.
Cette combinaison de rappels s'applique spécifiquement aux connexions avec authentification de base. La plupart des authentifications d'utilisateur s'effectuent à l'aide de ces deux rappels.
Ce rappel est utilisé généralement par un serveur en aval pour valider un jeton LTPA (Lightweight Third Party Authentication). A chaque fois qu'une demande est émise par une instance WebSphere Application Server au lieu d'un client pur, le jeton LTPA est généralement dirigé vers le serveur cible. Dans le cas de la connexion unique (SSO), le jeton LTPA est reçu dans le cookie et utilisé pour la connexion. Si un module de connexion personnalisé a besoin du nom d'utilisateur indiqué dans un jeton LTPA, il peut utiliser la méthode com.ibm.wsspi.security.token.WSSecurityPropagationHelper.validateLTPAToken(byte[]) pour extraire l'ID unique (uniqueID) du jeton. Une fois que l'ID unique a été extrait, la méthode com.ibm.wsspi.security.token.WSSecurityPropagationHelper.getUserFromUniqueID(uniqueID) est utilisée pour obtenir le nom d'utilisateur.
Ce rappel indique que certains attributs propagés sont parvenus au serveur. Les attributs propagés requièrent encore l'une des méthodes d'authentification suivantes :
Si les attributs sont ajoutés au sujet (Subject) à partir d'un client pur, les rappels NameCallback et PasswordCallback authentifient les informations et les objets sérialisés dans le collecteur de jetons sont ajoutés au sujet authentifié.
Si la vérification d'identité CSIv2 et la propagation sont activées, WebSphere Application Server utilise le rappel NameCallback et le collecteur de jetons, qui contient tous les attributs propagés, afin de désérialiser la plupart des objets. WebSphere Application Server utilise le rappel NameCallback uniquement parce que des relations de confiance sont établies avec les serveurs indiqués dans la liste des serveurs sécurisés CSIv2. Pour indiquer les serveurs sécurisés, cliquez sur Sécurité > Protocole d'authentification > Authentification entrante CSIv2.
La sérialisation personnalisée doit uniquement être traitée par un module de connexion personnalisé. Pour plus d'informations, voir "Propagation des attributs de sécurité".
En plus des rappels définis précédemment, la configuration de connexion WEB_INBOUND peut uniquement contenir les rappels supplémentaires suivants :
| Rappel | Responsabilité |
|---|---|
| callbacks[4] = new com.ibm.websphere.security.auth.callback.WSServletRequestCallback("HttpServletRequest: "); | Collecte l'objet de demande de servlet HTTP, s'il est indiqué. Ce rappel permet aux modules de connexion d'extraire les informations de la requête HTTP à utiliser au cours d'une connexion. |
| callbacks[5] = new com.ibm.websphere.security.auth.callback.WSServletResponseCallback("HttpServletResponse: "); | Collecte l'objet de réponse de servlet HTTP, s'il est indiqué. Ce rappel permet aux modules de connexion d'ajouter des informations dans la réponse HTTP comme résultat de la connexion. Par exemple, les modules de connexion peuvent ajouter le cookie SingleSignonCookie à la réponse. |
| callbacks[6] = new com.ibm.websphere.security.auth.callback.WSAppContextCallback("ApplicationContextCallback: "); | Collecte le contexte de l'application Web utilisé au cours de la connexion. Ce rappel est constitué d'un élément HashMap qui contient le nom de l'application avec l'adresse Web de réacheminement, si celle-ci est définie. |
Les modules de connexion ci-dessous sont prédéfinis pour les configurations de connexion au système RMI_INBOUND, WEB_INBOUND et DEFAULT. Vous pouvez ajouter des modules de connexion personnalisés avant, après ou entre les modules de connexion prédéfinis mais ces derniers ne peuvent pas être supprimés.
Ce module de connexion effectue la connexion principale lorsque la propagation des attributs est activée ou désactivée. Une connexion principale utilise les informations d'authentification normales, telles qu'un ID utilisateur et un mot de passe, un jeton LTPA ou un intercepteur de relations de confiance (TAI) et un nom distinctif (DIN) de certificat. Si l'un des scénarios ci-dessous est vrai, ce module de connexion n'est pas utilisé et le module com.ibm.ws.security.server.lm.wsMapInboundLoginModule effectue la connexion principale.
Ce module de connexion effectue la connexion principale à l'aide des informations d'authentification normales, si les conditions ci-dessous sont vraies.
Lorsque l'objet java.util.Hashtable est indiqué, le module de connexion mappe ses attributs dans un sujet (Subject) valide. Lorsque le rappel WSTokenHolderCallback est indiqué, le module de connexion désérialise les objets byte token et régénère le contenu du sujet (Subject) sérialisé. Le type de connexion java.util.Hashtable l'emporte sur tous les autres. Veillez à ce que les éléments susceptibles d'avoir été propagés précédemment par WebSphere Application Server ne soient pas dupliqués ou remplacés.
Ces propriétés sont définies dans le panneau d'authentification CSIv2. Pour accéder à ce panneau, cliquez sur Sécurité > Protocole d'authentification > Authentification sortante CSIv2. Pour définir la propriété com.ibm.CSI.rmiOutboundLoginEnabled, sélectionnez Mappage sortant personnalisé. Pour définir la propriété com.ibm.CSIOutboundPropagationEnabled, sélectionnez Propagation des attributs de sécurité.
Cette configuration de connexion détermine les fonctionnalités de sécurité du serveur cible et son domaine de sécurité. Par exemple, si WebSphere Application Server version 5.1.1 communique avec un serveur d'applications version 5.x, le serveur version 5.1.1 envoie les informations d'authentification au serveur version 5.x à l'aide d'un jeton LTPA. En revanche, si WebSphere Application Server version 5.1.1 communique avec un serveur d'applications version 5.1.x, les informations d'authentification et d'autorisation sont envoyées au serveur de réception si la propagation est activée à la fois sur le serveur d'émission et le serveur de réception.
Le rappel suivant est disponible dans la configuration de connexion RMI_OUTBOUND. Vous pouvez utiliser l'objet com.ibm.wsspi.security.csiv2.CSIv2PerformPolicy renvoyé par ce rappel pour demander la règle de sécurité qui s'applique à cette demande sortante. Cette requête permet de déterminer plus facilement si le domaine cible est différent du domaine en cours et si WebSphere Application Server doit mapper le domaine. Pour plus d'informations, voir "Configuration du mappage sortant vers un domaine cible différent".
| Rappel | Responsabilité |
|---|---|
| callbacks[0] = new WSProtocolPolicyCallback("Protocol Policy Callback: "); |
Fournit des informations de règles liées aux protocoles pour les modules de connexion dans cet appel sortant. Ces informations permettent de déterminer le niveau de sécurité, y compris le domaine cible, les conditions de sécurité requises sur la cible et les conditions de sécurité requises combinées. La méthode suivante permet d'obtenir la règle de sécurité CSIv2PerformPolicy à partir de ce module de connexion spécifique : csiv2PerformPolicy = (CSIv2PerformPolicy) ((WSProtocolPolicyCallback)callbacks[0]).getProtocolPolicy(); Le type d'objet de règles peut être différent pour un protocole autre que RMI. |
Le module de connexion ci-dessous est prédéfini dans la configuration de connexion RMI_OUTBOUND. Vous pouvez ajouter des modules de connexion personnalisés avant, après ou entre les modules de connexion prédéfinis mais ces derniers ne peuvent pas être supprimés.
Avant d'utiliser ce module de connexion, vous pouvez faire appel à un module de connexion personnalisé pour effectuer le mappage des justificatifs. Il est cependant conseillé que ce module de connexion modifie le contenu du sujet (Subject) transmis au cours de la phase de connexion. Si cette consigne est respectée, les modules de connexion traités après ce module de connexion agissent sur le nouveau contenu du sujet (Subject).
Le mécanisme SWAM (Simple WebSphere Authentication Mechanism) ne prend pas en charge les justificatifs transmissibles. Lorsque la méthode d'authentification SWAM est utilisée, WebSphere Application Server ne peut pas envoyer des demandes de serveur à serveur. Dans ce cas, vous devez utiliser LTPA.
Cette configuration de connexion est utilisée par WebSphere Application Server version 5.1 et les versions antérieures.
Le module de connexion com.ibm.ws.security.web.AuthenLoginModule est prédéfini dans la configuration de connexion LTPA. Vous pouvez ajouter des modules de connexion personnalisés avant ou après ce module dans la configuration de connexion LTPA_WEB.
La configuration de connexion LTPA_WEB peut traiter les objets HttpServletRequest et HttpServletResponse avec le nom de l'application Web qui sont transmis à l'aide d'un gestionnaire de rappels. Pour plus d'informations, voir "Personnalisation d'une authentification JAAS (Java Authentication and Authorization Service) côté serveur et d'une configuration de connexion" dans la documentation.
Cette configuration de connexion est utilisée par WebSphere Application Server version 5.1 et les versions antérieures.
Le module de connexion com.ibm.ws.security.server.lm.ltpaLoginModule est prédéfini dans la configuration de connexion LTPA. Vous pouvez ajouter des modules de connexion personnalisés avant ou après ce module dans la configuration de connexion LTPA. Pour plus d'informations, voir "Personnalisation d'une authentification JAAS (Java Authentication and Authorization Service) côté serveur et d'une configuration de connexion" dans la documentation.
Informations connexes
Boutons de la console d'administration