\documentclass{report}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{textcomp}
\usepackage{geometry}
\geometry{top=15mm, bottom=15mm, left=1cm, right=1cm}
\usepackage[french]{babel}
\usepackage{pslatex}
\usepackage[colorlinks=true,urlcolor=black]{hyperref}
\usepackage{graphicx}
\usepackage{fancyhdr}
\pagestyle{fancy}
\renewcommand{\footrulewidth}{0.4pt}
\fancyfoot[L]{Uubu.fr}
\fancyfoot[R]{ven. juil. 24 10:49:02 CEST 2015}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={draft-bannister-dbis-custom-03},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={dbis: maps custom},
CreationDate={D:20150724104902},
ModDate={D:20150724104902},
Keywords={LDAP;Lightweight Directory Access Protocol}
}}
\begin{document}
 
\begin{center}
{\Huge draft-bannister-dbis-custom-03 }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large dbis: maps custom}
 
\vspace{10mm}
 
\hspace{1mm}  Ce document étend DBIS pour supporter des bases custom. Le schéma de base custom devrait être compatible avec NIS mais stocké dans des entrées X.500 pour qu'ils puissent être résolus avec LDAP. Une base custom contient des paires de clé/valeurs arbitraires.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Maps de configuration }
 
\
 
\hspace{1mm}  Une base custom utilise les maps de configuration standard définies dans draft-bannister-dbis-mapping. Additionnellement, les entrées dbisMapConfig pour les bases custom devraient avoir la classe dbisCustomConfig pour identifier qu'ils sont liés à une base custom.
\vspace{5mm} \\
 
 
\hspace{1mm} Il est recommandé que l'entrée dbisMapConfig pour une base custom ait l'attribut dbisMapFilter définis en accord avec la table suivante:
 
{\ttfamily
- - - - - - - - - - - - - - - - - - - - -\\ Database- - - dbisMapFilter\\ - - - - - - - - - - - - - - - - - - - - -\\ custom- - - - objectClass=customMapEntry\\ - - - - - - - - - - - - - - - - - - - - -\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Exemple d'entrée de map de configuration }
 
\
 
\hspace{1mm} L'exemple suivant montre une entrée de map de configuration pour une base custom appelée "console":
 
{\ttfamily
dn: cn=cons,en=sales.corp,ou=domain-mappings,o=infra\\ objectClass: top\\ objectClass: dbisMapConfig\\ objectClass: dbisCustomConfig\\ cn: cons\\ customMapName: console\\ dbisMapDN: ou=console,ou=dbis,o=infra\\ dbisMapFilter: objectClass=customMapEntry\\ profileTTL: 900\\ description: Primary console database (custom map)\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Base de données }
 
\
 
\hspace{1mm}  Une entrée de base de données custom contient les informations suivantes:
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} -]{Un nom de clé}
\item[\hspace{1mm} -]{Une valeur}
\end{description}
 
\vspace{1cm}{\huge ObjectClass }
 
\
 
\hspace{1mm}  Une entrée dbisMapConfig pour une base custom devrait avoir la classe dbisCustomConfig. Les entrées de map custom devraient avoir la class customMapEntry
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge dbisCustomConfig }
 
\
 
\hspace{1mm} La classe dbisCustomConfig est définie comme suit:
 
{\ttfamily
objectclass ( 1.3.6.1.4.1.23780.219.1.33 NAME 'dbisCustomConfig' DESC 'DBIS custom database configuration map' SUP dbisMapConfig STRUCTURAL MUST customMapName )\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge customMapEntry }
 
\
 
\hspace{1mm} La classe customMapEntry est définie comme suit:
 
{\ttfamily
objectclass ( 1.3.6.1.4.1.23780.219.1.35 NAME 'customMapEntry' DESC 'DBIS custom map entry' SUP top STRUCTURAL MUST ( en \$ customMapValue ) MAY ( description \$ disableObject ) )\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Attributs }
 
\
 
 
 
\vspace{1cm}{\huge customMapName }
 
\
 
\hspace{1mm} Le nom de la map custom est stockée dans l'attribut customMapName qui doit être assigné à une entrée dbisCustomConfig:
 
{\ttfamily
attributetype ( 1.3.6.1.4.1.23780.219.2.34 NAME 'customMapName' DESC 'Name of DBIS custom map' EQUALITY caseExactMatch SINGLE-VALUE SUBSTR caseExactSubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.15\{32768\} )\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge en }
 
\
 
