次のコードを使用して、ドメインの既定の Users グループのメンバーであるすべてのユーザーを認証できます。たとえば、次のように CN=test というユーザーを作成しました。
CN=テスト、CN=ユーザー、DC=会社、DC=lcl
動作するコードは..
$ldap_resource = ldap_connect( 'company-dc' );
ldap_set_option($ldap_resource, LDAP_OPT_PROTOCOL_VERSION, 3);
ldap_set_option($ldap_resource, LDAP_OPT_REFERRALS, 0);
if( $bind = ldap_bind( $ldap_resource, 'domain\\test', '*******' ) ) {
die('connected');
}
else {
die('No connection');
}
OU=Office Users,OU=Company,DC=company,DC=lcl 内でユーザーを認証しようとすると、Unable to bind to server: Invalid credentialsというエラーで失敗します。複数のユーザーでユーザーとパスワードが正しいことを確認しました。
上記とまったく同じコードを使用しています。唯一の違いはユーザー名とパスワードで、ドメインは同じです。
認証できる場所:
会社.lcl
-- ユーザー
で認証できません:
会社.lcl
- 会社
----オフィスユーザー