{"id":53,"date":"2007-03-12T00:00:00","date_gmt":"2007-03-12T00:00:00","guid":{"rendered":"http:\/\/netexpertise\/fr\/?p=53"},"modified":"2021-10-16T07:36:52","modified_gmt":"2021-10-16T06:36:52","slug":"authentification-active-directory","status":"publish","type":"post","link":"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html","title":{"rendered":"Authentification Apache sur Active Directory"},"content":{"rendered":"\n<p>Une installation typique dans une soci\u00e9t\u00e9 comprend des clients Windows s&rsquo;authentifiant sur un serveur Windows dont le coeur est Active Directory. Beaucoup ont aussi un serveur <a href=\"\/fr\/category\/divers\/apache\">Apache<\/a> sur lequel ils h\u00e9bergent leur Intranet ou toute autre information critique. En parlant d&rsquo;information critique, il y a de bonnes chances que l&rsquo;access y soit restreint \u00e0 certains groupes de personnes au sein de cette m\u00eame soci\u00e9t\u00e9. On nous a demand\u00e9 d&rsquo;installer un wiki pour notre \u00e9quipe pour b\u00e2tir une base de connaissance, qui contiendra probablement des informations sensibles sur la companie. Nous avons pens\u00e9 que l&rsquo;authentification avec Active Directory \u00e9tait une solution qui convenait tout-\u00e0-fait pour ce cas pr\u00e9cis<br><br><\/p>\n\n\n\n<h2>Pourquoi authentifier Apache sur Windows AD?<\/h2>\n\n\n\n<ul><li>C&rsquo;est rapide \u00e0 implementer<\/li><li>Personne n&rsquo;aime avoir plusieurs comptes diff\u00e9rents. C&rsquo;est tr\u00e8s humain d&rsquo;oublier les noms d&rsquo;utilisateur et les mots de passe<\/li><li>Il n&rsquo;y a pas besoin de recr\u00e9er chaque compte<\/li><li>Tout est centralis\u00e9. Si un compte est d\u00e9sactiv\u00e9 sur le domaine, l&rsquo;acc\u00e8s au serveur web lui sera interdit aussi<\/li><li>Les groupes cr\u00e9\u00e9s dans Active Directory peuvent \u00eatre r\u00e9utilis\u00e9s<\/li><\/ul>\n\n\n\n<p>M\u00eame si, je ne suis pas un pro-Microsoft, ces quelques bonnes raisons suffisent pour faire le pas!<br>&nbsp;<\/p>\n\n\n\n<div class=\"wp-block-image\"><figure class=\"aligncenter size-large\"><img src=\"\/uploads\/eye-iris-biometrics-face-detection-5814965.jpg\" alt=\"\"\/><\/figure><\/div>\n\n\n\n<h3><br>Lien avec Active Directory<\/h3>\n\n\n\n<p>Active Directory n&rsquo;est autre qu&rsquo;un serveur <a href=\"https:\/\/ldap.com\">LDAP<\/a> (Lightweight Directory Access Protocol), signifiant que l&rsquo;on peut ex\u00e9cuter des requ\u00eates pour rapatrier des informations sur les ordinateurs et les utilisateurs du domaine. Vous pouvez utiliser le client ldapsearch pour parcourir sa structure. Quoiqu&rsquo;il en soit, vous devez cr\u00e9er un utilisateur sp\u00e9cial pour avoir un lien au contr\u00f4leur de domaine afin d&rsquo;obtenir des d\u00e9tails sur les utilisateurs.<\/p>\n\n\n\n<ul><li>Connectez-vous au contr\u00f4leur de domaine et cr\u00e9ez un nouvel utilisateur dans \u00ab\u00a0Active Directory Users and Computers\u00a0\u00bb.<\/li><li>D\u00e9cochez \u00ab\u00a0User must change password at next logon\u00a0\u00bb et ne cr\u00e9ez pas une bo\u00eete-aux-lettres Exchange.<\/li><li>Le nom d&rsquo;utilisateur et le mot de passe seront n\u00e9cessaires pour lier le serveur Apache au contr\u00f4leur de domain.<\/li><\/ul>\n\n\n\n<p>La prochaine \u00e9tape est de r\u00e9cup\u00e9rer votre nom de domaine LDAP. Nous assumerons que c&rsquo;est &lsquo;location.company.com&rsquo;. Si vous ne le connaissez pas, soit demandez \u00e0 votre administrateur syst\u00e8me ou ex\u00e9cuter la proc\u00e9dure suivante.<br>&nbsp;<br>Ex\u00e9cutez <i>ldp.exe<\/i> sur le contr\u00f4leur de domaine. Cliquez sur &lsquo;Connection&rsquo; -&gt; &lsquo;Connect&rsquo; depuis le menu et laisser &lsquo;localhost&rsquo; dans le champ en bas. Cliquez alors sur &lsquo;Connection&rsquo; -&gt; &lsquo;Bind&rsquo; depuis le menu et entrez les d\u00e9tails de l&rsquo;utilisateur que vous avez cr\u00e9\u00e9 pr\u00e9c\u00e9demment. Allez maintenant sur &lsquo;Browse&rsquo; -&gt; &lsquo;Search&rsquo; et pressez &lsquo;enter&rsquo;. Ceci va retourner une liste de tous lesl objets pr\u00e9sents dans le r\u00e9pertoire. C&rsquo;est un peu aust\u00e8re mais vous pouvez trouver facilement les lignes correspondant aux utilisateurs de votre syst\u00e8me. Une entr\u00e9e devrait ressembler \u00e0 ceci:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"yaml\" class=\"language-yaml\">Dn: CN=John Doe,CN=Users,DC=location,DC=company,DC=com\nobjectClass: top; person; organizationalPerson; user;\ncn: John Doe;\ndescription: John Doe;<\/code><\/pre>\n\n\n\n<p>Nous venons de trouver notre information pr\u00e9c\u00e9dente <i>location.company.com<\/i>. Nous allons l&rsquo;utiliser pour configurer le module Apache.<br>&nbsp;<\/p>\n\n\n\n<h3>Configuration Apache<\/h3>\n\n\n\n<p>Nous utilisons Apache 2.2.2 mais la proc\u00e9dure est similaire avec les autres versions. V\u00e9rifiez que les modules mod_auth_ldap ou mod_authz_ldap sont pr\u00e9sentes dans httpd.conf &#8211; dans la section load modules. La configuration des modules peut \u00eatre ajout\u00e9e dans httpd.conf mais c&rsquo;est toujours une bonne id\u00e9e de la garder s\u00e9par\u00e9e dans un fichier externe. Apache sur Redhat conserve la configuration des modules dans \/etc\/httpd\/conf.d\/. J&rsquo;ai ajout\u00e9 les lignes suivantes dans authz_ldap.conf:<br>&nbsp;<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"apacheconf\" class=\"language-apacheconf\">&lt;Location \/protected&gt;\nOrder deny,allow\nAllow from all\nAuthBasicProvider ldap\nAuthzLDAPAuthoritative Off\nAuthLDAPURL\nldap:\/\/your-domain-controller:389\/CN=Users,DC=location,DC=company,DC=com?sAMAccountName?sub?(objectClass=user)\n# Ou \u00e9ventuellement avec un filtre sur un groupe\n# ldap:\/\/your-domain-controller:389\/CN=Users,\n# DC=location,DC=company,DC=com?sAMAccountName?\n# sub?(memberOf=CN=MyGroup,CN=Users,DC=location,DC=company,DC=com)\nAuthLDAPBindDN cn=myusername,cn=Users,dc=location,dc=company,dc=com\nAuthLDAPBindPassword mypassword\nAuthType Basic\nAuthName \"Protected\"\nrequire valid-user\n&lt;\/Location&gt;<\/code><\/pre>\n\n\n\n<p>&nbsp;<br><i>myusername<\/i> et <i>mypassword<\/i> \u00e9tant l&rsquo;utilisateur et le mot de passe cr\u00e9\u00e9s pr\u00e9c\u00e9demment pour lier Active directory.<br>Red\u00e9marrez Apache, et c&rsquo;est fait! Une fen\u00eatre demandant un nom d&rsquo;utilisateur et un mot de passe permet l&rsquo;acc\u00e8s \u00e0 un r\u00e9pertoire \u00ab\u00a0protected;\u00a0\u00bb.<br>&nbsp;<\/p>\n\n\n\n<h3>Notes<\/h3>\n\n\n\n<p>Vous ne devez pas entrer le nom de domaine devant le nom d&rsquo;utilisateur comme pour Windows (\\\\DOMAINNAME\\user), Ceci donnera un message \u00ab\u00a0wrong credential\u00a0\u00bb dans les logs Apache signifiant que le mot de passe ou le nom d&rsquo;utilisateur est faux.<br>&nbsp;<br>Il est possible de revenir vers d&rsquo;autres m\u00e9thodes d&rsquo;authentification. Ajoutez simplement le mot-cl\u00e9 <i>AuthLDAPAuthoritative<\/i> suivi de <i>AuthUserFile \/var\/www\/html\/Protected\/htpasswd<\/i> par exemple si votre fichier .htaccess est situ\u00e9 l\u00e0. Vous pouvez cr\u00e9er un utilisateur extra s&rsquo;il n&rsquo;existe pas dans Active directory par ce moyen.<\/p>\n\n\n\n<p>La directive &lt;Location \/protected&gt; est r\u00e9cursive signifiant que toutes les pages de ses sous-r\u00e9pertoires sont aussi prot\u00e9g\u00e9es. Si vous voulez donner un acc\u00e8s publique au sous-r\u00e9pertoire \/pub, vous pouvez utiliser le set d&rsquo;instructions suivantes:<\/p>\n\n\n\n<pre class=\"wp-block-code\"><code lang=\"apacheconf\" class=\"language-apacheconf\">&lt;Location \"\/pub\"&gt;\n    Order allow,deny\n    Allow from any\n    Satisfy any\n&lt;\/LocationMatch&gt;<\/code><\/pre>\n","protected":false},"excerpt":{"rendered":"<p>Etapes pour authentifier Apache sur Windows Active Directory<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":{"_mi_skip_tracking":false},"categories":[6,68],"tags":[63,406,62,412],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v19.13 - https:\/\/yoast.com\/wordpress\/plugins\/seo\/ -->\n<title>Netexpertise - Authentification Apache sur Active Directory<\/title>\n<meta name=\"description\" content=\"Authentifier les pages web Apache sur Windows Active Directory. Authoriser les membres d&#039;un groupe AD \u00e0 acc\u00e9der aux ressources\" \/>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html\" \/>\n<meta property=\"og:locale\" content=\"fr_FR\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Netexpertise - Authentification Apache sur Active Directory\" \/>\n<meta property=\"og:description\" content=\"Authentifier les pages web Apache sur Windows Active Directory. Authoriser les membres d&#039;un groupe AD \u00e0 acc\u00e9der aux ressources\" \/>\n<meta property=\"og:url\" content=\"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html\" \/>\n<meta property=\"og:site_name\" content=\"Netexpertise\" \/>\n<meta property=\"article:published_time\" content=\"2007-03-12T00:00:00+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2021-10-16T06:36:52+00:00\" \/>\n<meta name=\"author\" content=\"dave\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:creator\" content=\"@netexpertise\" \/>\n<meta name=\"twitter:site\" content=\"@netexpertise\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html\",\"url\":\"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html\",\"name\":\"Netexpertise - Authentification Apache sur Active Directory\",\"isPartOf\":{\"@id\":\"https:\/\/www.netexpertise.eu\/fr\/#website\"},\"datePublished\":\"2007-03-12T00:00:00+00:00\",\"dateModified\":\"2021-10-16T06:36:52+00:00\",\"author\":{\"@id\":\"https:\/\/www.netexpertise.eu\/fr\/#\/schema\/person\/e398f0307e2b167f6b884c4953be2632\"},\"description\":\"Authentifier les pages web Apache sur Windows Active Directory. Authoriser les membres d'un groupe AD \u00e0 acc\u00e9der aux ressources\",\"breadcrumb\":{\"@id\":\"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html#breadcrumb\"},\"inLanguage\":\"fr-FR\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Accueil\",\"item\":\"https:\/\/www.netexpertise.eu\/fr\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Authentification Apache sur Active Directory\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/www.netexpertise.eu\/fr\/#website\",\"url\":\"https:\/\/www.netexpertise.eu\/fr\/\",\"name\":\"Netexpertise\",\"description\":\"Syst\u00e8mes \/ R\u00e9seaux \/ DevOps\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/www.netexpertise.eu\/fr\/?s={search_term_string}\"},\"query-input\":\"required name=search_term_string\"}],\"inLanguage\":\"fr-FR\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/www.netexpertise.eu\/fr\/#\/schema\/person\/e398f0307e2b167f6b884c4953be2632\",\"name\":\"dave\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"fr-FR\",\"@id\":\"https:\/\/www.netexpertise.eu\/fr\/#\/schema\/person\/image\/\",\"url\":\"http:\/\/1.gravatar.com\/avatar\/1129916e1f4955bd632f27f836f64e55?s=96&d=mm&r=g\",\"contentUrl\":\"http:\/\/1.gravatar.com\/avatar\/1129916e1f4955bd632f27f836f64e55?s=96&d=mm&r=g\",\"caption\":\"dave\"},\"sameAs\":[\"http:\/\/www.netexpertise.eu\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Netexpertise - Authentification Apache sur Active Directory","description":"Authentifier les pages web Apache sur Windows Active Directory. Authoriser les membres d'un groupe AD \u00e0 acc\u00e9der aux ressources","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html","og_locale":"fr_FR","og_type":"article","og_title":"Netexpertise - Authentification Apache sur Active Directory","og_description":"Authentifier les pages web Apache sur Windows Active Directory. Authoriser les membres d'un groupe AD \u00e0 acc\u00e9der aux ressources","og_url":"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html","og_site_name":"Netexpertise","article_published_time":"2007-03-12T00:00:00+00:00","article_modified_time":"2021-10-16T06:36:52+00:00","author":"dave","twitter_card":"summary_large_image","twitter_creator":"@netexpertise","twitter_site":"@netexpertise","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html","url":"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html","name":"Netexpertise - Authentification Apache sur Active Directory","isPartOf":{"@id":"https:\/\/www.netexpertise.eu\/fr\/#website"},"datePublished":"2007-03-12T00:00:00+00:00","dateModified":"2021-10-16T06:36:52+00:00","author":{"@id":"https:\/\/www.netexpertise.eu\/fr\/#\/schema\/person\/e398f0307e2b167f6b884c4953be2632"},"description":"Authentifier les pages web Apache sur Windows Active Directory. Authoriser les membres d'un groupe AD \u00e0 acc\u00e9der aux ressources","breadcrumb":{"@id":"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html#breadcrumb"},"inLanguage":"fr-FR","potentialAction":[{"@type":"ReadAction","target":["http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html"]}]},{"@type":"BreadcrumbList","@id":"http:\/\/www.netexpertise.eu\/fr\/divers\/apache\/authentification-active-directory.html#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Accueil","item":"https:\/\/www.netexpertise.eu\/fr"},{"@type":"ListItem","position":2,"name":"Authentification Apache sur Active Directory"}]},{"@type":"WebSite","@id":"https:\/\/www.netexpertise.eu\/fr\/#website","url":"https:\/\/www.netexpertise.eu\/fr\/","name":"Netexpertise","description":"Syst\u00e8mes \/ R\u00e9seaux \/ DevOps","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.netexpertise.eu\/fr\/?s={search_term_string}"},"query-input":"required name=search_term_string"}],"inLanguage":"fr-FR"},{"@type":"Person","@id":"https:\/\/www.netexpertise.eu\/fr\/#\/schema\/person\/e398f0307e2b167f6b884c4953be2632","name":"dave","image":{"@type":"ImageObject","inLanguage":"fr-FR","@id":"https:\/\/www.netexpertise.eu\/fr\/#\/schema\/person\/image\/","url":"http:\/\/1.gravatar.com\/avatar\/1129916e1f4955bd632f27f836f64e55?s=96&d=mm&r=g","contentUrl":"http:\/\/1.gravatar.com\/avatar\/1129916e1f4955bd632f27f836f64e55?s=96&d=mm&r=g","caption":"dave"},"sameAs":["http:\/\/www.netexpertise.eu"]}]}},"_links":{"self":[{"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/posts\/53"}],"collection":[{"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/comments?post=53"}],"version-history":[{"count":0,"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/posts\/53\/revisions"}],"wp:attachment":[{"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/media?parent=53"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/categories?post=53"},{"taxonomy":"post_tag","embeddable":true,"href":"http:\/\/www.netexpertise.eu\/fr\/wp-json\/wp\/v2\/tags?post=53"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}