G Suite LDAP Поиск с помощью ldapsearch - PullRequest
0 голосов
/ 10 октября 2019

Я настроил приложение ldap в G Suite и загрузил сертификат и ключ. Я пытаюсь запросить его через ldapsearch:

LDAPTLS_CERT="Google_cert.crt" \
LDAPTLS_KEY="Google_cert.key" \
ldapsearch -H ldaps://ldap.google.com:636 -b dc=XXXXX,dc=XXX -x '(mail=first.last@XXXXX.XXX)'

Ответ, который я получаю, таков:

# extended LDIF
#
# LDAPv3
# base <dc=XXXXX,dc=XXX> with scope subtree
# filter: (mail=first.last@XXXXX.XXX)
# requesting: ALL
#

# search result
search: 2
result: 0 Success

# numResponses: 1

Я не уверен, как интерпретировать ответ. Он выполнил поиск и ничего не нашел? Что означают search, result и numResponses?

Я бы ожидал больше информации, так как я ищу себя, поэтому я знаю, что я там. Мой запрос испорчен?

РЕДАКТИРОВАТЬ На основании комментариев я изменил свой запрос на *:

LDAPTLS_CERT="Google_cert.crt" \
LDAPTLS_KEY="Google_cert.key" \
ldapsearch -H ldaps://ldap.google.com:636 -b dc=XXXXX,dc=XXX -x '*'

и получил это:

# extended LDIF
#
# LDAPv3
# base <dc=XXXXX,dc=XXX> with scope subtree
# filter: (objectclass=*)
# requesting: *
#

# XXXXX.XXX
dn: dc=XXXXX,dc=XXX
objectClass: top
objectClass: domain
objectClass: dcObject
dc: XXXXX

# Groups, XXXXX.XXX
dn: ou=Groups,dc=XXXXX,dc=XXX
objectClass: top
objectClass: organizationalUnit
ou: Groups

# search result
search: 2
result: 0 Success

# numResponses: 3
# numEntries: 2

Означает ли это, что единственным контейнером следующего уровня является Groups, и что в следующем я должен искать в этом ou?

1 Ответ

0 голосов
/ 10 октября 2019

Я на Mac, а ldapsearch на Mac отличается. Вместо использования LDAPTLS_CERT & LDAPTLS_KEY мне пришлось преобразовать файлы сертификатов и ключей в один файл в формате PKCS12 и импортировать их в цепочку для ключей моего MacBook, а затем использовать LDAPTLS_IDENTITY переменная окружения с помощью команды ldapsearch. Эта страница Подключение клиентов LDAP к службе Secure LDAP содержит специальные инструкции по использованию ldapsearch в MacOS.

После этого эта команда нашла моего пользователя:

LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=XXXXX,dc=XXX '(uid=first.last)'

Надеюсь, это спасет кого-то еще.

...