Ajouter un mot de passe d'authenfication Active directory

Eléphanteau du PHP | 11 Messages

01 oct. 2019, 12:51

Bonjour à tous,

Je viens vers vous car j'ai un petit souci au niveau d'un serveur Active directory, en effet j'arrive à me connecter récupérer mes utilisateur etc.. lorsque que j'ajoute un utilisateur en direct via le logiciel AD, je lui attribue un mot de passe et celui-ci est utilisable lors de l'authentification en PHP via un formulaire, rien d'anormal.

Le problème est que quand j'ajoute un utilisateur directement en PHP j'utilise ce code
$ldapconn = ldap_connect("adresse serveur");
 $ldapbind = ldap_bind($ldapconn, "local", "test");

 if ($ldapconn) {
    $cn = $info["cn"][0] = "test test ";
    $info["sn"][0] ="test ";
    $info["givenname"][0] ="test ";
    $info["displayname"][0] ="test test ";
    $info["name"][0] ="test test ";
    $info["userprincipalname"][0] = "test @test .test ";
    $info["samaccountname"][0] = "ttest ";
 
    $info["objectClass"][0]="top";
    $info["objectClass"][1]="person";
    $info["objectClass"][2]="organizationalPerson";
    $info["objectClass"][3]="user";
    $info["objectCategory"][0] ="CN=Person,CN=Schema,CN=Configuration,DC=test ,DC=test ";
    $info['userPassword'][0] = "test ";
 
    // Ajoute les données au dossier
    $r = ldap_add($ldapconn,"CN=".$cn.",OU=Utilisateurs,DC=test ,DC=test ", $info);
Mon utilisateur est correctement ajouté mais l'authentification en php ne se fait pas, en gros mon utilisateur n'a pas de mot de passe d'authenfication mais un mot de passe qui doit servir à autre chose, j'ai lu sur le net que $info['userPassword'] permet de créer un mot de passe qui n'est pas utilisable pour l'authenfication, quelqu'un aurait l'attribut exact afin de pouvoir créer ce mot de passe svp.

Par avance merci pour votre aide.