|
1 | 1 |
|
2 | | -# Documentation Utilisateur - Validation des Identités |
3 | | - |
4 | | -## Introduction |
5 | | -Ce guide explique comment interagir avec le système de validation des identités dans notre application. Cette fonctionnalité assure que toutes les données relatives aux identités sont valides et conformes aux exigences de l'organisation. |
6 | | - |
7 | | -## Validation des Données |
8 | | - |
9 | | -### Résumé |
10 | | -Lorsque vous soumettez des données d'identité (par exemple, via un formulaire ou une API), le système effectue les vérifications suivantes : |
11 | | -- Tous les champs obligatoires sont présents. |
12 | | -- Les données correspondent aux types attendus (chaînes, nombres, dates, etc.). |
13 | | -- Les valeurs respectent les contraintes spécifiques (par exemple, formats d'email ou de téléphone). |
14 | | - |
15 | | -### Données a passer |
16 | | -Pour valider les données, vous devez fournir : |
17 | | -Un fichier XML nommé selon le nom de l'objet à valider (par exemple, `supann.xml`). |
18 | | -Dans le json de la requête, vous devez fournir : |
19 | | -- Le champs "state" a -1 pour une creation |
20 | | -- l'object avec comme clé inetorgperson et comme valeur un objet contenant les champs a valider |
21 | | -- un objet "additionalFields" contenant deux champs : |
22 | | -- - "objectClasses" : un tableau de string contenant les objectClasses a ajouter a l'objet |
23 | | -- - "attributes" : un objet contenant les champs a ajouter a l'objet |
24 | | - |
25 | | -Par exemple, pour valider un objet supann, vous devez fournir : |
26 | | -```json |
27 | | -{ |
28 | | - "state": -1, |
29 | | - "inetorgperson": { |
30 | | - "sn": "Doe", |
31 | | - "uid": "John", |
32 | | - "cn": "John Doe", |
33 | | - }, |
34 | | - "additionalFields": { |
35 | | - "objectClasses": ["supann"], |
36 | | - "attributes":{ |
37 | | - "supann": { |
38 | | - "supannEmpId": "123456", |
39 | | - "supannCivilite": "Mr", |
40 | | - "supannBirthName": "Doe" |
41 | | - } |
42 | | - } |
43 | | - } |
44 | | -} |
45 | | -``` |
| 2 | +# Documentation du Système de Validation d'Identité |
| 3 | + |
| 4 | +## Vue d'ensemble |
| 5 | + |
| 6 | +Le système de validation d'identité utilise des fichiers de configuration YAML pour définir des règles de validation pour différents types d'objets d'identité. Chaque fichier YAML correspond à une `objectClass` spécifique et définit les attributs requis et leurs types pour cette classe. |
| 7 | + |
| 8 | +## Fichiers de Configuration |
46 | 9 |
|
47 | | -Avec comme fichier de configuration : |
48 | | -```yml |
| 10 | +Le fichier de configuration YAML doit être nommé selon le nom de l'`objectClass` qu'il définit, par exemple `supann.yml` pour l'`objectClass` `supannPerson`. Il doit être placé dans le dossier `TBD`. |
| 11 | + |
| 12 | +### Exemple de Fichier YAML (`supann.yml`) |
| 13 | + |
| 14 | +Ce fichier définit la structure et les attributs requis pour l'`objectClass` `supannPerson`. |
| 15 | + |
| 16 | +```yaml |
49 | 17 | objectClasses: |
50 | 18 | - name: supannPerson |
51 | 19 | desc: 'SUPANN person object class' |
52 | 20 | attributes: |
53 | 21 | - supannEmpId |
54 | 22 | - supannCivilite |
55 | 23 | - supannBirthName |
| 24 | + # more attributes... |
56 | 25 |
|
57 | 26 | attributes: |
58 | 27 | - name: supannEmpId |
59 | 28 | desc: 'Employee ID' |
60 | 29 | type: string |
61 | | - |
| 30 | + |
62 | 31 | - name: supannCivilite |
63 | 32 | desc: 'Title (Mr, Ms, etc.)' |
64 | 33 | type: string |
65 | 34 |
|
66 | 35 | - name: supannBirthName |
67 | 36 | desc: 'Birth name' |
68 | 37 | type: string |
| 38 | + # more attributes... |
69 | 39 | ``` |
70 | 40 |
|
| 41 | +### Exemple Générique de Fichier YAML |
| 42 | + |
| 43 | +```yaml |
| 44 | +objectClasses: |
| 45 | + - name: [Nom de l'ObjectClass] |
| 46 | + desc: '[Description de l'ObjectClass]' |
| 47 | + attributes: |
| 48 | + - [Nom de l'attribut 1] |
| 49 | + - [Nom de l'attribut 2] |
| 50 | + # plus d'attributs... |
| 51 | + |
| 52 | +attributes: |
| 53 | + - name: [Nom de l'attribut 1] |
| 54 | + desc: '[Description de l'attribut]' |
| 55 | + type: [Type de l'attribut] |
| 56 | + required: [true/false] |
| 57 | + # plus de détails d'attributs... |
| 58 | +``` |
| 59 | + |
| 60 | +## JSON de Validation |
| 61 | + |
| 62 | +Pour valider une entrée, un objet JSON doit être fourni avec les champs suivants : |
| 63 | + |
| 64 | +- `state`: État de l'entrée, -1 pour une création. |
| 65 | +- `inetOrgPerson`: Informations générales de la personne. |
| 66 | +- `additionalFields`: Contient `objectClasses` (un tableau de noms d'`objectClass`) et `attributes` (les attributs spécifiques pour chaque `objectClass`). |
| 67 | + |
| 68 | +## Exemple |
| 69 | + |
| 70 | +Voici un exemple de JSON à valider : |
| 71 | + |
| 72 | +```json |
| 73 | +{ |
| 74 | + "state": -1, |
| 75 | + "inetOrgPerson": { |
| 76 | + // [Détails de inetOrgPerson] |
| 77 | + }, |
| 78 | + "additionalFields": { |
| 79 | + "objectClasses": ["supann"], |
| 80 | + "attributes": { |
| 81 | + "supann": { |
| 82 | + // [Détails des attributs supann] |
| 83 | + } |
| 84 | + } |
| 85 | + } |
| 86 | +} |
| 87 | +``` |
71 | 88 |
|
72 | | -## Erreurs de Validation |
73 | | -En cas d'erreur de validation, le système vous fournira un retour détaillé sur les problèmes rencontrés. Cela peut inclure : |
74 | | -- Des champs manquants. |
75 | | -- Des données de type incorrect. |
76 | | -- Des violations de contraintes spécifiques. |
| 89 | +## Remarques |
77 | 90 |
|
78 | | -## Conseils d'Utilisation |
79 | | -- Assurez-vous de fournir toutes les informations requises. |
80 | | -- Vérifiez que les données sont dans le bon format. |
81 | | -- En cas d'erreur, consultez le message de retour pour des corrections spécifiques. |
| 91 | +Assurez-vous que le fichier YAML correspondant à votre `objectClass` est disponible et correctement configuré. |
82 | 92 |
|
83 | | -## Contact |
84 | | -Pour toute question ou problème, veuillez contacter notre équipe de support technique. |
|
0 commit comments