web-dev-qa-db-ja.com

ldap / ADプロキシ:sAMAccountNameを使用してバインドできませんが、姓と名はバインドできます

Debian WheezyでLDAPを使用して、ActiveDirectoryへのパススループロキシを設定しようとしています。 slapd.confファイルは以下のとおりです。姓、名を使用して検索をバインドできます。

ldapsearch -x -h localhost -b "OU=Site-Users,DC=mycompany,DC=local" -D "cn=LaCroix\, Jay,OU=My Group,OU=Site-Users,DC=mycompany,DC=local" -W "(sAMAccountName=jlacroix)" cn sAMAccountName

そしてそれはうまくいきます:

result: 0 Success

しかし、私たちが本当にやりたいのは、ユーザー名(sAMAccountName)を介してバインドすることです。

ldapsearch -x -h localhost -b "OU=Site-Users,DC=mycompany,DC=local" -D "cn=jlacroix,OU=My Group,OU=Site-Users,DC=mycompany,DC=local" -W "(sAMAccountName=jlacroix)" cn sAMAccountName

そしてそれは動作しません:

ldap_bind: Invalid credentials (49)
additional info: 80090308: LdapErr: DSID-0C0903A9, comment: AcceptSecurityContext error, data 52e, v1db1

注:そのエラーにもかかわらず、バインディングが姓、名を介して機能する最初の例に見られるように、私の資格情報は正しいです。

私はここ数週間例を検索してきましたが、何を試しても、sAMAccountNameにバインドできず、姓、名のみにバインドされているようです。

ADを直接検索する場合はsAMAccountNameを検索できますが、LDAPプロキシを使用する場合は検索できません。

これが私の/etc/ldap/slapd.confです:

# Import our schema
include         /etc/ldap/schema/core.schema
include         /etc/ldap/schema/cosine.schema
include         /etc/ldap/schema/inetorgperson.schema
include         /etc/ldap/schema/nis.schema
include         /etc/ldap/schema/samaccountname.schema

moduleload      back_ldap
moduleload      back_bdb.la
moduleload      rwm 

# Support both LDAPv2 and LDAPv3
allow           bind_v2

pidfile         /var/run/slapd/slapd.pid
argsfile        /var/run/slapd/slapd.args

loglevel        1   

# Our slapd-ldap back end to connect to AD

database        ldap
suffix          ou=Site-Users,dc=mycompany,dc=local
subordinate
rebind-as-user  yes 
uri             ldap://10.10.10.99:389
chase-referrals yes 
readonly        yes 
#protocol-version       3   

overlay         rwm 
rwm-map         attribute       uid     sAMAccountName
rwm-map         attribute       mail    proxyAddresses 

binddn cn=ADreader 
bindpw supersecretpassword

# Our primary back end 

database        bdb 
suffix          dc=mycompany,dc=local
rootdn          cn=admin,dc=mycompany,dc=local
rootpw          supersecretpassword 
directory       /var/lib/ldap

# Indexes for this back end 
index           objectClass                     eq,pres
index           ou,cn,mail,surname,givenname    eq,pres,sub
index           uid                             eq,pres,sub
3
Jay LaCroix

オブジェクトのDNがcn=LaCroix\, Jay,OU=My Group,OU=Site-Users,DC=mycompany,DC=localであるため、「機能する」例が機能します。オブジェクトのDNがcn=jlacroix,OU=My Group,OU=Site-Users,DC=mycompany,DC=localではないため、2番目は機能しません。

「姓、名」にバインドしているのではなく、オブジェクトのCNを「姓、名」に設定して、オブジェクトのCNにバインドしています。 sAMAccountNameをCNとして入れて、それが機能することを期待することはできません。オブジェクトのCNはオブジェクトのCNです。

「DOMAIN\sAMAccountName」のバインドDNを使用してADに直接バインドすると、正常に機能します。 OpenLDAPがそれを処理するとは思わない。 Active Directoryの観点からは正常に機能しますが、おそらくその構文は拒否されます。

4
Evan Anderson