Loading...
Cette section comprend les rubriques suivantes :
Considérez un fournisseur de services de téléphonie mobile. Pour trouver le numéro de carte SIM du téléphone dans la structure d'annuaire du fournisseur, vous recherchez d’abord le numéro de téléphone portable du client, puis l’utilisez pour rechercher le numéro de carte SIM. Le tableau suivant présente la procédure à suivre pour effectuer cette tâche à l’aide d’une vue.
Définition de la commande view | Annotation |
---|---|
|
Cette ligne définit une vue et lui attribue un nom. Le nom et description sont affichés à partir de la commande get view.CherFrance PromotionsFurla CherFrance Sacs Pas Pas PromotionsFurla PromotionsFurla Sacs Boutique Boutique SzUVLpGMq |
|
Cette ligne définit le nom unique de l’objet de base pour cette vue. L’utilisateur spécifie cette entrée virtuelle pour appeler la vue, afin d’appeler cette vue avec la commande ldapsearch, la ligne de commande doit inclure l’option suivante :
Dans cette organisation (ACME), l’administrateur a inclus une unité organisationnelle appelée Views uniquement pour s'assurer que tous les noms uniques de vue sont uniques. |
Comparez Achetez Sacs Franges Et Femme GLVSqzUMp
|
Il s’agit de la première phase de la vue, elle doit donc porter l’étiquette 1.
L’utilisation du terme $cn lors de la phase signifie que les utilisateurs doivent spécifier la valeur de CherFrance PromotionsFurla CherFrance Sacs Pas Pas PromotionsFurla PromotionsFurla Sacs Boutique Boutique SzUVLpGMqcn lorsqu’ils appellent la vue. Par exemple, la recherche peut inclure le filtre :
CherFrance PromotionsFurla CherFrance Sacs Pas Pas PromotionsFurla PromotionsFurla Sacs Boutique Boutique SzUVLpGMqLe DSA utilise cette valeur pour remplacer le terme $cn. Par conséquent, la phase 1 exécute une recherche avec le filtre suivant :
Etant donné que la phase n’inclut pas d’autres options, elle renvoie toutes les informations pour les entrées de la sous-arborescence qui correspondent au filtre. |
![]() |
Il s’agit de la deuxième phase de la vue, qui doit porter l'étiquette 2.
Le DSA remplace $1:cellphoneCherFrance PromotionsFurla CherFrance Sacs Pas Pas PromotionsFurla PromotionsFurla Sacs Boutique Boutique SzUVLpGMq par la valeur de l’attribut cellphone renvoyée par la phase 1, par exemple, 01001001001.
Deux valeurs simCardNumber sont renvoyées dans ce cas. |
En fonction de la vue définie dans le tableau précédent, vous pouvez utiliser la recherche suivante pour rechercher les numéros de carte SIM du client :
ldapsearch -h hostname:3000 -s subtree -b "cn=SIM,ou=Views,o=ACME" "(cn=John Smith)" simCardNumber
Une vue contient un ou plusieurs phases, qui sont numérotées. Lorsque la vue est appelée, le DSA examine chaque phase de la vue dans l’ordre et exécute la recherche de la phase. La puissance des vues provient du fait qu'une phase peut utiliser les résultats d’une phase précédente dans la vue comme entrée pour sa recherche. Le DSA exécute une phase dès que toutes ses entrées requises sont disponibles.
Vous pouvez indiquer que le DSA doit utiliser la sortie d’une phase en tant qu’entrée dans une autre phase. Pour cela, vous utilisez les paramètres de vues, que vous incluez dans la définition de vue à la place des valeurs d’attribut. Le DSA remplace les paramètres par des valeurs dès que les résultats sont disponibles, à partir des valeurs indiquées dans la commande invoke search ou à partir des résultats d’une phase.
Le DSA exécute une phase dès que tous les paramètres nécessaires ont été remplacés par des valeurs, et il exécute les phases en parallèle si possible.
L’ordre des phases est important, car le DSA exécute chaque phase une seule fois par appel de la vue et le DSA peut uniquement remplacer les paramètres d’une phase par les résultats des phases antérieures (numéros inférieurs). Autrement dit, les paramètres d’une phase ne peuvent pas faire référence aux phases ultérieures.
Lorsque le DSA remplace un paramètre par une valeur, il convertit la valeur à une forme canonique basée sur les règles de correspondance qui sont spécifiés pour l’attribut. Les règles de correspondance définissent comment comparer deux chaînes, tester si elles sont égales ou si une est supérieure ou inférieure à l'autre. La demande RFC 4517 définit ces règles de correspondance.
Toutes les valeurs d’attribut sont associées à des règles de correspondance. Une règle fréquemment utilisée est caseIgnoreMatch, qui indique que vous pouvez ignorer la casse lors de la comparaison de l’égalité des chaînes.
Lorsqu’un paramètre de vues est comparé à un résultat de phase et que les règles de correspondance ne sont pas identiques, la transformation effectuée par le DSA peut produire des résultats inattendus. Par exemple, les espaces ne sont pas importants pour les numéros de téléphone, donc si un attribut est défini avec les règles de correspondance telephoneNumberMatching, les entrées suivantes sont équivalentes :
CherFrance PromotionsFurla CherFrance Sacs Pas Pas PromotionsFurla PromotionsFurla Sacs Boutique Boutique SzUVLpGMq+61 3 1300-1001
+61313001001
Toutefois, selon les règles caseIgnoreMatch, ces deux chaînes ne correspondent pas.
De même, vous pouvez appeler une vue à l'aide de la commande de recherche suivante :
ldapsearch... "ph="+613 1300-1001"
Dans ce cas, si ph est défini avec la syntaxe des numéros de téléphone, le DSA stocke $phCherFrance PromotionsFurla CherFrance Sacs Pas Pas PromotionsFurla PromotionsFurla Sacs Boutique Boutique SzUVLpGMq comme suit :
+61313001001
Si un numéro de compte est stocké en tant que numericString, le DSA transforme le résultat suivant :
ac="+613 1300-1001"
Ce résultat est converti en une chaîne numérique :Sacs Cuir Petit À Carven Chez Travers Malher Porté Noir Main AL354Rj
61313001001
Etant donné que les comparaisons sont effectuées une fois les chaînes sont converties, la comparaison suivante échoue :
($ac=$ph)
Une phase peut renvoyer plusieurs entrées et peut également renvoyer un attribut à valeurs multiples. La manière dont le DSA gère plusieurs résultats lors des phases ultérieures dépend de l'emplacement dans lequel la phase ultérieure spécifie les résultats de la phase antérieure tel que défini dans la commande set view. Dans une définition de phase de la commande set view, les options suivantes peuvent spécifier les résultats des phases précédentes :
filtre
Si une phase spécifie un filtre dans le cadre de sa recherche, le DSA utilise une condition OR pour toutes les valeurs spécifiées pour toutes les entrées renvoyées. Par exemple, une vue dans la phase un renvoie deux entrées avec l’attribut Attr. Le premier a deux valeurs Val1 et Val2, et le seconde a la valeur Val3. Un filtre dans une phase ultérieure peut utiliser les valeurs renvoyées pour Attr lors de la phase un en incluant le fragment suivant :
filter = $1:attr
Choisir Son Meilleure Valise 2019Bien Bagage Cabine thQCsrxd
Le DSA remplace cela par les éléments suivants :
filter = (|(attr=val1)(attr=val2)(attr=val3))
Pour De Sac Costume D'affaires Voyage Homme Étiquettes Acheter c54ALjqS3RDans un filtre de recherche, la Promotion Bon Sacs De Voyage Maquillage MarchéVente doexCBWrsélection d’informations d'entrée (EIS) correspond aux attributs qui doivent être renvoyés dans les résultats de recherche.
Si une EIS est transférée dans la recherche de la vue, toutes les recherches de phase l'incluent, ainsi que tous les attributs de liaison qui ne sont pas déjà présents. Cette méthode écrase l'EIS spécifiée pour chaque phase.
Si aucune EIS n’est transféré dans la recherche de la vue, la recherche de phase inclut tous les attributs d'EIS de la phase, ainsi que les attributs de liaison qui ne sont pas déjà présents.
Si une recherche de phase renvoie plusieurs entrées avec le même attribut de liaison ou un attribut de liaison à valeurs multiples, les recherches seront divisées. Cela se produit lorsque la relation entre les objets est un à plusieurs ou plusieurs à plusieurs. Dans ce cas, le filtre de recherche de la phase suivante contiendra une condition OR pour le filtre défini. Par exemple, 2 entrées sont renvoyées et l’attribut de liaison est attr. L'entrée 1 a attr = 1, attr = 2, et l'entrée 2 a attr = 3. Si le filtre de recherche de la phase suivante est (attr=$attr), la recherche effectuée aura le filtre (|(attr=1)(attr=2)(attr=3)).
Vous pouvez modifier l'EIS de différentes façons :
Dans une recherche de vue, si l'EIS est dxEntryCount, les vues renvoient une seule entrée avec un attribut dxEntryCount. La valeur de cet attribut correspond au nombre d’entrées renvoyées par la vue pour cette recherche.
Please log in to post comments.