2016-09-30 5 views
1

を使用して、パスワードのユーザーを追加し、私は多くのソリューションを試してみましたが、私が...見つかりませんでした:(は、私は私の問題のために、すべての日を検索LDAP PHP

私はせずに正常に動作。PHPでldap_add使用してユーザーを作成したいですアカウントとパスワードなしを有効にするには、以下のコードを見つける

は、あなたが私を助けることができる、してください

コンフィグ:。。? PHP 5.6 のWindows Server 2012 R2には、ADと

$info["useraccountcontrol"]=544;を使用してアカウントを有効にできますが、アカウントにパスワードが含まれていない場合...パスワードなしでログオンし、最初の接続で新しいパスワードを入力する必要があります。 *

私は$info['userPassword']とパスワードを追加し、512でuseraccountontrolチャンドしようとしましたが、私はこのエラーを取得する:

ldap_add():追加:サーバーはここ

を行うために不本意であることは私ですコード:

<?php 
$name = htmlspecialchars($_POST["name_build"]); 
$lastname = htmlspecialchars($_POST["lastname_build"]); 
$department = utf8_encode(htmlspecialchars($_POST["department_build"])); 
$title = utf8_encode(htmlspecialchars($_POST["title_build"])); 
$dn="CN=$name OU=Users, o=Domocom, c=net"; 

$ds = ldap_connect("192.168.1.1",389); 
if ($ds) { 

    ldap_set_option($ds, LDAP_OPT_PROTOCOL_VERSION, 3); // IMPORTANT 
    ldap_bind($ds, "[email protected]", "password"); 

    // Prépareles données 
    $cn = $info["cn"] = "$lastname $name"; 
    $info["sn"]="$name"; 
    $info["givenname"]="$lastname"; 
    $info["displayname"]="$lastname $name"; 
    $info["name"]="$lastname $name"; 
    $info["userprincipalname"]= "[email protected]"; 
    $info["samaccountname"]= "$lastname.$name"; 
    $info["title"]="$title"; 
    $info["department"]="$department"; 
    $info["mail"]="[email protected]"; 
    $info["postalcode"]="69009"; 
    $info["objectClass"][0]="user"; 
    //$info['userPassword'] = "password"; 
    //$info["useraccountcontrol"]=544; 

    $r = ldap_add($ds,"CN=$cn,OU=Users,OU=Direction,OU=Domocom-SP,DC=domocom,DC=net", $info); 
    ldap_close($ds); 
} else { 
    echo "unable to connect to ldap server"; 
} 
?> 

ありがとうございます。

PS:私の学校のための偽の社会です。 :p

答えて

0

ADの場合は、安全なLDAP接続を使用する必要があります。

そのためにはldap_connect('ldaps://192.168.1.1:<port of the AD>');に電話する必要があります。 2つのパラメータを使用してldap_connectを呼び出すことは推奨されていませんので避けてください。それをLDAP-URIとともに使用してください!

ldap_connectの周りのif…elseを省略することもできます。ほぼすべての場合にtrueを返します。 true戻り値は、実際に確立されたサーバーへの接続を意味するものではありません。最初に接続が必要な最初のldap_コマンドで接続が確立されます。通常はldap_bindです。

そして、あなたはChange AD password using PHPIssue updating AD password using PHPChange AD Password using PHP/COM/ADSI/LDAP

を見てしたい場合があります
関連する問題