[opgelost] User toevoegen in Active Directory
Ik ben bezig met een script om een user toe te voegen in de active directory van een windows 2008 server. Het toevoegen van de user verloopt prima, echter kan ik niet inloggen (autenticatie error). Als ik daarna handmatig het wachtwoord op de server verander, kan ik wel inloggen. Het lijkt er dus op dat hij het wachtwoord niet goed opslaat, want de usernaam klopt wel en alle andere gegevens (voornaam, achternaam etc) ook. Ik zal ff een snippet posten want het hele script is nogal lang en waarschijnlijk overbodig (connecten, binden etc lukt gewoon).
Code (php)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<? //enkel voor de mooie kleurtjes
$adduserAD["givenName"] = $voornaam;
$adduserAD["sn"] = $achternaam;
$adduserAD["cn"] = $naam;
$adduserAD["displayname"] = $naam;
$assuserAD["dn"] = $user;
$adduserAD["samaccountname"] = $user;
$adduserAD["mail"] = $email;
$adduserAD["userPassword"] = $pass;
$adduserAD["objectClass"] = "user";
$adduserAD["UserAccountControl"] = "65536"; // 65536 activated | 65538 unactivated
$adduserAD["UserPrincipalName"] = $user."@area51.aqid.nl";
$adduserAD["homeDrive"] = "Z:";
$adduserAD["homeDirectory"] = "\\aqidsrv01\homes$\\".$user;
$base_dn = "CN=".$naam.",OU=AREA51,DC=area51,DC=aqid,DC=nl";
echo "<p>Je nieuwe account wordt toegevoegd ... </p>";
if(ldap_add($ldapconn, $base_dn, $adduserAD) == true){
echo "<p>Toevoegen voltooid!</p>";
}
?>
$adduserAD["givenName"] = $voornaam;
$adduserAD["sn"] = $achternaam;
$adduserAD["cn"] = $naam;
$adduserAD["displayname"] = $naam;
$assuserAD["dn"] = $user;
$adduserAD["samaccountname"] = $user;
$adduserAD["mail"] = $email;
$adduserAD["userPassword"] = $pass;
$adduserAD["objectClass"] = "user";
$adduserAD["UserAccountControl"] = "65536"; // 65536 activated | 65538 unactivated
$adduserAD["UserPrincipalName"] = $user."@area51.aqid.nl";
$adduserAD["homeDrive"] = "Z:";
$adduserAD["homeDirectory"] = "\\aqidsrv01\homes$\\".$user;
$base_dn = "CN=".$naam.",OU=AREA51,DC=area51,DC=aqid,DC=nl";
echo "<p>Je nieuwe account wordt toegevoegd ... </p>";
if(ldap_add($ldapconn, $base_dn, $adduserAD) == true){
echo "<p>Toevoegen voltooid!</p>";
}
?>
Als variatie heb ik ook deze lijn code geprobeerd (ergens op internet gevonden):
Code (php)
1
2
3
2
3
<? //enkel voor de mooie kleurtjes
$adduserAD["userPassword"] = "{md5}".base64_encode(pack("H*",md5($pass)));
?>
$adduserAD["userPassword"] = "{md5}".base64_encode(pack("H*",md5($pass)));
?>
maar ook dat had geen effect.
Alles werkt, het is echt enkel het password wat verkeerd wordt ingevoerd. Ik vraag me af of het in een speciale encoding of encryptie moet worden gestuurd.
Heeft iemand enig idee hoe ik het password van de user moet opgeven? Alvast bedankt.
Edit: Typo's :S
Gewijzigd op 01/01/1970 01:00:00 door Nik