6

Если в моем каталоге несколько ветвей, например, dc = me, dc = org; DC = вы, dc = орг; dc = them, dc = org) как я могу запросить каталог, чтобы получить список доступных базовых DN? Это вопрос прав доступа, или я должен дать аргумент ldapsearch? По сути, я хочу запрос ldapsearch, который вернет список DN, которые я затем смогу использовать в качестве аргумента -b для ldapsearch

1 ответ1

9

Многие серверы предоставляют такие параметры как атрибуты "корневой" (нулевой) записи. В частности, вы ищете атрибут namingContexts . (Некоторые серверы также имеют defaultNamingContext и / или configContext .) Обратите внимание, что вы должны использовать "базу" в качестве области поиска; если используется "sub" по умолчанию, большинство серверов возвращают пустую корневую запись.

Кроме того, по крайней мере в OpenLDAP, это операционные атрибуты, которые должны быть явно запрошены по имени или по шаблону + . (Samba 4, с другой стороны, считает их нормальными атрибутами, соответствующими * . Лучше всего использовать конкретные имена.)

^ ldapsearch -b "" -s base \* +
SASL/EXTERNAL authentication started
SASL username: gidNumber=25000+uidNumber=25193,cn=peercred,cn=external,cn=auth
SASL SSF: 0
# extended LDIF
#
# LDAPv3
# base <> with scope baseObject
# filter: (objectclass=*)
# requesting: * +
#

#
dn:
structuralObjectClass: OpenLDAProotDSE
configContext: cn=config
namingContexts: dc=cluenet,dc=org
namingContexts: dc=nullroute,dc=eu,dc=org
supportedControl: 1.3.6.1.4.1.4203.1.9.1.1
supportedControl: 2.16.840.1.113730.3.4.18
supportedControl: 2.16.840.1.113730.3.4.2
...
supportedFeatures: 1.3.6.1.4.1.4203.1.5.4
supportedFeatures: 1.3.6.1.4.1.4203.1.5.5
supportedLDAPVersion: 3
supportedSASLMechanisms: GSSAPI
supportedSASLMechanisms: PLAIN
supportedSASLMechanisms: EXTERNAL
entryDN:
subschemaSubentry: cn=Subschema

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .