Configuration des propriétés personnalisées TAI SPNEGO (déprécié)

Les propriétés personnalisées de configuration de l'intercepteur TAI (Trust Association Interceptor) SPNEGO (Simple and Protected GSS-API Negotiation Mechanism) contrôlent différents aspects du fonctionnement de SPNEGO TAI. Vous pouvez spécifier des valeurs différentes de propriété pour chaque serveur d'applications.

Fonction obsolète Fonction obsolète:

WebSphere Application Server version 6.1 fournit un intercepteur de relations de confiance (TAI) qui utilise le mécanisme SPNEGO (Simple and Protected GSS-API Negotiation Mechanism) pour négocier et authentifier en toute sécurité les demandes HTTP portant sur des ressources sécurisées. Dans WebSphere Application Server 7.0, cette fonction est obsolète. L'authentification Web SPNEGO fournit un rechargement dynamique des filtres SPNEGO et active la rétromigration sur la méthode de connexion d'application.

depfeat

Chacune des propriétés définies dans le tableau suivant est spécifiée dans l'écran Propriétés Personnalisées (Custom Properties) de SPNEGO TAI à l'aide de la console d'administration. Par souci de commodité, vous avez la possibilité de placer ces propriétés dans un fichier de propriétés. Dans ce cas, SPNEGO TAI charge les propriétés de configuration à partir du fichier, et non à partir de la définition de l'écran des propriétés Personnalisées. Voir la propriété com.ibm.ws.security.spnego.propertyReloadFile présentée dans Propriétés de configuration JVM TAI SPNEGO personnalisées (déprécié).

Pour attribuer des noms de propriétés uniques qui identifient chaque SPN possible, un <id> SPN est inscrit dans le nom de l'attribut et est utilisé dans le but de regrouper tous les attributs associés à chaque SPN. Les <id> SPN sont numérotés de manière séquentielle pour chaque groupe de propriétés.

Tableau 1. Propriétés personnalisées du TAI SPNEGO.

Ce tableau répertorie les propriétés personnalisées TAI.

Nom de la propriété Obligatoire Valeur par défaut
com.ibm.ws.security.spnego.SPN<id>.enableCredDelegate Non false
com.ibm.ws.security.spnego.SPN<id>.filter Non Voir la description qui suit.
com.ibm.ws.security.spnego.SPN<id>.filterClass Non Voir la description qui suit.
com.ibm.ws.security.spnego.SPN<id>.hostName Yes Aucun
com.ibm.ws.security.spnego.SPN<id>.NTLMTokenReceivedPage Non Voir la description qui suit.
com.ibm.ws.security.spnego.SPN<id>.spnegoNotSupportedPage Non Voir la description qui suit.
com.ibm.ws.security.spnego.SPN<id>.trimUserName Non true

com.ibm.ws.security.spnego.SPN<id>.enableCredDelegate

Cette propriété est facultative. Il indique si les données d'identification déléguées kerberos sont stockées par le TAI SPNEGO ou non. Cette propriété active la possibilité pour une application de récupérer les autorisation d'accès stockées et de les propager à d'autres applications en aval pour une authentification SPNEGO supplémentaire.

Cette propriété requiert l'utilisation de la fonction avancée de délégation de données d'identification Kerberos ainsi que le développement de la logique personnalisée par le développeur d'applications. Ce dernier doit directement interagir avec le service d'octroi d'autorisations Kerberos (TGS) afin d'obtenir une autorisation (TGT) au moyen des données d'identification Kerberos déléguées pour le compte de l'utilisateur final à l'origine de la requête. Le développeur doit aussi construire le jeton SPNEGO Kerberos approprié et l'intégrer dans la demande HTTP afin de poursuivre le processus d'authentification SPNEGO en aval et notamment gérer des échanges stimulation-réponse SPNEGO supplémentaires.

com.ibm.ws.security.spnego.SPN<id>.filter

Cette propriété est facultative. Elle définit les critères de filtrage utilisés par la classe définie par la propriété com.ibm.ws.security.spnego.SPN<id>.filterClass. Elle définit également les critères arbitraires qui ont une importance pour la classe d'implémentation utilisée.

La classe d'implémentation par défaut com.ibm.ws.security.spnego.HTTPHeaderFilter utilise cette propriété pour définir une liste de règles de sélection. Ces règles constituent les conditions qui sont comparées aux en-têtes de requête HTTP afin de déterminer si la requête HTTP est sélectionnée ou non pour l'authentification SPNEGO.

Chaque condition est spécifiée avec une paire clé-valeur, séparées les unes des autres par un point-virgule. Les conditions sont évaluées de gauche à droite, comme elles apparaissent dans la propriété spécifiée. Si toutes les conditions sont remplies, la requête HTTP est sélectionnée pour l'authentification SPNEGO.

La clé et la valeur qui constituent la paire clé-valeur sont séparées par un opérateur qui détermine la condition à vérifier. La clé identifie un en-tête de requête HTTP à extraire de la requête, sa valeur est ensuite comparée à la valeur spécifiée dans la paire clé-valeur selon la spécification de l'opérateur. Si l'en-tête qui est identifié par la clé n'est pas présent dans la requête HTTP, la condition est considérée comme non remplie.

Tout en-tête de requête HTTP standard peut être utilisé comme clé dans les paires clé-valeur. Reportez-vous à la spécification HTTP pour obtenir la liste des en-têtes valides. En outre, deux clés sont définies pour extraire des informations de la requête. Ces clés sont également utiles comme critère de sélection qui n'est pas toujours disponible via les en-têtes de requêtes HTTP standards. La clé d'adresse distante est utilisée comme pseudo en-tête afin de récupérer l'adresse TCP/IP distante de l'application client à l'origine de la requête HTTP. La clé de requête d'URL est utilisée comme pseudo en-tête afin de récupérer l'adresse URL utilisée par l'application client pour émettre la requête. L'intercepteur utilise le résultat de l'opération getRequestURL dans l'interface javax.servlet.http.HttpServletRequest pour construire les adresses Web. Si une chaîne de requête est présente, le résultat de l'opération getQueryString dans la même interface est également utilisé. Dans ce cas, l'adresse URL complète est construite de la manière suivante :
String url = request.getRequestURL() + ‘?' + request.getQueryString();
Les opérateurs et les conditions suivants sont définis :
Tableau 2. Conditions et opérations des filtres.

Ce tableau définit les conditions et les opérateurs utilisés dans le filtrage et fournit des exemples.

Condition Opérateur Exemple
Correspondance exacte = =

Les arguments sont comparés comme étant égaux.

host=host.my.company.com
Correspondance partielle (inclut) %=

Les arguments sont comparés avec une correspondance partielle valide.

user-agent%=IE 6
Correspondance partielle (en inclut un sur un grand nombre) ^=

Les arguments sont comparés avec une correspondance partielle qui est valide pour un des nombreux arguments spécifiés.

request-url^=webApp1|webApp2|webApp3
Pas de correspondance !=

Les arguments sont comparés comme étant inégaux.

request-url!=noSPNEGO
Supérieur à >

Les arguments sont comparés de manière lexicographique comme étant supérieurs à.

remote-address>192.168.255.130
Inférieur à <

Les arguments sont comparés de manière lexicographique comme étant inférieurs à.

remote-address<192.168.255.135

com.ibm.ws.security.spnego.SPN<id>.filterClass

Cette propriété est facultative. Il indique le nom de la classe Java utilisée par l'intercepteur TAI SPNEGO pour sélectionner les requêtes HTTP assujetties à l'authentification SPNEGO.

