我已经在G Suite中配置了ldap应用,并且已经下载了证书和密钥。我正在尝试通过ldapsearch查询它:
LDAPTLS_CERT="Google_cert.crt" \
LDAPTLS_KEY="Google_cert.key" \
ldapsearch -H ldaps://ldap.google.com:636 -b dc=XXXXX,dc=XXX -x '([email protected])'
我得到的答复是这个:
# extended LDIF
#
# LDAPv3
# base <dc=XXXXX,dc=XXX> with scope subtree
# filter: ([email protected])
# 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
,下一个我需要在该容器中向下搜索?
我在Mac上,而Mac上的ldapsearch
不同。不必使用LDAPTLS_CERT和LDAPTLS_KEY,我必须将证书和密钥文件转换为一个PKCS12格式的文件,并将其导入到MacBook的钥匙串中,然后将LDAPTLS_IDENTITY环境变量与ldapsearch一起使用命令。本页Connect LDAP clients to the Secure LDAP service具有在MacOS上使用ldapsearch的特定说明。
之后,这是找到我的用户的命令:
LDAPTLS_IDENTITY="LDAP Client" ldapsearch -H ldaps://ldap.google.com:636 -b dc=XXXXX,dc=XXX '(uid=first.last)'
希望这可以节省一些时间。