0

Zend プロジェクトの 1 つに LDAP 認証を統合しようとしています。

Windows 7 で ApacheDS と Windows ldap を使用してみました。両方の LDAP サーバーに接続できますが、認証が成功しません。

私の開発環境は次のとおりです。

  • ウィンドウズ7
  • IIS サーバー
  • PHP & MSSQL
  • ApacheDS または Windows LDAP

ApachDS を使用しているときに、次のエラーが発生します。

object(Zend_Auth_Result)#122 (3) {
  ["_identity":protected] => string(9) "mshakeel1"
  ["_messages":protected] => array(4) {
    [0] => string(28) "Account not found: mshakeel1"
    [1] => string(71) "0x20: No object found for: (&(objectClass=posixAccount)(uid=mshakeel1))"
    [2] => string(188) "host=localhost,accountDomainName=foo.net,accountDomainNameShort=FOO,accountCanonicalForm=3,username=uid=admin,ou=system,password=*****,baseDn=ou=users,ou=system,bindRequiresDn=1,port=10389"
    [3] => string(104) "mshakeel1 authentication failed: 0x20: No object found for: (&(objectClass=posixAccount)(uid=mshakeel1))"
  }
}

私のapplication.iniは、ApacheDSの場合は次のとおりです。

ldap.server.host = localhost
ldap.server.accountDomainName = foo.net
ldap.server.accountDomainNameShort = FOO
ldap.server.accountCanonicalForm = 3
ldap.server.username = "uid=admin,ou=system"
ldap.server.password = 'secret'
ldap.server.baseDn = "ou=users,ou=system"
ldap.server.bindRequiresDn = true
ldap.server.port = 10389

Windows LDAP を使用すると、次のエラーが発生します。

object(Zend_Auth_Result)#122 (3) {
  ["_code":protected] => int(-3)
  ["_identity":protected] => string(9) "mshakeel1"
  ["_messages":protected] => array(4) {
    [0] => string(19) "Invalid credentials"
    [1] => string(129) "0x31 (Invalid credentials; 8009030C: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 2030, v1db0): W\mshakeel1"
    [2] => string(139) "host=ABC-PC-SH,useStartTls=,accountDomainName=w.net,accountDomainNameShort=W,accountCanonicalForm=3,baseDn=CN=Employees,DC=ABC,DC=SHGroup"
    [3] => string(162) "mshakeel1 authentication failed: 0x31 (Invalid credentials; 8009030C: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 2030, v1db0): W\mshakeel1"
  }

Windows LDAP の場合、私の application.ini は次のとおりです。

ldap.server.host = ABC-PC-SH
ldap.server.useStartTls = false
ldap.server.accountDomainName = w.net
ldap.server.accountDomainNameShort = W
ldap.server.accountCanonicalForm = 3
ldap.server.baseDn = "CN=Employees,DC=ABC,DC=SHGroup"

誰でもこれを修正するためのヒントを教えてもらえますか? ありがとう。

編集:いくつかの情報を追加すると思った..以下に示すように私のApacheDS構造。

ここに画像の説明を入力

そして、私のWindows軽量ADサービスは以下のとおりです。

ここに画像の説明を入力

4

1 に答える 1