Si aucune classe n'est spécifiée, la classe d'implémentation par défaut com.ibm.ws.security.spnego.HTTPHeaderFilter est utilisée. La classe Java spécifiée doit implémenter l'interface com.ibm.wsspi.security.spnego.SpnegoFilter. Une implémentation par défaut de cette interface est fournie. Spécifiez la classecom.ibm.ws.security.spnego.HTTPHeaderFilter pour utiliser l'implémentation par défaut. Cette classe utilise les règles de sélection définies avec la propriété com.ibm.ws.security.spnego.SPN<id>.filter.

com.ibm.ws.security.spnego.SPN<id>.hostName

Cette propriété est requise. Il précise le nom d'hôte dans le SPN utilisé par SPNEGO TAI dans le but de mettre en place un contexte Kerberos sécurisé. Il n'existe pas de valeur par défaut.

Remarque : Le nom d'hôte représente la version longue du nom d'hôte. Par exemple, myHostName.austin.ibm.com.
Le SPN Kerberos est une chaîne de la forme HTTP/hostname@realm. Le SPN complet est utilisé avec Java Generic Security Service (JGSS) par le fournisseur SPNEGO afin d'obtenir les justificatif de sécurité et contexte de sécurité utilisés au cours du processus d'identification.

com.ibm.ws.security.spnego.SPN<id>.NTLMTokenReceivedPage

Cette propriété est facultative. Il indique l'adresse Web d'une ressource ayant pour contenu celui de l'intercepteur TAI SPNEGO dans la réponse HTTP que l'application client (navigateur) affiche lorsque le jeton SPNEGO est reçu par l'intercepteur quand l'établissement de liaison stimulation-réponse contient un jeton NTLM (NT LAN Manager) au lieu du jeton SPNEGO attendu.

Il peut s'agir d'une adresse Web (http://) ou d'une ressource sur fichier (file://). Si cette propriété n'est pas précisée ou si l'intercepteur ne parvient pas à trouver la ressource spécifiée, le contenu suivant est utilisé :
<html><head><title>Un jeton NTLM a été reçu.</title></head>
<body>La configuration de votre navigateur est correcte mais vous ne vous êtes pas connecté à un
domaine Microsoft(R) Windows(R) pris en charge.
<p>Veuillez vous connecter à l'application au moyen de la page de connexion normale.</html>

com.ibm.ws.security.spnego.SPN<id>.spnegoNotSupportedPage

Cette propriété est facultative. Il indique l'adresse Web d'une ressource ayant pour contenu celui du SPNEGO TAI dans la réponse HTTP que l'application client (navigateur) affiche si elle ne prend pas en charge l'authentification SPNEGO. Il peut s'agir d'une adresse Web (http://) ou d'une ressource sur fichier (file://).

Si cette propriété n'est pas précisée ou si l'intercepteur ne parvient pas à trouver la ressource spécifiée, le contenu suivant est utilisé :
<html><head><title>SPNEGO authentication is not supported</title></head>
<body>SPNEGO authentication is not supported on this client</body></html>;

com.ibm.ws.security.spnego.SPN<id>.trimUserName

Cette propriété est facultative. Il indique si (true ou false) l'intercepteur TAI SPNEGO doit supprimer le suffixe du nom d'utilisateur principal, à partir du caractère "@" précédant le nom de domaine Kerberos.

Si la valeur cette propriété est true, le suffixe du nom d'utilisateur principal est supprimé. Si la valeur de la propriété est false, le suffixe du nom principal est conservé. La valeur utilisée par défaut est true. Par exemple,

Si com.ibm.ws.security.spnego.SPN<id>.trimUserName = true
bobsmith@myKerberosRealm  devient  bobsmith
Si com.ibm.ws.security.spnego.SPN<id>.trimUserName = false
bobsmith@myKerberosRealm reste  bobsmith@myKerberosRealm

Icône indiquant le type de rubrique Rubrique de référence



Icône d'horodatage Dernière mise à jour: last_date
http://www14.software.ibm.com/webapp/wsbroker/redirect?version=cord&product=was-nd-mp&topic=rsec_SPNEGO_tai_attribs
Nom du fichier : rsec_SPNEGO_tai_attribs.html