Fédération de registre d'utilisateurs

La fédération de registre d'utilisateurs est utilisée lorsque les informations user et group sont réparties sur plusieurs registres. Par exemple, les informations peuvent figurer dans deux LDAP différents, deux sous-arborescences du même LDAP, dans un fichier, ou bien les utilisateurs sont du système. Les informations peuvent même se trouver dans un référentiel de données utilisateur personnalisé. Grâce aux registres fédérés, vous pouvez rechercher et utiliser ces informations utilisateur réparties de manière unifiée avec le stockage continu d'informations. Vous pouvez utiliser la vue unifiée pour l'authentification et l'autorisation d'utilisateurs dans Liberty.

Remarque : La sécurité rapide (quickStartSecurity) en peut pas être fédérée avec d'autres registres d'utilisateurs, tels que les registres LDAP, de base, SAF et personnalisés.

Comment les registres d'utilisateurs sont-ils fédérés ?

Les registres LDAP sont fédérés par défaut. Si plusieurs registres LDAP sont configurés dans le fichier server.xml, ils sont automatiquement fédérés et aucune configuration supplémentaire n'est requise. Il peut s'agir de deux LDAP distincts ou de deux sous-arborescences dans le même LDAP.
Si un ou plusieurs registres LDAP sont configurés avec un ou plusieurs registres de base, SAF ou personnalisés, ceux-ci sont également fédérés sans configuration supplémentaire. L'exemple suivant illustre un registre de base fédéré avec un LDAP :
<server description="Federation">
    <featureManager>
        <feature>appSecurity-2.0</feature>
        <feature>servlet-3.0</feature>
	 <feature>ldapRegistry-3.0</feature>
    </featureManager>

    <basicRegistry id="basic" realm="SampleBasicRealm">
        <user name="admin" password="password" />
        <user name="user1" password="password" />
            <user name="user2" password="password" />
        <group name="memberlessGroup" />
        <group name="adminGroup">
            <member name="admin"/>
        </group>
        <group name="users">
            <member name="user1"/>
            <member name="user2"/>
        </group>
    </basicRegistry>

    <ldapRegistry id="LDAP1" realm="SampleLdapIDSRealm" host="LDAPHOST1.ibm.com" port="389" ignoreCase="true"
	baseDN="o=ibm,c=us"
	ldapType="IBM Tivoli Directory Server"
	searchTimeout="8m"
	recursiveSearch="true">
    </ldapRegistry>
</server>
Si vous voulez fédérer deux registres de base ou un registre de base avec un registre SAF ou personnalisé, vous devez pour cela inclure la fonction federatedRegistry-1.0 ainsi que la fonction appSecurity-2.0 comme illustré dans l'exemple ci-après :
    <feature>appSecurity-2.0</feature>
    <feature>federatedRegistry-1.0</feature>
L'exemple ci-après illustre la fédération de deux registres de base :
<server description="Federation">
    <featureManager>
        <feature>appSecurity-2.0</feature>
        <feature>federatedRegistry-1.0</feature>
    </featureManager>

    <basicRegistry id="basic1" realm="SampleBasicRealm1">
        <user name="admin" password="password" />
        <user name="user1" password="password" />
            <user name="user2" password="password" />
        <group name="memberlessGroup" />
        <group name="adminGroup">
            <member name="admin"/>
        </group>
        <group name="users">
            <member name="user1"/>
            <member name="user2"/>
        </group>
    </basicRegistry>

    <basicRegistry id="basic2" realm="SampleBasicRealm2">
        <user name="user3" password="password123" />
        <user name="user4" password="password123" />
        <group name="memberlessGroup2" />
        <group name="users2">
            <member name="user3"/>
            <member name="user4"/>
        </group>
    </basicRegistry>
</server>
Les registres de base peuvent être ajoutés à un référentiel fédéré personnalisé. Un registre de base est ajouté en définissant la zone de nom participatingBaseEntry dans l'élément federatedRepository. L'entrée de base participante d'un registre de base est l'attribut d'organisation défini sur le nom de domaine du registre de base. L'exemple suivant montre une fédération personnalisée de deux registres de base :
<federatedRepository>
    <primaryRealm name="PrimaryRealm">
        <participatingBaseEntry name="o=SampleBasicRealm1"/>
        <participatingBaseEntry name="o=SampleBasicRealm2"/>
    </primaryRealm>
</federatedRepository>
Les registres personnalisés peuvent également être ajoutés à un référentiel fédéré personnalisé. Un registre personnalisé est ajouté en définissant la zone de nom participatingBaseEntry dans l'élément federatedRepository. L'entrée de base participante d'un registre personnalisé est l'attribut d'organisation défini sur le nom de domaine du registre personnalisé. L'exemple suivant montre la fédération d'une entrée personnalisée :
<federatedRepository>
    <primaryRealm name="PrimaryRealm">
        <participatingBaseEntry name="o=customRegistryRealm1"/>
    </primaryRealm>
</federatedRepository>

Pour fédérer un registre SAF avec un ou plusieurs registres non SAF avec l'autorisation SAF activée, vous devez configurer des filtres d'identité distribuée pour mapper les utilisateurs non SAF à un ID d'utilisateur SAF. L'exemple suivant illustre un registre SAF qui est fédéré avec un registre LDAP et avec le mappage d'identité distribuée activé. Le nom primaryRealm est spécifié sur l'élément federatedReposity de manière à ce que tout profil RACMAP défini pour mapper les utilisateurs LDAP à un ID d'utilisateur SAF doive spécifier REGISTRY(NAME('FEDREALM').

<server description="Federated SAF and LDAP">
          <featureManager>        
          <feature>appSecurity-2.0</feature>        
          <feature>federatedRegistry-1.0</feature>        
          <feature>zosSecurity-1.0</feature>  
          <feature>ldapRegistry-3.0</feature>
          </featureManager>
        <federatedRepository>   
              <primaryRealm name="FEDREALM">
              </primaryRealm>
        </federatedRepository>

 <!-- SAF user registry -->    
 <safRegistry id="saf" realm="SAFREALM" /> 
 <safAuthorization id="saf" racRouteLog="ASIS" /> 
 <safCredentials unauthenticatedUser="WSGUEST"
                            profilePrefix="BBGZDFLT"
                            mapDistributedIdentities="true" />    
 <safRoleMapper profilePattern="%profilePrefix%.%resource%.%role%"
                            toUpperCase="false" />

  <ldapRegistry id="LDAP1" realm="LDAPREALM" 
      ldapType="IBM Tivoli Directory Server"
      host="LDAP1HOST.ibm.com" port="389"        
      baseDN="o=ibm,c=us"  
      searchTimeout="8m"
      ignoreCase="true"        
      bindDN="uid=ldapadm,cn=users,o=ibm,c=us"        
      bindPassword="ldapadmpw"  
      sslEnabled="false">        
      <idsFilters            
          userFilter="(&amp;(uid=%v)(objectclass=inetOrgPerson))"            
          groupFilter="(&amp;(cn=%v)(objectclass=groupOfUniqueNames))"
          userIdMap="*:uid"            
          groupIdMap="*:cn"            
          groupMemberIdMap="groupOfUniqueNames:uniquemember">         
          </idsFilters>  
   </ldapRegistry>
</server>

Icône indiquant le type de rubrique Rubrique de concept

Nom du fichier : cwlp_repository_federation.html