36 | | == Active Directory (ldap) == |
| 36 | Une base de compte UNIX est formée de fichier texte: |
| 37 | |
| 38 | * passwd |
| 39 | * group |
| 40 | |
| 41 | et éventuellement (mode shadow): |
| 42 | |
| 43 | * shadow |
| 44 | * gshadow (inutilisé dans la pratique) |
| 45 | |
| 46 | Chaque fichier contient une liste de champs séparé par des ':' dont le contenu est normalisé (POSIX). |
| 47 | |
| 48 | Cette n'apporte aucune fonctionnalité en elle même (pas de logiciel mis en jeu) mais chaque composant logiciel |
| 49 | sait quoi trouver où. Les champs n'ont pas de nom normalisés. |
| 50 | |
| 51 | De plus l'introduction récente de pam-tcb dans certains distribution linux modifie la signification et la gestion des mots de passe. |
| 52 | |
| 53 | === Base NIS === |
| 54 | |
| 55 | C'est une base centralisée et réseau construite à partir d'une base UNIX. |
| 56 | |
| 57 | En interne les utilise des fichiers DBM, donc sous la forme clef => valeur, la clef servant d'index et étant donc unique, |
| 58 | la valeur n'est autre que la ligne du fichier UNIX d'origine. A noter que la longueur maximale d'une ligne est 1024 octets |
| 59 | pour les anciens UNIX et que cette limitation est conservée sous linux pour compatibilité. |
| 60 | |
| 61 | Les champs utilisé comme clef sont: |
| 62 | |
| 63 | || '''table d'origine''' || '''champs''' || |
| 64 | || passwd || login || |
| 65 | || passwd || uid || |
| 66 | || group || nom || |
| 67 | || group || gid || |
| 68 | || shadow || login || |
| 69 | |
| 70 | Cette base est à priori en lecture seule et ne fourni comme moyen d'entrée que la lecture d'une base UNIX. En revanche il doit |
| 71 | être possible d'écrire dans les fichiers DBM directement en prenant soin d'incrémenter les compteurs internes de révision. |
| 72 | |
| 73 | == LDAP == |
| 74 | |
| 75 | Un ldap est une base de donnée: |
| 76 | |
| 77 | * structurée |
| 78 | * type d'objets identifiées |
| 79 | * attributs identifiés et normalisés |
| 80 | * arborescente |
| 81 | * gérant les contraintes référentielles et unicitaires |
| 82 | * distribuée et réseau |
| 83 | * intégrant une gestion de droit et authentification |
| 84 | |
| 85 | Un ldap, d'après la norme, se doit d'être transactionnel mais le client n'a aucun contrôle et chaque requête correspond à une transaction. |
| 86 | |
| 87 | === openLDAP === |
| 88 | |
| 89 | LDAP tout ce qu'il y a de plus classique, en sachant: |
| 90 | |
| 91 | * réplication maître => esclave |
| 92 | * pas de modification dynamique des schéma (à ce jour) |
| 93 | |
| 94 | === Active Directory (ldap) === |
| 95 | |
| 96 | Il s'agit du LDAP de Microsoft, celui-ci sert de base pour Active Directory. |
| 97 | |
| 98 | Il fonctionne en réplication maître à maître |
| 99 | |
| 100 | Bien qu'il s'agisse d'un vrai LDAP, on notera: |
| 101 | |
| 102 | * les objets peuvent se voir affecter n'importe quel attribut bien qu'il n'ait pas l'objectClass associé |
| 103 | * certains champs sont placés en fixant d'autre champs, ceux-ci sont en général en lecture seule |
| 104 | * les messages d'erreurs retournés sont incompréhensibles et inutiles |
| 105 | |
| 106 | |
| 107 | |