Compare commits

4 Commits

Author SHA1 Message Date
21db0c84aa mise au point solution 2025-12-02 14:27:14 +01:00
a2207b1eff ajout ldif compte de service 2022-11-30 12:03:14 +01:00
5a649e756f solution 2022-11-30 08:35:36 +01:00
d9c53018d5 solution 2022-11-29 22:30:11 +01:00
4 changed files with 28 additions and 34 deletions

View File

@@ -1,30 +1,11 @@
# Dokuwiki en mode LDAP # Applications
## Caractéristiques de l'application ## Apache
Répertoire d'installation: /var/www/html/dokuwiki/ Voir le fichier _protected.conf_
Fichier de configuration principal: conf/local.protected.php ⚠️ pensez à relancer le service httpd après modification de ce fichier
## Prérequis ## Dokuwiki
S'assurer de la présence d'un compte de service
Optionnel: s'assurer de la présence d'un groupe utilisateur contenant des utilisateurs
## Objectif
Permettre aux utilisateurs LDAP d'accéder à l'application
Mettre au point le filtre _userfilter_ permettant de récupérer l'objet ldap dont l'uid est "%{user}" et dont la classe d'objet est _posixaccount_. %{user} contient le login renseigné par le visiteur
Mettre au point le filtre _groupfilter_ qui permet de récupérer le group (classe posixGroup) dont est membre (memberuid) l'utilisateur en train de se connecter ( %{uid} ).
Compléter le fichier de configuration. N'oubliez pas le compte de service ni la directive _conf['superuser'] = '@test'_
## Tester
Vous devez pouvoir vous connecter sur http://ldxX.formation.opendoor.fr/dokuwiki avec un des comptes utilisateurs LDAP
(Penser à vérifier les logs ldap en cas d'erreur)
Voir le fichier _local.protected.php_

5
apache.ldif Normal file
View File

@@ -0,0 +1,5 @@
dn: uid=apache,ou=services,dc=example,dc=fr
objectClass: simpleSecurityObject
objectClass: account
uid: apache
userPassword: 123Soleil

View File

@@ -1,14 +1,13 @@
<?php <?php
// Voir https://www.dokuwiki.org/fr:auth:ldap
$conf['useacl'] = 1; //enable ACL $conf['useacl'] = 1; //enable ACL
$conf['authtype'] = 'authldap'; //enable this Auth plugin $conf['authtype'] = 'authldap'; //enable this Auth plugin
$conf['superuser'] = 'CHANGEME user ou @group' ; $conf['superuser'] = '@test' ;
$conf['plugin']['authldap']['version'] = 3 ; $conf['plugin']['authldap']['version'] = 3 ;
$conf['plugin']['authldap']['server'] = 'CHANGEME' ; $conf['plugin']['authldap']['server'] = 'ldaps://ldx1.formation.opendoor.fr' ;
$conf['plugin']['authldap']['usertree'] = 'CHANGEME'; $conf['plugin']['authldap']['usertree'] = 'ou=users,dc=example,dc=fr';
$conf['plugin']['authldap']['grouptree'] = 'CHANGEME'; $conf['plugin']['authldap']['grouptree'] = 'ou=groups;dc=example,dc=fr';
$conf['plugin']['authldap']['userfilter'] = 'CHANGEME'; $conf['plugin']['authldap']['userfilter'] = '(&(uid=%{user})(objectClass=posixAccount))';
$conf['plugin']['authldap']['groupfilter'] = 'CHANGEME'; $conf['plugin']['authldap']['groupfilter'] = '(&(objectClass=posixGroup)(memberUID=%{user}))';
$conf['plugin']['authldap']['attributes'] = array('cn', 'displayname', 'mail', 'givenname', 'objectclass', 'sn', 'uid', 'memberof'); $conf['plugin']['authldap']['attributes'] = array('cn', 'displayname', 'mail', 'givenname', 'objectclass', 'sn', 'uid', 'memberof');
$conf['plugin']['authldap']['binddn'] = 'CHANGEME'; $conf['plugin']['authldap']['binddn'] = 'uid=dokuwiki,ou=services,dc=example,dc=fr';
$conf['plugin']['authldap']['bindpw'] = 'CHANGEME'; $conf['plugin']['authldap']['bindpw'] = '123Soleil';

9
protected.conf Normal file
View File

@@ -0,0 +1,9 @@
<Directory /var/www/html/>
AuthName "acces restreint"
AuthType Basic
AuthBasicProvider ldap
AuthLdapUrl ldaps://ldx1.formation.opendoor.fr/dc=example,dc=fr?uid?sub?objectclass=posixaccount
AuthLDAPBindDN uid=apache,ou=services,dc=example,dc=fr
AuthLDAPBindPassword 123Soleil
require valid-user
</Directory>