Outils pour utilisateurs

Outils du site


braveo:docldapschemas

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

 
  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
  )

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

 
  objectclass ( 1.3.6.1.4.1.37424.2.1.1
        NAME 'MDL29Person'
        SUP TOP
        AUXILIARY
        MAY ( MDL29HostingJabber )
  )

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

objectclass ( 1.3.6.1.4.1.37424.2.1.2
      NAME 'MDL29Association'
      SUP TOP
      AUXILIARY
      MAY ( MDL29CAmember MDLPresident )
)
braveo/docldapschemas.txt · Dernière modification: 2016/07/19 15:36 (modification externe)