SupAnn normalise les nœuds suivants de l'arborescence de l'annuaire (Directory Information Tree, DIT), ainsi que les caractéristiques principales des objets qu'ils contiennent:
Cette organisation constitue une base non limitative. L'établissement est libre d'ajouter, selon ses besoins techniques ou organisationnels:
Il n'y a pas d'impératif d'exhaustivité : selon ses besoins et les données à sa disposition, chaque établissement est libre d'implémenter ou non les branches préconisées par SupAnn. Néanmoins:
Par ailleurs la notion de classe structurelle est indicative et peut être amenée à différer selon les impératifs de l'implémentation LDAP retenue.
En revanche, l'établissement DEVRAIT :
Origine : SupAnn v1
La racine de l'arborescence est nommée d'après le domaine DNS de l'établissement conformément aux recommandations de l'IETF (voir Références, RFC 2377, “Domain components”). Ceci permet d'adresser de manière fiable les informations de tout établissement puisque l'unicité d'un domaine est assurée au sein d'Internet.
Son RDN est constitué de l'attribut dc de la classe auxiliaire dcObject. Sa classe structurelle est organization.
Sa visibilité est publique.
Exemple:
dn: dc=univ-exemple,dc=fr objectClass: organization objectClass: dcObject dc: univ-exemple o: Université Exemple
Cette entrée constitue par ailleurs une description de l'établissement lui-même. A cet effet, elle est enrichie des classes eduOrg et supannOrg. Voir: Représentation des établissements.
NB: Outre le suffixe “dc=fr”, on trouvera aussi :
Origine : SupAnn v1
Situé un niveau sous la racine, cet objet de classe organizationalUnit est le conteneur de l'ensemble des informations concernant les personnes référencées dans l'annuaire. Son RDN est ou=people.
Sa visibilité est publique. En revanche, les objets qu'il contient PEUVENT être soumis à des restrictions de visibilité en fonction de la politique de l'établissement et des niveaux de visibilité préconisés par SupAnn pour chacun de leurs attributs (cf: Visibilité des attributs).
Exemple:
dn: ou=people,dc=univ-exemple,dc=fr objectClass: organizationalUnit ou: people description: Les personnes de l'annuaire
Tous les objets contenus dans cette branche sont au même niveau (pas de sous-arborescence).
Ces objets représentent des personnes et obéissent au modèle suivant:
RDN | uid |
---|---|
Classe structurelle | inetOrgPerson |
Classes auxiliaires | eduPerson, supannPerson |
Classes optionnelles | supannFCPerson, supannCMS |
Description détaillée | voir: Représentation des personnes |
Exemple:
dn: uid=jdupont,ou=people,dc=univ-exemple,dc=fr objectClass: inetOrgPerson objectClass: eduPerson objectClass: supannPerson uid: jdupont cn: Dupont Jean
Origine : SupAnn v1
Situé un niveau sous la racine, cet objet de classe organizationalUnit est le conteneur de l'ensemble des groupes de personnes définis dans l'annuaire. Son RDN est ou=groups.
Sa visibilité est publique. En revanche, les objets qu'il contient PEUVENT être soumis à des restrictions de visibilité en fonction de la politique de l'établissement.
Exemple:
dn: ou=groups,dc=univ-exemple,dc=fr objectClass: organizationalUnit ou: groups description: Les groupes de personnes de l'annuaire
SupAnn préconise que tous les objets contenus dans cette branche soient au même niveau (pas de sous-arborescence). Cependant d'autres organisations sont tolérées selon les contraintes techniques de l'infrastructure utilisée.
Ces objets représentent des groupes et obéissent au modèle suivant:
RDN | cn |
---|---|
Classe structurelle | groupOfNames |
Classes auxiliaires | supannGroupe |
Classes optionnelles | supannCMS, supannRessource |
Description détaillée | voir: Représentation des groupes |
Exemple:
dn: cn=applications.apogee.users,ou=groups,dc=univ-exemple,dc=fr objectClass: groupOfNames objectClass: supannGroupe cn: applications.apogee.users member: uid=jdupont,ou=people,dc=univ-exemple,dc=fr
Origine : SupAnn 2008
Situé un niveau sous la racine, cet objet de classe organizationalUnit est le conteneur de l'ensemble des entités définies dans l'annuaire. Son RDN est ou=structures.
Sa visibilité est publique, de même que celle des objets qu'il contient.
Exemple:
dn: ou=structures,dc=univ-exemple,dc=fr objectClass: organizationalUnit ou: structures description: Les entités référencées dans l'annuaire
Tous les objets contenus dans cette branche sont au même niveau (pas de sous-arborescence).
Ces objets représentent des entités internes (structures organisationnelles, instances électives, etc) ou des établissements.
Les relations de dépendance entre entités, au lieu d'être représentées hiérarchiquement dans le DIT, sont représentés à l'aide d'un attribut faisant référence aux entités parentes (voir: supannCodeEntiteParent).
Ce choix offre les avantages:
Les objets représentant des entités internes à l'établissement se basent sur le modèle suivant:
RDN | supannCodeEntite |
---|---|
Classe structurelle | organizationalUnit |
Classes auxiliaires | supannEntite |
Classes optionnelles | supannCMS, supannRessource |
Description détaillée | voir: Représentation des structures et instances internes |
Exemple:
dn: supannCodeEntite=U03,ou=structures,dc=univ-exemple,dc=fr objectClass: organizationalUnit objectClass: supannEntite supannCodeEntite: U03 ou: UFR 03
Les objets représentant des établissements se basent sur le modèle suivant:
RDN | supannCodeEntite |
---|---|
Classe structurelle | organization |
Classes auxiliaires | supannEntite, supannOrg, eduOrg |
Classes optionnelles | supannCMS, supannRessource |
Description détaillée | voir: Représentation des établissements |
Exemple:
dn: supannCodeEntite=UX,ou=structures,dc=univ-exemple,dc=fr objectClass: organization objectClass: supannEntite objectClass: supannOrg objectClass: eduOrg supannCodeEntite: UX o: Université Exemple eduOrgLegalName: Université de l'exemple didactique Jacques de la Palice supannEtablissement: {UAI}012345678
Origine : SupAnn 2021
Situé un niveau sous la racine, cet objet de classe organizationalUnit est le conteneur de l'ensemble des applications dont les besoins techniques, notamment leurs accès aux données de l'annuaire, nécessitent la déclaration. Son RDN est ou=applications.
SupAnn n'impose pas de directives de visibilité pour cet objet : celle-ci peut être publique au même titre que les autres conteneurs de premier niveau, ou limitée.
En revanche, les objet qu'il contient, dont l'usage est en général purement technique, auront en général une visibilité limitée, privée, voire cachée. Voir notamment les bonnes pratiques : Gestion des droits d'accès à l'annuaire.
Exemple:
dn: ou=applications,dc=univ-exemple,dc=fr objectClass: organizationalUnit ou: applications description: Les applications référencées dans l'annuaire
Tous les objets contenus dans cette branche sont au même niveau (pas de sous-arborescence).
Ces objets représentent des applications et obéissent au modèle suivant:
RDN | cn |
---|---|
Classe structurelle | supannApplication |
Classes optionnelles | supannRessource, pkiUser |
Description détaillée | voir: Représentation des applications |
Exemple:
dn: cn=snw,ou=applications,dc=univ-exemple,dc=fr objectClass: supannApplication objectClass: supannRessource cn: snw displayName: Saisie des Notes par le Web description: Application Saisie des Notes par le Web (SCOL) owner: supannCodeEntite=DGFI,ou=structures,dc=univ-exemple,dc=fr manager: cn=applications.snw.managers,ou=groups,dc=univ-exemple,dc=fr supannMailContact: support-snw@listes.univ-exemple.fr userPassword: {SSHA}xxxxxx supannRessourceEtatDate: {COMPTE}A:::20250901 labeledURI: https://support.univ-exemple.fr/tickets?id=97932 {DEMANDE}
Origine : SupAnn 2021
Situé un niveau sous la racine, cet objet de classe organizationalUnit est le conteneur de l'ensemble des groupes d'applications définis dans l'annuaire. Son RDN est ou=applicationGroups.
SupAnn n'impose pas de directives de visibilité pour cet objet : celle-ci peut être publique au même titre que les autres conteneurs de premier niveau, ou limitée.
En revanche, les objets qu'il contient, dont l'usage est en général purement technique, auront en général une visibilité limitée, privée, voire cachée. Voir notamment les bonnes pratiques : Gestion des droits d'accès à l'annuaire.
Exemple:
dn: ou=applicationGroups,dc=univ-exemple,dc=fr objectClass: organizationalUnit ou: applicationGroups description: Les groupes d'applications référencées dans l'annuaire
SupAnn préconise que tous les objets contenus dans cette branche soient au même niveau (pas de sous-arborescence). Cependant d'autres organisations sont tolérées selon les contraintes techniques de l'infrastructure utilisée.
Ces objets représentent des groupes et obéissent au modèle suivant:
RDN | cn |
---|---|
Classe structurelle | groupOfNames |
Classes optionnelles | supannGroupe, supannRessource |
Description détaillée | voir: Représentation des groupes |
Exemple:
dn: cn=acl.attr.supannEtuId.read,ou=applicationGroups,dc=univ-exemple,dc=fr objectClass: groupOfNames cn: acl.attr.supannEtuId.read description: ACL LDAP: lecture de l'attribut supannEtuId member: cn=snw,ou=applications,dc=univ-exemple,dc=fr
Cet exemple définit un groupe d'application dont le nom montre que ce regroupement servira à contrôler l'accès à l'attribut “supannEtuId” des apprenants par l'application “snw”.