Compare commits

4 Commits

Author SHA1 Message Date
67d9c048c0 reorganisation des attributs et objectclass 2024-10-08 09:53:41 +02:00
460767b69d use my own number 2022-11-29 10:40:23 +01:00
acc785f61f more eyes 2022-11-25 23:31:47 +01:00
a416be23cc solution 2022-11-24 15:41:35 +01:00
3 changed files with 69 additions and 1 deletions

View File

@@ -4,6 +4,7 @@
Et définir 2 / 3 caractéristiques de cet objet
Un livre, avec un une date de parution, titre, un auteur, une couverture, un isbn et un description
## Définir les attributs
@@ -18,15 +19,34 @@ Pour la syntaxe, on se réferera à https://www.alvestrand.no/objectid/1.3.6.1.4
Il est également possible d'utiliser PHPLdapAdmin pour visualiser les différentes syntaxes et règles (bouton schéma)
- parution - directory string
- auteur - directory string
- titre - directory string
- couverture - image jpeg
## Définir la classe d'objet
définir la classe d'objet permettant l'utilisation des attributs créés à l'étape précédente.
On aura la classe d'objet "livre", de type structural, exigeant les attributs titre et auteur et autorisant les attributs couvertures et parution
## Mettre au point le fichier ldif de définition de schéma
qui rassemble un dn, la classe d'objet et les attributs définis ci-dessus
👀 Voir fichier _livre.schema.ldif_
Concernant les OID:
Je prends la racine dédié aux entreprises privées 1.3.6.1.4.1
Je m'approprie la branche "42" dans laquelle je créé 2 sous-branche:
- la branche _0_ pour stocker les attributs
- la branche _1_ pour stocker les classes d'objet
## Test
@@ -34,6 +54,9 @@ Injecter le schéma.
Rajouter un objet du type choisi
👀Voir fichier _livre.ldif_
## Héritage
Comment rajouter l'attribut _description_ (0.9.2342.19200300.100.4.6) à votre objet sans avoir à rajouter un nouvel objectClass ?
la classe d'objet _livre_ hérite de la classe _document_ qui permet l'utilisation de l'attributs _description_ (et impose _documentIdentifier_).

16
livre.ldif Normal file
View File

@@ -0,0 +1,16 @@
dn: ou=livres,dc=example,dc=fr
objectclass: organizationalUnit
dn: titre=lotr,ou=livres,dc=example,dc=fr
objectClass: livre
documentIdentifier: "ISBN123"
auteur: jrr tolkien
parution: 1954-1955
description: 1 ring to rule them all !
dn: titre=black dalhia,ou=livres,dc=example,dc=fr
objectClass: livre
documentIdentifier: "ISBN125"
auteur: james ellroy

29
livre.schema.ldif Normal file
View File

@@ -0,0 +1,29 @@
dn: cn=livre,cn=schema,cn=config
objectClass: olcSchemaConfig
olcAttributeTypes: ( 1.3.6.1.4.1.59731.1.0.1
NAME 'auteur'
DESC 'auteur du livre'
EQUALITY caseIgnoreMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
olcAttributeTypes: ( 1.3.6.1.4.1.59731.1.0.2
NAME 'titre'
DESC 'titre du livre'
EQUALITY caseIgnoreMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
olcAttributeTypes: ( 1.3.6.1.4.1.59731.1.0.3
NAME 'parution'
DESC 'date de parution du livre'
EQUALITY caseIgnoreMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15 )
olcAttributeTypes: ( 1.3.6.1.4.1.59731.1.0.4
NAME 'couverture'
DESC 'image de couverture'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.28 )
olcObjectClasses: ( 1.3.6.1.4.1.59731.1.1.1
NAME 'livre'
DESC 'classe d objet livre'
SUP document
STRUCTURAL
MUST ( titre $ auteur )
MAY ( parution $ couverture )
)