début du schéma LDAP pour les citoyens

This commit is contained in:
Benjamin Dauvergne 2014-06-03 10:00:21 +02:00
commit e575231d89
1 changed files with 174 additions and 0 deletions

174
ldap/cud.schema Normal file
View File

@ -0,0 +1,174 @@
# vim:et:sw=4
#
# CUD Schema
#
# Date : 20140602
# Révision :
# * 20140602 - Benjamin Dauvergne <bdauvergne@entrouvert.com> - Création initiale
#
objectIdentifier EoRoot 1.3.6.1.4.1.10650 # FIXME
objectIdentifier EoClientRoot EoRoot:3 # FIXME
objectIdentifier CUDRoot EoClientRoot:1127 # FIXME
objectIdentifier CUDLdap CUDRoot:1
objectIdentifier CUDLdapAttributes CUDLdap:1
objectIdentifier CUDLdapObjectClass CUDLdap:2
objectIdentifier CUDLdapImportAttributes CUDLdap:3
# Identifiants:
# mail
# userPassword
# primaryEmail = email principale
# État civil:
#
# givenName = prénom
# sn = nom
# nationality = nationalité selon les codes ISO#FIXME#
# dateOfBirth = date de naissance
# placeOfBirth = lieu de naissance
# countryOfBirth = pays de naissance
attributetype (CUDLdapImportAttributes:1
NAME 'nationality'
DESC 'nationalité'
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
attributetype (CUDLdapImportAttributes:2
NAME 'dateOfBirth'
DESC 'date de naissance au format ISO8601 « yyyy-mm-dd »'
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
attributetype (CUDLdapImportAttributes:3
NAME 'placeOfBirth'
DESC 'lieu de naissance'
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
attributetype (CUDLdapImportAttributes:4
NAME 'countryOfBirth'
DESC 'pays de naissance au format ISO#FIXME#'
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
attributetype (CUDLdapImportAttributes:5
NAME 'identityValidatedOn'
DESC "date de validation de l'état civil au format ISO8601 yyyy-mm-dd"
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
attributetype (CUDLdapImportAttributes:6
NAME 'identityValidatedBy'
DESC "nom et fonction du validateur, plus éventuellement une référence de transaction, « John Doe;agentmairie de Graveline;#232323 »"
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
# adresse:
# FIXME: reprendre le vrai format standard poste
# labeledAddress: home;<building level>
# 7 allée du Josas
# <street2>
# 78350 JOUY EN JOSAS
# on ne devrait avoir qu'une adresse de chaque type (home,work,etc..)
# homeAddressValidatedOn = date de validation de l'adresse
# homeAddressValidatedBy = responsable de la validation de l'adresse
attributetype (CUDLdapImportAttributes:7
NAME 'homeAddress'
DESC "adresse formatée au format standard postal permettant l'extraction des parties, avec préfixe d'usage"
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15)
attributetype (CUDLdapImportAttributes:8
NAME 'homeAddressValidatedOn'
DESC "date de validation de l'adresse personnelle"
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
attributetype (CUDLdapImportAttributes:9
NAME 'homeAddressValidatedBy'
DESC "nom et fonction du validateur, plus éventuellement une référence de transaction"
EQUALITY caseIgnoreMatch # FIXME
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
# Fédération
# federatedId = URL du service $ type de l'identifiant $ identifiant
# Exemple:
# federatedId: http://redmine.cud.fr/$persistent$324k2j34klj234lkj3l2k4j
# federatedId: http://cas-service.cud.fr/$uid$john.doe
attributetype (CUDLdapImportAttributes:10
NAME 'federatedId'
DESC "nom et fonction du validateur, plus éventuellement une référence de transaction"
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
#
# federatedAttribute = URL du service $ nom de l'attribut $ valeur
# federatedAttribute: http://eservices.cud.fr$role$Administrateur
attributetype (CUDLdapImportAttributes:11
NAME 'federatedAttribute'
DESC "nom et fonction du validateur, plus éventuellement une référence de transaction"
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
# Autres:
# cn = « nickname » initialisé avec sn + givenName
# telphoneNumber = téléphone fixe format international (+33xxxxxx)
# espaces et points sont enlevés/remis en entrée/sortie
# mobile = téléphone mobile, idem que telephoneNumber
# personalTitle = Monsieur/Madame
# serialNumber = numéro unique
attributetype (CUDLdapImportAttributes:8
NAME 'homeAddressValidatedOn'
DESC "date de validation d'une adresse, préfixé avec le label"
EQUALITY caseIgnoreMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
attributetype (CUDLdapImportAttributes:9
NAME 'homeAddressValidatedBy'
DESC "nom et fonction du validateur, plus éventuellement une référence de transaction"
EQUALITY caseIgnoreMatch
SYNTAX 1.3.6.1.4.1.1466.115.121.1.15
SINGLE-VALUE )
#
# Classes d'objets:
#
objectclass (CUDLdapObjectClass:1
NAME 'cudPeople'
DESC 'CUD people Objectclass'
STRUCTURAL
MUST ( mail $ userPassword )
MAY ( givenName $ sn $ nationality $ dateOfBirth $ placeOfBirth $
identityValidatedOn $ identityValidatedBy $
labeledAddress $ homeAddressValidatedOn $ homeAddressValidatedBy $
federatedId $ federatedAttribute $
cn $ telephoneNumber $ mobile $ personalTitle $ serialNumber )
objectclass (CUDLdapObjectClass:1
NAME 'cudGroup'
DESC 'CUD group Objectclass'
STRUCTURAL
MUST ( cn )
MAY ( member )
objectclass (CUDLdapObjectClass:1
NAME 'cudRole'
DESC 'CUD role Objectclass'
STRUCTURAL
MUST ( cn )
MAY ( member $ serialNumber $ federatedAttribute )
# La possibilité de donner des attributs fédérés par groupe permet d'assigner
# un rôle sur une application à un groupe d'utilisateurs ou à un utilisateur particulier