Salut,

J'ai une classe utisateur que j'ai récupéré d'une vielle application qui utilise ADLDAP pour authentifier les utilisateurs directement depuis l'Active Directory. Dans cette vieille application, les utilisateurs n'avaient donc pas besoin de saisir de nom d'utilisateur et de mot de passe. Il suffisait ensuite de tester le groupe AD des utilisateurs pour leur donner plus ou moins de droits.

Comment vous y prendriez vous pour intégrer ça dans une application symfony ?

Est-ce que vous auriez une recette générale pour me donner un coup de main.

Merci

Voici comment fonctionnait le code php de mon ancienne application :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
 
 
// Constructeur
function __construct($utilisateur_login){
 
	$ldap = Utilisateur::initLdap();
 
	$result=$ldap->user_info($utilisateur_login,array("samaccountname"));
	if (!$result){
		return false;
	}
	$this->utilisateur_login = utf8_decode($result[0][samaccountname][0]);
 
	$result=$ldap->user_info($utilisateur_login,array("sn")); // Requete LDAP sur AD
	$this->utilisateur_nom = utf8_decode($result[0][sn][0]);
 
	$result=$ldap->user_info($utilisateur_login,array("givenname")); // Requete LDAP sur AD
	$this->utilisateur_prenom = utf8_decode($result[0][givenname][0]);
 
	$result=$ldap->user_info($utilisateur_login,array("mail")); // Requete LDAP sur AD
 
	$this->utilisateur_adresseEmail = $result[0][mail][0];
	}
}
Here's the initLdap method :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
static function initLdap(){
	if (Utilisateur::$ldap == null){
			$ldap = new adLDAP();
			Utilisateur::$ldap = $ldap;
	} else {
			$ldap = Utilisateur::$ldap;
	}
	return $ldap;
}

Here is my connection method :

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
 
function connexionUtilisateur(){
 
	$utilisateur_login = substr($_SERVER['REMOTE_USER'],0,strpos($_SERVER['REMOTE_USER'],"@"));
 
	$_SESSION['UTILISATEUR'] = new Utilisateur($utilisateur_login);
	$login = $_SESSION['UTILISATEUR']->getUtilisateur_login();
	if ($login != "")
		return true;
	else 
		return false;
 
}
Merci du coup de main !