Configuration du serveur d'applications et de DB2 pour l'authentification avec Kerberos

Le mécanisme d'authentification Kerberos peut être utilisé quand WebSphere Application Server et le serveur DB2 sont configurés pour une authentification Kerberos. L'authentification Kerberos fournit des solutions interopérables de bout en bout à connexion unique (SSO) et conserve l'identité du demandeur initial.

Avant de commencer

Sur le serveur d'applications, vous pouvez configurer une source de données DB2, le serveur d'applications et votre application de manière à ce que la source de données DB2 et le serveur d'applications interopèrent de bout en bout en utilisant les droits d'accès Kerberos délégués pour l'accès aux données par l'application. Pour profiter des avantages offerts par l'authentification Kerberos DB2 en utilisant les droits d'accès délégués à partir du serveur d'applications, dont il est fait état dans cette rubrique en tant qu'option 1, vous devez configurer DB2 et le serveur d'applications pour qu'ils utilisent Kerberos comme mécanisme d'authentification. Pour en savoir plus sur la configuration de Kerberos en tant que mécanisme d'authentification dans cette version du serveur d'applications, voir la rubrique Prise en charge de la sécurité du mécanisme d'authentification Kerberos (KRB5).

Les fonctions XARecovery et TestConnection du serveur d'applications ne peuvent pas fournir les droits d'accès Kerberos délégués à la source de données. Il peut aussi y avoir des cas où le composant de sécurité du serveur d'applications ne peut pas fournir les droits d'accès Kerberos délégués pour une demande de connexion donnée. Pour tenir compte de ces situations, vous pouvez configurer une connexion DB2 en utilisant l'authentification Kerberos dont il est fait mention dans cette rubrique (option 2). Pour cette option, un ID utilisateur et un mot de passe doivent être indiqués au pilote JDBC, qui les utilise pour obtenir ses propres droits d'accès Kerberos. Pour utiliser cette option, vous devez configurer sur le serveur d'applications un alias de données d'authentification J2C qui définit l'ID utilisateur et le mot de passe que le pilote JDBC DB2 utilisera pour demander un TGT (Ticket Granting Ticket) Kerberos. Le TGT est utilisé pour l'authentification Kerberos sur un serveur DB2. Pour le serveur d'applications, cela ressemble beaucoup à l'authentification typique par mot de passe et ID utilisateur.

Vous devez utiliser un pilote JDBC DB2 qui prenne en charge l'authentification Kerberos et opère dans le mode de type 4. Les pilotes pris en charge sont les suivants :
  • IBM Data Server Driver for JDBC and SQLJ (identifié sur le serveur d'applications en tant que DB2 avec Pilote JCC IBM)
  • IBM DB2 JDBC Universal Driver Architecture (identifié sur le serveur d'applications en tant que Fournisseur de pilote JDBC pour DB2 Universal)

Pourquoi et quand exécuter cette tâche

Pour configurer le serveur d'applications et DB2 pour l'authentification avec Kerberos, procédez comme suit :

Procédure

  1. Configurez le serveur DB2 pour l'authentification Kerberos. Reportez-vous à la documentation sur la sécurité Kerberos DB2 dans le centre de documentation de DB2. Par exemple, lisez la rubrique "Informations détaillées sur l'authentification Kerberos". Sur le site web IBM developerWorks, vous trouverez une autre référence utile intitulée "DB2 UDB Security, Part 6". Vérifiez que l'authentification Kerberos de DB2 fonctionne.
  2. Configurez le serveur d'applications pour utiliser la sécurité Kerberos. Voir la rubrique “Configuration de Kerberos comme mécanisme d'authentification avec la console d'administration”. Vérifiez que l'authentification Kerberos du serveur d'applications fonctionne.
  3. Configurez la source de données DB2 sur le serveur d'applications pour utiliser l'authentification Kerberos. Cette tâche s'effectue en deux étapes : vous devez configurer l'adaptateur de ressources sur le serveur d'applications pour passer les droits d'accès Kerberos et les droits d'accès par mot de passe au pilote JDBC, puis dans un deuxième temps, vous devez configurer le pilote JDBC pour utiliser l'authentification Kerberos lors de la connexion au serveur DB2. Pour plus d'informations sur cette procédure, voir la rubrique “Configuration d'une source de données avec la console d'administration”.
    Tableau 1. Propriétés personnalisées et valeurs. Lors de la configuration de la source de données DB2, vous devez porter une attention particulière aux paramètres de sécurité et aux propriétés personnalisées.
    Chaîne valeur
    kerberosServerPrincipal
    Remarque : Cette propriété est facultative excepté lors de la connexion au serveur DB2 qui s'exécute sur une plate-forme z/OS (tel que DB2 for LUW, v8 FP11).

    user@REALM

    or

    nom_service/nomhôte@REALM

    SecurityMechanism
    Remarque : Une valeur de 11 pour cette propriété indique que le pilote JDBC a besoin d'utiliser l'authentification Kerberos lors de la connexion au serveur DB2.
    11
    1. Pour l'option 2, vous devez configurer l'“Alias de configuration de mappage" sur “DefaultPrincipalMapping”, ou sur une autre configuration de connexion qui ne génère pas des droits d'accès GSS et définir l'“Alias d'authentification gérée par conteneur” pour servir de référence à un alias à utiliser pour la connexion Kerberos par le pilote JDBC. La fonction testConnection utilise aussi cet alias si aucun alias d'authentification gérée par conteneur n'est configuré.
    2. Pour l'option 1, droits d'accès Kerberos délégués, vous devez configurer l'“Alias de configuration de mappage” sur “KerberosMapping”. Cela signifiera que l'adaptateur de ressources du serveur d'applications devra fournir les droits d'accès délégués au pilote JDBC DB2. La fonction testConnection et la fonction de restauration des transactions XA ne peuvent pas fournir des droits d'accès Kerberos délégués, mais peuvent revenir à l'authentification de l'option 2. Si vous n'avez pas besoin de ces fonctions vous pouvez sélectionner aucune pour chacun des alias d'authentification. Si la fonction testConnection est utilisée et qu'un alias d'authentification valide est configuré, un message d'information DSRA8221I est consigné. Ce message indique que testConnection n'est pas capable de fournir des droits d'accès Kerberos. Si aucun alias n'est configuré, alors testConnection échouera avec une erreur de droits d'accès Kerberos non valides rapportée par le pilote JDBC.
      Important : Si KerberosMapping est configuré mais que le composant de sécurité est incapable de fournir des droits d'accès Kerberos pour une demande de connexion particulière, l'adaptateur de ressources peut être configuré pour revenir à une authentification des connexions à l'aide de DPM (Default Principle Mapping). Pour configurer ce changement, sélectionnez un alias dans la liste d'alias d'authentification gérée par conteneur. Pour le désactiver, sélectionnez aucun dans cette même liste.
  4. Pour activer le mappage Kerberos (option 1), vous devez aussi spécifier l'authentification gérée par conteneur. Pour spécifier l'authentification gérée par conteneur, l'application doit utiliser une référence ressource pour chercher la source de données La référence de ressource doit spécifier KerberosMapping en tant que configuration de connexion. Si une configuration de connexion est spécifiée pour une référence de ressource, alors pour l'accès à l'application via cette référence de ressource, la configuration de connexion spécifiée a la priorité sur la valeur spécifiée de l'alias de la configuration de mappage dans la source de données. Un alias d'authentification géré par conteneur peut aussi être spécifié sur la référence de ressource.

Icône indiquant le type de rubrique Rubrique de tâche



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=tdat_db2kerberos
Nom du fichier : tdat_db2kerberos.html