Limiter l'accès à un dossier web

Protection par fichier .htaccess

Un fichier .htaccess est une extension de la configuration d'apache. Il permet différentes choses dont en particulier limiter l'accès à un dossier et des fichiers contenus. Il suffit de créer un fichier se nommant .htaccess et de le placer dans le dossier. Attention, cette protection ne limite que les accès web. Vous trouverez beaucoup d'information sur internet.

Utilisation du LDAP

Dans l'exemple qui suit, on s'identifie au serveur ldap de l'INSA et on autorise seulement les utilisateurs login1, login2 et login3 à se connecter.

AuthName "Acces limite"
AuthType Basic
AuthzLDAPAuthoritative off
AuthLDAPURL ldap://srv-ldap1.insa-toulouse.fr:389/ou=People,dc=insa-toulouse,dc=fr
AuthBasicProvider ldap

<limit GET POST>
   require user login1 login2 login3
</limit>


Protection d'une page php

Par CAS

C'est la méthode à privilégier. Vous pouvez limiter les accès aux étudiants de l'INSA ou aux étudiants de l'université de Toulouse en général selon le serveur CAS que vous utilisez. Voir Authentification CAS.

Par LDAP

Il suffit de récupérer le login et le mot de passe et le placer dans les variables $user et $password puis de traiter les informations avec ce bout de code :

$host_ldap = "srv-ldap1.insa-toulouse.fr";
$ds = ldap_connect($host_ldap) or die("Impossible de se connecter a LDAP");

$basedn = "ou=People,dc=insa-toulouse,dc=fr";
$dn = "uid=$user, ".$basedn;

$r = @ldap_bind($ds,$dn,$password);
if($r != FALSE)  {
    // L'identification est réussie
    // Ici votre code
}

N'utilisez cette méthode que si nécessaire.


Wordpress avec le plugin "Simple LDAP Login Settings"

https://wordpress.org/plugins/simple-ldap-login/

Config:

Onglet "Simple" :
 Enable LDAP Authentication : Oui
 Account Suffix : *Vide*
 Base DN : "ou=People,dc=insa-toulouse,dc=fr"
 Domain Controller(s) : "srv-ldap1.insa-toulouse.fr"
 LDAP Directory : Open LDAP (and etc)
Onglet "Advanced" :
 Required Groups : *vide*
 LDAP Exclusive : Oui
 User Creations : Oui
 New User Role	: Abonné
 Group Base DN (optional) : *vide*
 LDAP Login Attribute : "uid"
 LDAP Group Attribute : "cn"	
 Search Sub OUs : Oui

Le reste doit etre bon.