Connexion unique SPNEGO
Vous pouvez négocier et authentifier en toute sécurité les demandes HTTP pour les ressources sécurisées dans WebSphere® Application Server en utilisant le mécanisme SPNEGO (Simple and Protected GSS-API Negotiation Mechanism) comme service d'authentification Web pour WebSphere Application Server.
- Vous pouvez configurer et activer l'authentification Web SPNEGO et les filtres sur WebSphere Application Server à l'aide de la console d'administration.
- Le rechargement dynamique de SPNEGO est fourni sans qu'il soit nécessaire d'arrêter et de redémarrer WebSphere Application Server.
- La rétromigration d'une méthode de connexion d'application est fournie si l'authentification Web SPNEGO échoue.
- SPNEGO peut être personnalisé au niveau du domaine de sécurité WebSphere . Pour plus d'informations, voir Domaines de sécurité multiples .
Vous pouvez activer soit un de relations de confiance SPNEGO soit l'authentification Web SPNEGO, mais pas les deux.
Les sections suivantes décrivent l'authentification Web SPNEGO plus en détail :
- Qu'est-ce que SPNEGO ?
- Les avantages de l'authentification Web SPNEGO
- Authentification Web SPNEGO dans un domaine Kerberos unique
- Authentification Web SPNEGO dans un domaine Kerberos de confiance
- Informations de support pour l'authentification Web SPNEGO avec un client Java utilisant le protocole HTTP
- Informations sur la prise en charge de l'authentification Web SPNEGO avec un client de navigation
- Définition de SPNEGO comme mécanisme d'authentification pour WebSphere Application Server
Qu'est-ce que SPNEGO ?
SPNEGO est une spécification standard définie dans The Simple and Protected GSS-API Negotiation Mechanism (IETF RFC 2478).
Lorsque la sécurité globale et d'application WebSphere Application Server est activée et que l'authentification Web SPNEGO est activée, SPNEGO est initialisé lors du traitement d'une première demande HTTP entrante. Le composant authentificateur Web interagit ensuite avec SPNEGO, défini et activé dans le répertoire de configuration de la sécurité. Lorsque les critères de filtre sont remplis, SPNEGO est chargé d'authentifier l'accès à la ressource sécurisée identifiée dans la requête HTTP.
Microsoft Windows avec le domaine Active Directory et le centre de distribution de clés (KDC) Kerberos associé. Pour plus d'informations sur les serveurs Microsoft Windows pris en charge, voir la configuration système requise pour WebSphere Application Server version 9.0 sous Windows.
- Une application client, par exemple Microsoft .NET, ou un service Web et un client J2EE qui prend en charge le mécanisme d'authentification Web SPNEGO, comme défini dans la norme IETF RFC 2478. Mozilla Firefox est un exemple de navigateur. Tout navigateur doit être configuré pour utiliser le mécanisme d'authentification Web SPNEGO.
L'authentification des demandes HTTP est déclenchée par le demandeur (côté client) qui génère un jeton SPNEGO. WebSphere Application Server reçoit ce jeton. L'authentificateur Web SPNEGO décode et extrait l'identité du demandeur à partir du jeton SPNEGO. L'identité est utilisée pour établir un contexte sécurisé entre le demandeur et le serveur d'applications.
L'authentification Web SPNEGO est une solution côté serveur dans WebSphere Application Server. Les applications côté client sont responsables de la génération du jeton SPNEGO à utiliser par l'authentification Web SPNEGO. L'identité du demandeur dans le registre de sécurité WebSphere Application Server doit être identique à l'identité extraite par l'authentification Web SPNEGO. Une correspondance identique se produit lorsque le serveur Microsoft Windows Active Directory est le serveur LDAP (Lightweight Directory Access Protocol) utilisé dans WebSphere Application Server. Un module de connexion personnalisé est disponible en tant que plug-in pour prendre en charge le mappage personnalisé de l'identité depuis Active Directory vers le registre de sécurité WebSphere Application Server .
En savoir plus sur
Mappage d'un nom de principal Kerberos client à l' WebSphere pour plus d'informations sur l'utilisation de ce module de connexion personnalisé.
WebSphere Application Server valide l'identité par rapport à son registre de sécurité. Si la validation est réussie, le ticket Kerberos client et les droits d'accès de délégation GSS client sont extraits et placés dans le sujet client, qui produit ensuite un jeton de sécurité LTPA (Lightweight Third Party Authentication). Il place et retourne ensuite un cookie au demandeur dans la réponse HTTP. Les demandes HTTP suivantes de ce même demandeur pour accéder à des ressources sécurisées supplémentaires dans WebSphere Application Server utilisent le jeton de sécurité LTPA précédemment créé pour éviter les demandes de connexion répétées.
Dans la figure ci-dessous, l'administrateur Web a accès aux composants de sécurité SPNEGO et aux données de configuration associées suivants : module d'authentification Web, intercepteur de relations de confiance SPNEGO, fournisseurs de sécurité JGSS et SPNEGO, fichiers de configuration et de clés Kerberos, propriétés de configuration de l'intercepteur de relations de confiance SPNEGO et propriétés système de la machine virtuelle Java.

