Utilisation d'un nom principal kerberos pour une autorisation avec l'authentification SPNEGO

Vous pouvez utiliser le nom principal kerberos complet pour une autorisation au lieu de simplement mapper ou créer votre module de connexion JAAS personnalisé.

Pourquoi et quand exécuter cette tâche

Ces étapes ne doivent être que rarement appliquées, et uniquement par des utilisateurs qui choisissent spécifiquement de ne pas utiliser un simple mappage, c'est-à-dire la configuration par défaut, ou de ne pas ajouter un module de connexion JAAS personnalisée pour mapper le nom principal kerberos complet à un utilisateur dans le registre d'utilisateurs du serveur Liberty. Cette tâche vous permet d'utiliser le nom principal kerberos complet pour l'autorisation.

Procédure

  1. Configurez l'authentification SPNEGO afin de ne pas tronquer le nom de domaine Kerberos du nom principal Kerberos complet en définissant l'attribut trimKerberosRealmNameFromPrincipal sur false.
  2. Configurez le serveur Liberty pour l'utilisation de référentiels LDAP autonomes ou fédérés.

    Pour plus d'informations sur la configuration LDAP, voir Configuration de registres d'utilisateurs LDAP avec Liberty.

    1. Assurez-vous que l'utilisateur Active Directory existe dans le registre d'utilisateurs Active Directory et que cet utilisateur dispose d'un seul attribut userPrincipalName qui lui est associé.
    2. Mettez à jour le filtre LDAP dans le fichier server.xml afin de rechercher l'élément userPrincipalName, comme illustré dans l'exemple suivant :
      <activedLdapFilterProperties id="myactivedfilters"
           userFilter="(&(userPrincipalName=%v))"
           groupFilter="(&(cn=%v))"
           userIdMap="*:userPrincipalName"
           groupIdMap="*:cn"
           groupMemberIdMap="ibm-allGroups:member">
      </activedLdapFilterProperties>
  3. Configurez les liaisons d'applications afin que l'application correspondante utilise le nom principal Kerberos complet comme nom d'utilisateur avec un access-id correctement configuré. Exemple :
    <application type="war" id="myApp" name="myApp" location="${server.config.dir}/apps/myApp.war">
         <application-bnd>
              <security-role name="Employee">
                   <user name="kevin@MYDOMAIN.EXAMPLE.COM" access-id="CN=kevin,CN=Users,DC=MYDOMAIN,DC=EXAMPLE,DC=COM"/>
                   ...
              </security-role>
              ...
         </application-bnd>
    </application>

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

Nom du fichier : twlp_using_kerb_principal_name_auth.html