Il est très important de synchroniser les annuaires de User Management. Les utilisateurs et les groupes sont synchronisés depuis un annuaire d’entreprise vers la base de données AEM forms afin d’attribuer les rôles et les autorisations. Le nombre d’utilisateurs varie de 100 à plus de 100 000 en fonction des exigences et cela pose un véritable défi technique lorsqu’il s’agit de synchroniser les données efficacement.
Le protocole LDAP fournit un mécanisme destiné à interroger les ensembles de données volumineux. Ce mécanisme utilise une liste paginée et des contrôles de demande. Si vous utilisez Microsoft Active Directory, la synchronisation entre le protocole LDAP et la base de données AEM forms fait appel à PagedResultsControl pour récupérer les données dans des lots de taille particulière. Le serveur d’annuaire Sun ONE ne prend pas en charge ce contrôle. Pour terminer une requête paginée sur le serveur d’annuaire Sun ONE, utilisez le contrôle VLV (Virtual List View). Ce contrôle implique une configuration des annuaires côté serveur et une mise en œuvre côté client.
Remarque :
cette section décrit l’utilisation du contrôle VLV pour le serveur d’annuaire Sun ONE. Cependant, vous pouvez utiliser ce type de contrôle pour tout serveur d’annuaire prenant en charge le contrôle VLV.
-
Lors de la configuration de l’annuaire, sélectionnez Activer le contrôle VLV (Virtual List View) sur les pages Paramètres utilisateur et Paramètres du groupe. Lorsque vous cochez cette case, vous devez également spécifier un nom de tri dans la zone Nom de champ de tri. La valeur par défaut est uid. Voir
Ajout d’annuaires ou d’interfaces SPI personnalisées
ou
Modification d’un annuaire
.
-
Utilisez Sun ONE Administration Console ou un script de ligne de commande pour créer les entrées VLV LDAP des utilisateurs et des groupes. Si vous utilisez un script de ligne de commande, aidez-vous des fichiers LDIF utilisateurs et groupes fournis à titre d’exemple. Voir
Configuration du serveur d’annuaire Sun ONE pour VLV
.
-
Arrêtez le serveur et redémarrez l’index requis. Voir
Création de l’index du serveur d’annuaire pour VLV
.
Configuration du serveur d’annuaire Sun ONE pour VLV
La création d’un contrôle VLV exige une paire d’entrées intégrant les classes d’objet
vlvSearch
et
vlvIndex
. L’entrée vlvSearch inclut une base de recherche et l’attribut
vlvFilter
qui définit la classe d’objet contenant les attributs à trier. La classe d’objet
vlvIndex
inclut l’attribut
vlvSort
qui définit un ou plusieurs attributs à trier, ainsi que l’ordre de tri (un signe moins « - » désigne l’ordre alphabétique inverse). L’utilisation du contrôle VLV avec AEM forms exige des entrées séparées pour les utilisateurs et les groupes.
Remarque :
il est possible de créer les entrées d’objet au moyen de l’interface utilisateur graphique Sun ONE ou au moyen d’un script de ligne de commande. Pour plus d’instructions sur la création d’entrées d’objet à l’aide de l’interface utilisateur graphique, consultez la documentation de Sun ONE.
Vous trouverez ci-dessous un exemple de script LDIF pour une entrée VLV relative aux utilisateurs :
dn: cn=lcuser,cn=userRoot,cn=ldbm database,cn=plugins,cn=config
objectclass: top
objectclass: vlvSearch
cn: lcuser
vlvBase: dc=corp,dc=adobe,dc=com
vlvScope: 2
vlvFilter: (&(objectclass=inetOrgPerson))
aci: (target="ldap:///cn=lcuser,cn=userRoot,cn=ldbm database,cn=plugins,cn=config")(targetattr="*")(version 3.0; acl "Config"
;allow(read,search,compare) userdn="ldap:///all"; )
dn: cn=lcuser,cn=lcuser,cn=userRoot,cn=ldbm database,cn=plugins,cn=config
cn: lcuser
vlvSort: cn
objectclass: top
objectclass: vlvIndex
Création des entrées d’objet à l’aide d’un script
-
Le script donné en exemple contient une entrée LDAP appelée
lcuser
. Cette entrée sert à la configuration du contrôle VLV pour la synchronisation des utilisateurs dans AEM forms. Modifiez les propriétés suivantes en conséquence :
Nom de l’entrée :
le nom de l’entrée dans cet exemple est
lcuser
. Si
lcuser
est modifié, il doit l’être dans toutes les zones du script fourni à titre d’exemple.
vlvBase :
ND de base défini dans la page Paramètres utilisateur.
vlvFilter :
filtre de recherche défini dans la page Paramètres utilisateur.
vlvSort :
champ de tri indiqué dans la section des paramètres VLV de la page Paramètres utilisateur. Un contrôle VLV exige la définition d’un contrôle du tri. Ce champ est utilisé comme paramètre de tri pour l’index vlv créé.
aci :
le contrôle d’accès défini dans l’exemple de script accorde à tous les utilisateurs authentifiés l’accès aux index VLV pour des opérations de lecture, de recherche et de comparaison. L’administrateur peut restreindre l’accès à l’utilisateur configuré sur la page des paramètres du serveur d’annuaire défini dans l’interface utilisateur de User Management. Si aucune autorisation n’est accordée, les recherches utilisateur ne peuvent pas utiliser le contrôle VLV et le serveur LDAP envoie une exception d’autorisation.
-
En vous aidant de l’outil
ldapmodify
fourni par le serveur Sun ONE, créez une entrée similaire pour les groupes en utilisant respectivement le nom distinctif de base du groupe, le filtre de recherche et le champ de tri :
annuaire serveur\shared\bin>ldapmodify -v -a -h hôte -p port -D "utilisateur admin" -w "mot de passe" -f "emplacement fichier LDIF"
Par exemple, saisissez le texte suivant :
D:\tools\ldap\sun\shared\bin> -v -a -h localhost -p 55850 -D "uid=admin,ou=administrators,ou=topologymanagement,o=netscaperoot" -w "admin" -f "D:\tools\ldap\data\vlv feature\users.ldif"
Création de l’index du serveur d’annuaire pour VLV
Après avoir configuré les paramètres d’annuaire et créé les entrées VLV LDAP des utilisateurs et des groupes, arrêtez le serveur et créez l’index requis.
-
Après avoir créé les entrées d’objet, arrêtez le serveur Sun ONE.
-
A l’aide de l’outil vlvindex, générez l’index en saisissant :
instance du serveur d’annuaire
\vlvindex.bat -n userRoot -T lcuser
.
La sortie suivante est alors générée :
D:\tools\ldap\sun\shared\bin>..\..\slapd-chetanmeh-xp3\vlvindex.bat -n userRoot -T livecycle
[21/Nov/2007:16:47:26 +051800] - userRoot: Indexing VLV: livecycle
[21/Nov/2007:16:47:27 +051800] - userRoot: Indexed 1000 entries (5%).
[21/Nov/2007:16:47:27 +051800] - userRoot: Indexed 2000 entries (9%).
...
[21/Nov/2007:16:47:29 +051800] - userRoot: Indexed 20000 entries (94%).
[21/Nov/2007:16:47:29 +051800] - userRoot: Indexed 21000 entries (99%).
[21/Nov/2007:16:47:29 +051800] - userRoot: Finished indexing.
L’outil vlvindex figure dans le répertoire de l’instance du serveur d’annuaire. Si le serveur Sun ONE possède deux instances exécutant server1 et server2, alors l’outil vlvindex se situe dans le
répertoire annuaire serveur Sun ONE
\server1. La valeur du paramètre
-T
correspond à la valeur de l’attribut
cn
dans l’entrée vlvindex créée ci-dessus dans le fichier LDIF fourni à titre d’exemple. En l’occurrence, il s’agit de
lcuser
.
-
Si le contrôle VLV est activé pour les groupes, créez l’index correspondant pour les groupes. Vérifiez que les index ont été créés en exécutant la commande suivante :
annuaire serveur sun one
\shared\bin>ldapsearch -h
nom d’hôte
-p
n° de port
-s base -b "" objectclass=*
Une sortie du type de celle des données fournies à titre d’exemple est générée :
D:\tools\ldap\sun\shared\bin>ldapsearch.exe -h localhost -p 55850 -s base -b "" objectclass=*
ldapsearch.exe: started Tue Nov 27 16:34:20 2007
version: 1
dn:
objectClass: top
namingContexts: dc=corp,dc=adobe,dc=com
supportedExtension: 2.16.840.1.113730.3.5.7
...
vlvsearch: cn=MCC ou=testdata dc=corp dc=adobe dc=com, cn=userRoot,cn=ldbm dat
abase,cn=plugins,cn=config
vlvsearch: cn=lcuser,cn=userRoot,cn=ldbm database,cn=plugins,cn=config
vlvsearch: cn=Browsing ou=testdata,cn=userRoot,cn=ldbm database,cn=plugins,cn=
config
1 matches
|
|
|