LDAP查询

1.查询的命令

-p 指明端口号
-h 指明主机名
-D 指明DN 管理员帐号
-W指明采样手动输入密码的方式
-w 后面加密码,等同于-W 输入密码
-b search base
通常的查询 ldapsearch -p 端口号 -h ldap://主机地址 -D “cn=admin,dc=example,dc=com” -w “管理员密码” -b “搜索的范围,即base(比如dc=example,dc=com)” “(搜索条件,如果不设置,默认搜索base下的所有条目)”

2.查询的过滤条件

1.支持的运算符

OperatorMeaning
=Equality
>=Greater than or equal to (lexicographical)
<=Less than or equal to (lexicographical)
&AND, all conditions must be met
|OR, any of the conditions must be met
!NOT, the clause must evaluate to False

比如查询cn为Jim Smith的 或者 givenName为Jim且sn为Smith的
“(|(cn=Jim Smith)(&(givenName=Jim)(sn=Smith)))”

2.特殊字符

LDAP包含的特殊字符常用的如下,如果搜索条件中有以下特殊字符,可用16进制的表达式进行转义

CharacterHex Representation
*\2A
(\28
)\29
\\5C
Nul\00

比如要搜索cn为"James (Jim) Smith"的条目
条件应写为“(cn=James Jim\2A\29 Smith)"

3.例子

例子
1.LDAP身份验证
ldapsearch -p 389 -h ldap://localhost -D "cn=admin,dc=example,dc=com" -W
在这里插入图片描述

2.搜索所有条目
ldapsearch -p 389 -h ldap://localhost -D "cn=admin,dc=example,dc=com" -W -b "dc=example,dc=com"
3.搜索ou=People的所有条目
ldapsearch -p 389 -h ldap://localhost -D "cn=admin,dc=example,dc=com" -W -b "ou=People,dc=example,dc=com"
4.搜索uid为xxx的条目
ldapsearch -p 389 -h ldap://localhost -D "cn=admin,dc=example,dc=com" -W -b "dc=example,dc=com" "(uid=xxx)"
4.模糊查询uid以xxx开头的条目
ldapsearch -p 389 -h ldap://localhost -D "cn=admin,dc=example,dc=com" -W -b "dc=example,dc=com" "(uid=xxx*)"
待完善…
参考:https://social.technet.microsoft.com/wiki/contents/articles/5392.active-directory-ldap-syntax-filters.aspx?Sort=MostUseful
参考:https://m.linuxidc.com/Linux/2013-08/88841.htm

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值