Outils pour utilisateurs

Outils du site


braveo:docldapschemas

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

braveo:docldapschemas [2016/07/19 15:36] (Version actuelle)
Ligne 1: Ligne 1:
 +====== MDL29Personn ======
 +===== Creer le schemas LDAP de MDL ===== 
 +en cours d'​écriture
  
 +l'​objectif est de créer des objets ldap qui n'​existe pas dans les schémas standard. ​
 +
 +Nous allons créer trois type d'​objet :\\
 +un objet groupe ​ pour lequel on affectera des ressources collaboratives \\
 +un objet association avec un président, CA, tresorier ..etc\\
 +un objet user pour affecter des ressources a cette utilisateur\\\\
 +
 +bon comme d'​habitude,​ on lit un peu de doc  http://​www-sop.inria.fr/​members/​Laurent.Mirtain/​ldap-livre.html\\
 +
 +===== OID qu'est ce que c'est ? =====
 +
 +c'est numero unique nous identifiant. Celui de la mdl à l'OID 1.3.6.1.4.1.37424. Il nous a été affecté par l'​IANA.\\
 +\\
 +pour l'​organisation des branches en dessous, nous nous appuyons sur la doc 
 +http://​ldapbook.labs.libre-entreprise.org/​book/​html/​ch08s04.html
 +\\
 +Et nous decidons que:\\
 +\\
 +1.3.6.1.4.1.37424.1 Branches des identifiants SNMP\\
 +1.3.6.1.4.1.37424.2 Branches des identifiants LDAP\\
 +1.3.6.1.4.1.37424.2.1 Branche des classes d'​objets LDAP\\
 +1.3.6.1.4.1.37424.2.1.1 Premiere classe d'​objet \\
 +1.3.6.1.4.1.37424.2.2 ​  ​Identifiant du premier attribut LDAP\\
 +1.3.6.1.4.1.37424.2.2.1 Identifiant du premier attribut LDAP\\
 +
 +\\
 +donc pour créer notre schémas nous allons commencer par créer un fichier que l'on va nommer mdl29.schema. il sera créé dans /​etc/​ldap/​schemas\\
 +\\
 +donc on fait un \\ 
 +  vi /​etc/​ldap/​schemas/​mdl29.schemas
 +
 +===== Créer un attribut =====
 +
 +encore un peu de doc 
 +http://​www.it-sudparis.eu/​s2ia/​user/​procacci/​ldap/​Ldap_int007.html
 +
 +Nous allons pour creer un attribut il faut lui affecte un OID  comme c'est le premier attribut du premier objectclass(nous l'​avons pas encore defini) nous pouvons lui donner le 1.3.6.1.4.1.37424.2.2.1
 +
 +Le rôle de cette attribut sera de savoir si le mail est hébergé chez nous.
 +Le type de la valeur sera booléenne (TRUE or FALSE)
 +elle sera unique ​
 +chaque type de valeur a un OID de syntaxe qui la sera de  1.3.6.1.4.1.1466.115.121.1.7  ​
 +ce qui donne 
 +<​code> ​
 +  attributetype (1.3.6.1.4.1.37424.2.2.1
 +        NAME ('​MDL29HostingJabber'​)
 +        DESC '​Adresse Jabber Hebergé par MDL29'
 +        EQUALITY booleanMatch
 +        SINGLE-VALUE
 +        SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
 +  )
 +</​code>​
 +
 +===== Créer une classe d'​objet ​ =====
 +
 +nous allons créer un objet qui aura pour attribut IshostingJabber
 +Elle sera utilisé pour compléter l'​objetclass TOP (c'est le cas pour toutes les classes )
 +il faut lui donner un nom , nous allons l'​appeler mdl29Person
 +un OID 1.3.6.1.4.1.37424.2.1.1
 +ce qui nous donne 
 +<​code> ​
 +  objectclass ( 1.3.6.1.4.1.37424.2.1.1
 +        NAME '​MDL29Person'​
 +        SUP TOP
 +        AUXILIARY
 +        MAY ( MDL29HostingJabber )
 +  )
 +</​code>​
 +
 +
 +===== utiliser le nouveau schéma =====
 +
 +Pas grand chose à faire, il suffit de declarer dans slapd.conf
 +le schema (a reprendre)
 +  vi /​etc/​ldap/​slapd.conf
 +
 +  schema /​etc/​ldap/​schema/​mdl29.schema
 +
 +et redémarrer ldap
 +  /​etc/​init.d/​slapd restart  ​
 +
 +maintenant vous pouvez vous connecter avec un ldapbrowser. prendre un utilisateur au pif lui affecter l'​ObjectClass Mdl29Person,​ il aura l'​attribut MDL29hostingJabber qu'il faudra renseigner par TRUE ou FALSE
 +
 +===== D'​autres Attribut pour mdl29Personn =====
 +
 +En suivant la même logique, nous allons pour chaque service définir un attribut.
 +  MDL29HostingJabber ​ 1.3.6.1.4.1.37424.2.2.1
 +  MDL29HostingMail ​   1.3.6.1.4.1.37424.2.2.2
 +  MDL29HostingChimere 1.3.6.1.4.1.37424.2.2.3
 +  MDL29HostingBlog ​   1.3.6.1.4.1.37424.2.2.4
 +
 +pour l'​objectClass ​
 +  MDL29Person ​        ​1.3.6.1.4.1.37424.2.1.1
 +
 +ce qui nous donne le schemas
 +  attributetype (1.3.6.1.4.1.37424.2.2.1
 +      NAME ('​MDL29HostingJabber'​)
 +      DESC '​Adresse Jabber hébergé par MDL29'
 +      EQUALITY booleanMatch
 +      SINGLE-VALUE
 +      SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
 +  )
 +  attributetype (1.3.6.1.4.1.37424.2.2.2
 +      NAME ('​MDL29HostingMail'​)
 +      DESC '​Adresse Mail Hébergé par MDL29'
 +      EQUALITY booleanMatch
 +      SINGLE-VALUE
 +      SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
 +  )
 +  attributetype (1.3.6.1.4.1.37424.2.2.3
 +      NAME ('​MDL29HostingChimere'​)
 +      DESC '​Adresse Jabber Hebergé par MDL29'
 +      EQUALITY booleanMatch
 +      SINGLE-VALUE
 +      SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
 +  )
 +  attributetype (1.3.6.1.4.1.37424.2.2.4
 +      NAME ('​MDL29HostingBlog'​)
 +      DESC '​Adresse Jabber Hebergé par MDL29'
 +      EQUALITY booleanMatch
 +      SINGLE-VALUE
 +      SYNTAX 1.3.6.1.4.1.1466.115.121.1.7
 +  )
 +  objectclass ( 1.3.6.1.4.1.37424.2.1.1
 +      NAME '​MDL29Person'​
 +      SUP TOP
 +      AUXILIARY
 +      MAY ( MDL29HostingBlog $ MDL29HostingChimere $ MDL29HostingMail $  MDL29HostingJabber)
 +  )
 +
 +===== définition d'un ObjectClass association =====
 +
 +bon d'​abord il faut définir une association \\
 +dans une association,​ il y a des membres, un CA (qui contient des membres), un ou plusieurs trésoriers,​ un ou plusieurs présidents,​ un ou plusieurs secrétaires.\\
 +l'​association peut avoir une adresse mail, une adresse, des numéro de téléphones(portables ou fixe)  ​
 +
 +pour l'OID on incrémente de 1 celui de MDL29Person. Ce qui nous donne 1.3.6.1.4.1.37424.2.1.2
 +
 +a cette objectclass on sait que nous allons créer des attributs. Ils ne sont encore défini mais on a déjà leur nom ils sont dans la définition. on a CAmember, presidents, vice-precidents,​ tresorier, tresorier-adjoint,​ secretaire, secretaire-adjointe et enfin des membres member
 +
 +<​code>​
 +objectclass ( 1.3.6.1.4.1.37424.2.1.2
 +      NAME '​MDL29Association'​
 +      SUP TOP
 +      AUXILIARY
 +      MAY ( MDL29CAmember MDLPresident )
 +)
 +</​code>​
braveo/docldapschemas.txt · Dernière modification: 2016/07/19 15:36 (modification externe)