Les avantages de l'authentification Web SPNEGO
Les avantages de l'utilisation de WebSphere Application Server par SPNEGO comme service d'authentification Web pour WebSphere Application Server sont les suivants:
Un environnement de connexion unique intégré avec des serveurs Microsoft Windows utilisant le domaine Active Directory est établi.
- Réduction des coûts liés à l'administration d'un grand nombre d'ID et de mots de passe.
- Etablissement d'une transmission sécurisée et mutuellement authentifiée des justificatifs de sécurité à partir du navigateur Web ou des clients Microsoft .NET.
- L'interopérabilité avec les services Web et Microsoft .NET, ou les applications de service Web qui utilisent l'authentification SPNEGO au niveau du transport, est assurée.
- Avec le support d'authentification Kerberos, l'authentification Web SPNEGO peut fournir une solution de bout en bout à Kerberos et préserver le droit d'accès Kerberos du client.
Authentification Web SPNEGO dans un domaine Kerberos unique
L'authentification Web SPNEGO est prise en charge dans un domaine Kerberos unique. Le processus d'établissement de liaison demande-réponse est illustré dans la figure suivante :

Dans la figure précédente, voici les événements qui se produisent :
- Le client envoie une demande HTTP/Post/Get/Web-Service à WebSphere Application Server.
- WebSphere Application Server renvoie HTTP 401 Authentifier / Négocier.
- Le client obtient un ticket TGT (Ticket Granting Ticket).
- Le client demande un ticket de service (TGS_REQ).
- Le client obtient un ticket de service (TGS_REP).
- Le client envoie HTTP/Post/Get/Web-Service et un jeton SPNEGO d'autorisation à WebSphere Application Server.
- WebSphere Application Server valide le jeton SPNEGO. Si la validation
réussit, l'ID utilisateur et les
droits d'accès de délégation GSS client sont extraits du jeton SPNEGO. Un
KRBAuthnTokenavec des données d'identification Kerberos client est créé. - WebSphere Application Server valide l'ID utilisateur avec le registre d'utilisateurs WebSphere et crée un jeton LTPA.
- WebSphere Application Server renvoie HTTP 200, le contenu et le jeton LTPA au client.
Authentification Web SPNEGO dans un domaine Kerberos de confiance
L'authentification Web SPNEGO est également prise en charge dans un domaine Kerberos de confiance. Le processus d'établissement de liaison demande-réponse est illustré dans la figure suivante :

Dans la figure précédente, voici les événements qui se produisent :
- Le client envoie une demande HTTP/Post/Get/Web-Service à WebSphere Application Server.
- WebSphere Application Server renvoie HTTP 401 Authentifier / Négocier
- Le client obtient un ticket TGT (Ticket Granting Ticket).
- Le client demande un ticket interdomaine (TGS_REQ) pour REALM2 depuis le centre KDC REALM1.
- Le client utilise le ticket interdomaine à partir de l'étape 4 pour demander un ticket service depuis le centre KDC REALM2.
- Le client envoie HTTP/Post/Get/Web-Service et un jeton SPNEGO d'autorisation à WebSphere Application Server.
- WebSphere Application Server valide le jeton SPNEGO. Si la validation
réussit, l'ID utilisateur et les
droits d'accès de délégation GSS client sont extraits du jeton SPNEGO. Un
KRBAuthnTokenavec des données d'identification Kerberos client est créé. - WebSphere Application Server valide l'ID utilisateur avec le registre d'utilisateurs WebSphere et crée un jeton LTPA.
- WebSphere Application Server renvoie HTTP 200, le contenu et le jeton LTPA au client.
Dans l'environnement de domaines Kerberos sécurisé, prenez en considération les éléments suivants :
- L'installation du domaine sécurisé Kerberos doit être effectuée sur chacun des centres KDC Kerberos. Consultez votre administrateur Kerberos et le guide de l'utilisateur pour plus d'informations sur l'installation de domaines sécurisés Kerberos.
- Le nom de principal du client Kerberos provenant du jeton SPNEGO peut ne pas exister dans le registre d'utilisateurs WebSphere ; le mappage du principal Kerberos au registre d'utilisateurs WebSphere peut l'exiger.
Lecture Mappage d'un nom de principal Kerberos client à l' WebSphere pour plus d'informations.
Informations de prise en charge de l'authentification Web SPNEGO avec un client Java™ utilisant le protocole HTTP
- Sécurité de domaine dans la même forêt
- Sécurité de domaine externe directement entre des domaines au sein de forêts différentes.
- Sécurité de domaine Kerberos
- Sécurité inter forêts
- Sécurité externe de forêt
Informations sur la prise en charge de l'authentification Web SPNEGO avec un client de navigation
- Sécurisation inter-forêts
- Sécurité de domaine dans la même forêt
- Sécurité de domaine Kerberos
- Sécurisations externes à la forêt
- Sécurisations externes au domaine