\hspace{1mm}  Chaque clé de l'entrée de map custom est stockée dans l'attribu en qui doit être associé avec des entrées customMapEntry et devrait former le RDN.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge customMapValue }
 
\
 
\hspace{1mm} Chaque valeur de l'entrée est stockée dans l'attribut customMapValue qui doit être assigné à un customMapEntry:
 
{\ttfamily
attributetype ( 1.3.6.1.4.1.23780.219.2.35 NAME 'customMapValue' DESC 'DBIS custom map value' EQUALITY caseExactIA5Match SUBSTR caseExactIA5SubstringsMatch SYNTAX 1.3.6.1.4.1.1466.115.121.1.26 SINGLE-VALUE )\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge description }
 
\
 
\hspace{1mm}  L'attribut description peut être associé avec une entrée pour fournir une description arbitraire de l'entrée
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge manager }
 
\
 
\hspace{1mm}  L'attribut manager peut être associé avec une entrée pour fournir un ou plusieurs DN d'individus, groupes ou systèmes qui sont responsables de la maintenance de l'objet.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge disableObject }
 
\
 
\hspace{1mm}  Une entrée peut être désactivé en définissant disableObject à TRUE. Si une entrée est désactivé, le DUA devrait se comporter comme si l'entrée n'existe pas. Le DUA peut optionnellement fournir un mécanisme séparé pour lister les objets désactivé, mais doivent les marquer clairement comme tels pour éviter toute confusion.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Exemple d'entrées de map custom }
 
\
 
\hspace{1mm} L'exemple suivant montre des entrées de map custom au format ldif:
 
{\ttfamily
dn: ou=console,ou=custom,o=infra\\ objectClass: top\\ objectClass: organizationalUnit\\ ou: console\\ \hspace{2mm}\\ dn: en=kirk,ou=console,ou=custom,o=infra\\ objectClass: top\\ objectClass: customMapEntry\\ en: kirk\\ customMapValue: 2079 ssh\\ \hspace{2mm}\\ dn: en=spock,ou=console,ou=custom,o=infra\\ objectClass: top\\ objectClass: customMapEntry\\ en: spock\\ customMapValue: 53179 telnet\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Syntaxe d'attributs }
 
\
 
\hspace{1mm} Les syntaxes suivante sont utilisées par les attributs définis dans ce document:
 
{\ttfamily
- - - - - - - - - - - - - - - - - - - - - - - - - - - -\\ Syntax OID- - - - - - - - - - - Value - - - - Reference\\ - - - - - - - - - - - - - - - - - - - - - - - - - - - -\\ 1.3.6.1.4.1.1466.115.121.1.26 - IA5 String - \texttt{[}RFC4517\texttt{]}\\ - - - - - - - - - - - - - - - - - - - - - - - - - - - -\\
}
\vspace{8mm}
 
\vspace{1cm}{\huge Filtres de recherche communs }
 
\
 
\hspace{1mm}  Ce section fournis des exemples de filtre de recherche pour obtenir des entrées de base avec des critère communément utilisé. Pour simplifier les exemples, toutes les bases sont assumé avoir été définis avec une seule entrée de map de configuration. Cependant, draft-bannister-dbis-mapping permet plusieurs entrées et les implémentation doivent le supporter, augmentant le nombre de recherche nécessaire pour localiser toutes les entrées.
\vspace{5mm} \\
 
 
\hspace{1mm}  Le DN de base utilisé dans les opérations de recherche dans cette section vient de l'attribut dbisMapDN assigné à l'entrée dbisMapConfig. Noter que l'entrée dbisMapConfig peut en avoir plusieurs.
\vspace{5mm} \\
 
 
\hspace{1mm}  Quand il apparaît dans les filtres de recherche ci-dessous, le texte "dbisMapFilter" réfère à la valeur de l'attribut de même nom de l'entrée dbisMapConfig. Les noms de classe et attributs utilisés dans ces filtres de recherche peuvent être modifiés par les attributs dbisMapClass et dbisMapAttr assignés à l'entrée dbisMapConfig.
\vspace{5mm} \\
 
 
\hspace{1mm} Pour localiser la map de configuration: \\
\hspace{1mm} \textbf{(\&(objectClass=dbisCustomConfig)(!(disableObject=TRUE)))} \\
\hspace{1mm} Les maps custom sont énumérés avec le dbisMapFilter comme ceci: \\
\hspace{1mm} \textbf{(\&(dbisMapFilter)(!(disableObject=TRUE)))} \\
\end{flushleft}
\end{document}
