16
juin 2011

Connecter Piwigo à un annuaire LDAP

Piwigo est une galerie web puissante utilisable par tout le monde mais aussi par des pros de la photos, je vous passe les détails. Le but de cette article est de vous expliquer comment utiliser les comptes de votre annuaire LDAP pour vous connecter à Piwigo.

Pour intégrer la gestion d'un annuaire il y a deux méthodes :

  • Modifier le code de Piwigo;
  • Gérer authentification par le serveur apache.
J'ai opté pour la seconde car c'est la plus simple à mettre en place. Piwigo propose ça méthode de gestion des comptes et aussi l'authentification externe. C'est utilisé pour le connecter à un forum FluxBB par exemple. Nous en utiliserons juste la couche authentification Apache.

Configuration d'apache 2

La aussi deux possibilités :
  • modifier le fichier de configuration de votre vhost;
  • passer par un fichier .htaccess.
La deuxième solution est la plus simple pour nos essais. A la raçine de votre installation Piwigo créer un fichier .htaccess et ajouté ça
AuthLDAPURL ldap://votreserveurLDAP/dc=modom,dc=fr?uid?sub?(objectClass=*)
AuthLDAPGroupAttribute memberUid
AuthLDAPGroupAttributeIsDN off

## Maintenant on lance une fenêtre d'authentification
AuthType basic
## Nom de la fenêtre d'authentification
AuthName "Restrited LDAP-protected area"
## On indique à Apache de regarder dans LDAP pour la liste des utilisateurs
AuthBasicProvider ldap
Require valid-user

Configuration de Piwigo

Edité ou créé le fichier include/config_local.inc.php et ajouté ça
$conf['apache_authentication'] = true;
Enregistre le et rechargé la page, normalement une nouvelle fenêtre s'ouvre vous demandant un nom d'utilisateur et un mot de passe. Indiquer un compte qui existe dans votre annuaire. Une fois l'authentification passé et si tout est ok Piwigo a deux possibilité :
  • Le compte existe dans Piwigo, il continue;
  • Le compte n'existe pas, dans ce cas il le créé avec les paramètres par défaut.

Compte administrateur

Cette méthode pose un petit problème, par défaut les nouveaux comptes sont créé en statut visiteur, si vous pour la mise en place vous avez besoin de passer votre compte en administrateur alors il faut désactiver l'authentification apache de cette manière :
$conf['apache_authentication'] = false;
Recharger la page et vous connecter avec le compte administrateur.

Optimisation

Une fois la configuration validé je vous conseille de mettre la partie du .htaccess dans le fichier de configuration de votre vhost. Le fichiers .htaccess est lu et exécuté par apache à chaque chargement des pages donc pas.

Si vous avez besoins d'aide sur Piwigo merci d'utiliser le forum et si c'est plus particulièrement sur Piwigo/Ldap alors c'est ce post.

Administrateur système de métier mais surtout curieux de découvrir de nouvelles technos très orientées DIY. A mes heures perdues je fais de la photo avec toujours une petite envie d'intégrer des DIY sous forme de timelaps à base de raspberry.

2 commentaires

flipflip a dit

@22decembre : Oui c'est tout ou rien, comme c'est souvent le cas dans l'authentification et c'est un peu le but d'un annuaire ldap : ne pas avoir plusieurs bases utilisateurs à gérer. Pour l'invité je n'y avais pas pensé mais n'utilisant pas ce cas je ne pourrais pas t'en dire plus et je pense que c'est bloquant pour les logiciels extérieur mais c'est pas forcement incompatible puisque c'est Apache qui fait une requête à l'annuaire et non le logiciel extérieur. Ensuite le logiciel extérieur c'est avec Apache qu'il communique.

Répondre

22decembre a dit

ça m'a l'air pas mal du tout...

Toutefois, un soucis, ça fait dans le tout ou rien non ? Impossible de laisser un accès anonyme pour voir les photos ? Moi, je voudrais juste l'authentification ldap pour l'administration (ajout de photos...).

Au passage, est-ce que ça laisse passer les logiciels extérieurs qui uploadent des photos ?

Répondre

Écrire un commentaire

Quelle est la quatrième lettre du mot wpuzyx ? :

Connecter Piwigo à un annuaire LDAP - Philippe Maladjian - Péripéties bucoliques d'un administrateur systèmes au royaume de la virtualisation, du stockage et accessoirement photographe à ses heures perdues