Je suis capable de me lier au serveur AD, mais j'ai de la difficulté à comprendre comment valider l'appartenance à un groupe spécifique. Ce que je veux faire est de vérifier si l'utilisateur fait partie du groupe "DOMAIN \ IT" et si c'est le cas, affectez une variable de session que je pourrai utiliser plus tard. Voici ce que j'ai jusqu'à présent:Valider l'appartenance au groupe AD avec php et LDAP
if (isset($_POST["submit"])){
$ldaprdn = "DOMAIN\\" . $_POST["username"]; // ldap rdn or dn
$ldappass = $_POST["password"]; // associated password
} else {
$ldaprdn = "noUserName"; // ldap rdn or dn
$ldappass = "noPassWord"; // associated password
}
//check login form post submission and blank values
if (isset($_POST["submit"])){
if ($_SESSION["blanklogin"] !== "1"){
// connect to ldap server
$ldapconn = ldap_connect("DC01.ROOT.DOMAIN.ORG")
or die("Could not connect to LDAP server.");
if ($ldapconn) {
// binding to ldap server
$ldapbind = ldap_bind($ldapconn, $ldaprdn, $ldappass);
// verify binding
if ($ldapbind) {
$_SESSION["login"] = "1";
TODO: CHECK GROUP MEMBERSHIP - IF IN GROUP DOMAIN\IT then set session variable.
session_regenerate_id(true);
echo "LDAP Bind For "; echo $ldaprdn; echo " successful...";
echo "Login Successful";
header("Location: index.php");
} else {
echo "LDAP bind for "; echo $ldaprdn; echo " Failed...<br />";
$_SESSION["login"] = "0";
}
$_SESSION["blanklogin"] = "0";
ldap_unbind($ldapconn);
}
} else {
echo "Username & Password Required<br />";
}
}
Merveilleux, merci beaucoup @Ashigore! –