説明
int
ldap_compare
( int link_identifier, string dn, string attribute, string value)
value
がマッチする場合に
TRUE
、その他の場合 に
FALSE
、エラーの場合に-1を返します。
ldap_compare()
は、属性
attribute
の値
value
を
dn
で指定したLDAPディレクトリエントリの同 じ属性の値と比較するために使用します。
次の例は、指定したパスワードがDNの指定したエントリで定義されたも
のと一致するかどうかをチェックする方法を示しています。
例 1パスワード確認の例
?php
$ds=ldap_connect("localhost"); // LDAPサーバーが同一ホストであると仮定
if ($ds) {
// バインド
if(ldap_bind($ds)) {
// データを準備
$dn = "cn=Matti Meikku, ou=My Unit, o=My Company, c=FI";
$value = "secretpassword";
$attr = "password";
// 値を比較
$r=ldap_compare($ds, $dn, $attr, $value);
if ($r === -1) {
echo "Error: ".ldap_error($ds);
} elseif ($r === TRUE) {
echo "Password correct.";
} elseif ($r === FALSE) {
echo "Wrong guess! Password incorrect.";
}
} else {
echo "Unable to bind to LDAP server.";
}
ldap_close($ds);
} else {
echo "Unable to connect to LDAP server.";
}
?
|
|
注意
ldap_compare()
はBINARY値を比較することはでき ません!