LDAP経由でADのごみ箱にアクセスする

LDAP経由でADのごみ箱にアクセスする

Windows 2016サーバーで作業している場合、LDAP経由でごみ箱を照会するにはどうすればよいですか?ごみ箱はアクティブで、AD管理センターによると、昨日削除した2つのOUが現在含まれています。よく知られているオブジェクト、AD はビンの位置を として指定しますcn=Deleted Objects,dc=example,dc=com

ただし、その DN を照会するとobjectClass=*、どちらのエントリも返されません。

# extended LDIF
#
# LDAPv3
# base <CN=Deleted Objects,DC=example,DC=com> with scope subtree
# filter: (objectClass=*)
# requesting: ALL
#

# search result
search: 5
result: 32 No such object
matchedDN: CN=Deleted Objects,DC=example,DC=com
text: 0000208D: NameErr: DSID-03100241, problem 2001 (NO_OBJECT), data 0, best 
 match of:
    'CN=Deleted Objects,DC=example,DC=com'


# numResponses: 1

サーバーに実際に必要なものは何ですか?

編集:この問題をもう少し詳しく調査したところ、MSには特定のLDAPコントロールがあるようですLDAP_SERVER_SHOW_DELETED_OID まさにこのユースケースにぴったりです。しかし、削除されたオブジェクト-e 1.2.840.113556.1.4.417ldap検索呼び出し。

答え1

答えは、AD がごみ箱に何らかのアクセス制御を適用しているということです。管理者チケットを使用すると、突然機能します。

$ kinit [email protected]
$ ldapsearch -v -R EXAMPLE.COM \
    -H ldap://windowsbox.example.com:389 \
    -b 'CN=Deleted Objects,DC=example,DC=com' \
    -E '!1.2.840.113556.1.4.417' \
    -s sub \
    '(objectClass=*)' \
    distinguishedName

# Deleted Objects, example.com
dn: CN=Deleted Objects,DC=example,DC=com
distinguishedName: CN=Deleted Objects,DC=example,DC=com

# Comnisca
DEL:97f85a86-f326-4df1-b747-4bc9002b28c2, Deleted Objects, example.com
dn: CN=Comnisca\0ADEL:97f85a86-f326-4df1-b747-4bc9002b28c2,CN=Deleted Objects,
 DC=example,DC=com
distinguishedName: CN=Comnisca\0ADEL:97f85a86-f326-4df1-b747-4bc9002b28c2,CN=D
 eleted Objects,DC=example,DC=com

リサイクルビンにアクセスできるのはルートのみだなんて、誰が考えたでしょうか?

ごみ箱へのさまざまなアクセス方法を管理する権限については、このドキュメントの「Active Directory ごみ箱操作の委任」セクションに記載されています。 https://docs.microsoft.com/en-us/previous-versions/windows/it-pro/windows-server-2008-R2-and-2008/dd392260%28v%3dws.10%29

関連情報