Présentation
En anglaisRÉSUMÉ
La sécurité et les annuaires électroniques ont toujours été indéfectiblement liés, et cela dans deux domaines. Certaines applications utilisent un annuaire LDAP pour gérer l'accès des utilisateurs aux ressources et services qu'elles prodiguent. Certains serveurs de sécurité utilisent des annuaires, en lieu et place de bases de données, pour y conserver toutes sortes d'information permettant à des utilisateurs de s'authentifier. La sécurité des données et des échanges repose sur la mise en œuvre du protocole TLS, et sur diverses méthodes permettant de valider l'authenticité d'un serveur et l'identité d'un utilisateur.
Lire cet article issu d'une ressource documentaire complète, actualisée et validée par des comités scientifiques.
Lire l’articleABSTRACT
Safety and electronic directories have always been closely linked and in two domains. Certain applications use a LDAP directory in order to manage users' access to the resources and services they provide. Certain safety servers use directories instead of databases to keep all sorts of information allowing users to authenticate themselves. The safety of data and exchanges rests with the implementation of the TSL protocol and with various methods allowing for the validation of the authenticity of a server and the identity of a user.
Auteur(s)
-
Michel GARDIE : Enseignant-chercheur à l'Institut national des télécommunications, Évry
INTRODUCTION
La sécurité et les annuaires électroniques ont toujours été indéfectiblement liés, et cela dans deux domaines.
Certaines applications utilisent un annuaire LDAP pour gérer l'accès des utilisateurs aux ressources et services qu'elles prodiguent. Certains serveurs de sécurité utilisent des annuaires, en lieu et place de bases de données, pour y conserver toutes sortes d'information permettant à des utilisateurs de s'authentifier (mots de passe, certificats, ...).
Ce dossier tente de présenter ces deux aspects dans le cadre des annuaires LDAP (Lightweight Directory Access Protocol).
Un serveur d'annuaire contient toutes sortes de données (nom, prénom, numéro de téléphone, adresse de courriel, etc.), mais certaines d'entre elles sont particulièrement névralgiques. Par exemple, les serveurs LDAP sont très souvent utilisés pour conserver les mots de passe des différents utilisateurs d'un réseau. Il arrive également que d'autres données, toutes aussi critiques, soient consignées au sein d'un annuaire LDAP. Citons ainsi celles concernant le type de système d'exploitation d'une machine, ou bien des informations à propos du compte d'un utilisateur, telles que son répertoire de travail, son « shell » préféré, le nom de la machine habituellement utilisée, etc. Il peut être également souhaité que certaines informations privées (un numéro de téléphone personnel, ou bien l'adresse du domicile d'un collaborateur, etc.) ne soient pas librement accessibles à l'extérieur du réseau d'entreprise. Toutes ces données sensibles doivent donc être protégées contre des agressions extérieures. Les risques encourus vont, du simple espionnage des données échangées, à l'intrusion dans le système d'annuaire par des personnes ou programmes malveillants.
L'échange de données, entre une application cliente et un serveur LDAP, se traduit par une connexion TCP (Transmission Control Protocol). Malheureusement, il arrive très souvent qu'une telle communication ne soit pas chiffrée. Autrement dit, les données sont transmises tout simplement en clair. Par conséquent, l'échange de données peut-être capturé et analysé ultérieurement. Un utilisateur peut également réussir à usurper une identité lui permettant ainsi d'accéder à des données sensibles – voire à les modifier – et ce, à des fins malveillantes ou d'espionnage industriel.
Dans le cas des annuaires LDAP, il est heureusement possible de mettre en œuvre plusieurs niveaux de sécurité, permettant ainsi de couvrir les cas de figures précédemment évoqués. Nous allons voir comment protéger une communication et, également, comment protéger l'accès aux données sensibles enregistrées dans un annuaire.
Ceci est d'autant plus fondamental que, rappelons-le, les annuaires LDAP sont souvent eux-mêmes utilisés dans des domaines liés à la sécurité, comme, par exemple, des applications d'authentification d'utilisateurs ou bien des applications de distribution de certificats et de clés.
L'étude de la sécurité est présentée comme suit. Une section du dossier s'intéresse à la mise en œuvre du protocole TLS qui est un des piliers de la sécurité de LDAP. Une partie est ensuite consacrée à la mise en œuvre de la confidentialité des échanges. Plusieurs sections présentent, en suivant, diverses méthodes permettant, d'une part, à un utilisateur de s'assurer de l'authenticité d'un serveur et, d'autre part, à un serveur de pouvoir valider l'identité d'un utilisateur et ainsi lui accorder les droits alloués. Puis, est étudiée la limitation des accès aux données sensibles d'un annuaire. Enfin, nous présentons l'utilisation d'un annuaire LDAP dans divers cadres, tels que l'authentification d'utilisateurs, la distribution de certificats, ou encore l'utilisation d'un annuaire comme base de données d'un serveur de clés de type Kerberos.
DOI (Digital Object Identifier)
Cet article fait partie de l’offre
Sécurité des systèmes d'information
(76 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Présentation
5. Contrôle d'accès
Le contrôle d'accès a pour but de gérer les droits des différents utilisateurs d'un annuaire. Le plus souvent, cela se fait par des listes de contrôles d'accès. La manière dont ces listes sont gérées et mises en œuvre dépend, bien évidemment, des implémentations. Par exemple, les listes peuvent être sous la forme de fichiers, lus lors du démarrage du serveur (configuration statique), ou bien peuvent être enregistrées sous forme d'entrées LDAP, spécifiques au serveur (configuration dynamique).
Le principe est relativement simple.
Une liste de contrôle d'accès est une suite de règles auxquelles devra obéir un serveur pour déterminer si un utilisateur donné a le droit d'accéder à une ressource spécifique.
Dans le cas d'un annuaire LDAP, les ressources sont, le plus souvent, des attributs individuels, des entrées particulières, voire des sous-arbres complets.
Regardons ce que nous pouvons obtenir dans le cas d'un serveur OpenLDAP [14].
5.1 Structure d'une liste d'accès
Une liste d'accès (ACL) est constituée de règles (directives) dont la syntaxe générale est la suivante :
access to <what> [by <who> <access> [ <control> ] ] +
Le champ « what » représente l'objet soumis au contrôle. Cela peut être une entrée, un attribut, etc.
Le champ « who » précise quel type d'utilisateur est concerné par le contrôle.
Le champ « access » précise le type d'accès accordé à « who » pour l'objet « what ».
Le champ « control » est optionnel. Il permet de gérer la manière dont sont lues les différentes règles.
HAUT DE PAGE
Il peut avoir une des quatre formes suivantes :
-
* [le caractère étoile] ;
-
dn[.<dnstyle>]=<pattern> ;
-
filter=<ldapfilter> ;
-
attrs=<attrlist>.
Le caractère * spécifie toutes les entrées de l'annuaire. La forme...
Cet article fait partie de l’offre
Sécurité des systèmes d'information
(76 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive
Contrôle d'accès
BIBLIOGRAPHIE
-
(1) - SEMERSCHEIM (J.) - Lightweight Directory Access Protocol (LDAP): the protocol - – RFC 4511, juin 2006.
-
(2) - HARRISON (R.) - LDAP: Authentication methods and security mechanisms - – RFC 4513, juin 2006.
-
(3) - DIERKS (T.), RESCORLA (E.) - The Transport Layer Security (TLS) Protocol Version 1.1 - – RFC 4346, avril 2006.
-
(4) - FREIER (A.), KARLTON (P.), KOCHER (P.) - The SSL Protocol Version 3.0 - – http://wp.netscape.com/eng/ssl3/draft302.txt
-
(5) - UIT-T - L'annuaire : cadre général des certificats de clé publique et d'attribut - – X.509, août 2005.
-
(6) - MELNIKOW (A.), ZEILENGA (K.) - Simple Authentication and Security Layer (SASL) - – RFC 4422, juin 2006.
-
...
ANNEXES
HAUT DE PAGE
2 Annexe : fichiers de configuration
Les fichiers de configuration présentés ici permettent de construire divers certificats simples, de façon à pouvoir mettre en œuvre rapidement une connexion TLS dans le cadre d'un serveur LDAP. Ces fichiers ne sont donnés qu'à titre d'exemple.
Pour plus d'information sur la structure des fichiers de configuration OpenSSL, voir .
HAUT DE PAGE
Ce fichier de configuration sert de base à la génération d'un certificat racine auto-signé. Il s'agit ici de celui de l'Autorité de certification INT LOR Root CA.
# pour générer un certificat root CA
[ req ]
default_bits = 1024
default_keyfile = private/ca.key
default_md = md5
distinguished_name = req_distinguished_name
x509_extensions = rootca_cert
[ req_distinguished_name ]
countryName = Pays
countryName_default = FR
countryName_min =...
Cet article fait partie de l’offre
Sécurité des systèmes d'information
(76 articles en ce moment)
Cette offre vous donne accès à :
Une base complète d’articles
Actualisée et enrichie d’articles validés par nos comités scientifiques
Des services
Un ensemble d'outils exclusifs en complément des ressources
Un Parcours Pratique
Opérationnel et didactique, pour garantir l'acquisition des compétences transverses
Doc & Quiz
Des articles interactifs avec des quiz, pour une lecture constructive