\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]{sam. sept. 28 21:09:54 CEST 2013}
\lfoot{\Large \textit{Uubu.fr}}
\hypersetup{pdfinfo={
Title={slapo-accesslog},
Author={Sylvain Girod},
Creator={Bash script from uubu.fr's format version 1},
Producer={Bash script and PDFLaTeX},
Subject={Overlay accesslog},
CreationDate={D:20130928210954},
ModDate={D:20130928210954},
Keywords={LDAP;OpenLDAP;Lightweight Directory Access Protocol}
}}
\begin{document}
 
\begin{center}
{\Huge slapo-accesslog }
\end{center}
\vspace{1cm}
 
\begin{flushleft}
 
{\large Overlay accesslog}
 
\vspace{10mm}
 
\hspace{1mm}  Overlay de log des accès. Il permet d'enregistrer tous les accès à la base de données dans une autre base.
\vspace{5mm} \\
 
 
\vspace{1cm}{\huge Configuration }
 
\
 
\begin{description} \normalsize
\item[\hspace{1mm} logdb <suffix>]{Spécifie le suffix d'une base de données à utiliser pour stocker les enregistrements.}
\item[\hspace{1mm} logops <operations>]{Spécifie quel types d'opérations logger. (abandon, add, bind, compare, delete, extended, modify, modrdn, search, unbind, et les alias writes (add, delete, modify, modrdn), reads (compare, search), session (abandon, bind, unbind) et all (toutes les opérations) )}
\item[\hspace{1mm} logbase <operations><baseDN>]{Spécifie un jeu d'opérations qui seront loggés uniquement s'ils se produisent dans une arborescence spécifique de la base, et délimités par le caractère '|'}
\item[\hspace{1mm} logold <filter>]{Spécifie un filtre pour matcher les entrées supprimées et modifiées. Si l'entrée match le filtre, l'ancienne entrée sera loggées avec la requête en cour.}
\item[\hspace{1mm} logoldattr <attr>]{Spécifie une liste d'attributs loggés.}
\item[\hspace{1mm} logpurge <age><interval>]{Spécifie la durée maximal pour les entrées à maintenir dans la base. et la fréquence de scan de la base pour les anciennes entrées. le format de date est [ddd+]hh:mm[:ss]. ex: logpurge 2+00:00 1+00:00 pour un scan quotidien avec suppression des entrées de plus de 2 jours.}
\item[\hspace{1mm} logsuccess TRUE | FALSE]{à TRUE, les enregistrement seront loggés uniquement si la requête produit un succès. défaut : FALSE}
\end{description}
 
\vspace{1cm}{\huge Schéma }
 
\
 
\hspace{1mm}  accesslog utilise le schéma audit décrit ici. ce schéma est conçu spécifiquement pour cet overlay.
\vspace{5mm} \\
 
 
\begin{description} \normalsize
\item[\hspace{1mm} auditObject]{2 classes en sont dérivés : auditReadObject et auditWriteObject.}
\item[\hspace{1mm} reqStart]{}
\item[\hspace{1mm} reqEnd]{Fournissent l'heure de début et de fin de l'opération.}
\item[\hspace{1mm} reqType]{Décrit le type d'opération qui est loggée.}
\item[\hspace{1mm} reqSession]{Identifiant commun à toutes les opérations associées avec la même session LDAP}
\item[\hspace{1mm} reqDN]{DN de la cible de l'opération}
\item[\hspace{1mm} reqAuthzID]{DN de l'utilisation qui a effectué l'action}
\item[\hspace{1mm} reqControls]{}
\item[\hspace{1mm} reqRespControls]{Gèrent les contrôles envoyés par le client dans la requête et retourné par le serveur.}
\item[\hspace{1mm} reqResult]{Code de résultat LDAP de l'opération}
\item[\hspace{1mm} reqMessage]{message d'erreur s'il y'en a un}
\item[\hspace{1mm} reqReferral]{Gère les référrant qui ont été retournés avec le résultat de la requête.}
\end{description}
 
{\ttfamily
( 1.3.6.1.4.1.4203.666.11.5.2.1 NAME 'auditObject' DESC 'OpenLDAP request auditing' SUP top STRUCTURAL MUST ( reqStart \$ reqType \$ reqSession ) MAY ( reqDN \$ reqAuthzID \$ reqControls \$ reqRespControls \$ reqEnd \$ reqResult \$ reqMessage \$ reqReferral ) )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.4 NAME 'auditAbandon' DESC 'Abandon operation' SUP auditObject STRUCTURAL MUST reqId )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.5 NAME 'auditAdd' DESC 'Add operation' SUP auditWriteObject STRUCTURAL MUST reqMod )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.6 NAME 'auditBind' DESC 'Bind operation' SUP auditObject STRUCTURAL MUST ( reqVersion \$ reqMethod ) )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.7 NAME 'auditCompare' DESC 'Compare operation' SUP auditObject STRUCTURAL MUST reqAssertion )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.8 NAME 'auditDelete'\\ DESC 'Delete operation' SUP auditWriteObject STRUCTURAL MAY reqOld )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.9 NAME 'auditModify' DESC 'Modify operation' SUP auditWriteObject STRUCTURAL MAY reqOld MUST reqMod )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.10 NAME 'auditModRDN' DESC 'ModRDN operation' SUP auditWriteObject STRUCTURAL MUST ( reqNewRDN \$ reqDeleteOldRDN ) MAY ( reqNewSuperior \$ reqOld ) )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.11 NAME 'auditSearch' DESC 'Search operation' SUP auditReadObject STRUCTURAL MUST ( reqScope \$ reqDerefAliases \$ reqAttrsOnly ) MAY ( reqFilter \$ reqAttr \$ reqEntries \$ reqSizeLimit \$ reqTimeLimit ) )\\ \hspace{2mm}\\ ( 1.3.6.1.4.1.4203.666.11.5.2.12 NAME 'auditExtended' DESC 'Extended operation' SUP auditObject STRUCTURAL MAY reqData )\\
}
\vspace{8mm}
\end{flushleft}
\end{document}
