LDAPサーバがようやくできたので、PHPで接続してみました。
以下プログラム例です。
※「設定」の部分はLDAPサーバの設定に合わせる必要があります。
<?php
//設定
$ldap_host = "localhost"; //LDAPサーバのホスト
$ldap_port = 389; //ポート
$ldap_dc = "dc=ldap-server,dc=com";
$ldap_cn = "Dari"; //cn
$ldap_ou = "Unit"; //ou
$ldap_pass = "password"; // パスワード//接続開始
$ldap_DN = "cn=".$ldap_cn.",ou=".$ldap_ou.",".$ldap_dc;
$ldap_conn = ldap_connect($ldap_host, $ldap_port);if($ldap_conn){
echo "<p>接続成功</p>";$ldap_bind = @ldap_bind($ldap_conn, $ldap_DN,$ldap_pass);
if($ldap_bind){
echo "<p>バインド成功</p>";
$ldap_search = ldap_search($ldap_conn, $ldap_DN,"cn=*");
$get_entries = ldap_get_entries($ldap_conn,$ldap_search);
//エントリ情報出力
print_r($get_entries);
}else{
echo "<p>バインド失敗</p>";
}
ldap_close($ldap_conn);
}else{
echo "<p>接続失敗</p>";
}?>
※上記のプログラムを実行するには、PHPを実行させるサーバに「php-ldap」モジュールが入っていること、そしてLDAPサーバがあることが前提です。
うまくバインドできればエントリ情報が出力されるかと思います。
バインドできたかどうかの判断をさせれば、ユーザ認証にも使用できますね。