搜索PHP
我需要使用LDAP在AD-PHP中进行研究,但每次我都没有成功。
我通过sAMAccountName进行筛选。 当我使用简单名称的用户( 例如:打印机)时,一切正常,但名称不简单时( 例如: paulo.neves)不起作用。
有任何想法吗?
$usuario = "paulo.neves"; $base_dn = "ou=Administradores, dc=tiisa, dc=com, dc=br"; $filter = "(&(objectClass=user)(objectCategory=person)(cn=*)(samaccountname=$usuario))"; if (!($search=@ldap_search($connect, $base_dn, $filter))) { die("Unable to search ldap server"); }
属性值在RFC4511中定义。 在属性值中使用的八位字节由相关属性类型的语法定义。 如果samAccountName
的语法允许使用点( .
)字符而不需要所述字符被转义,则它们不需要被转义。
母语总是可能需要一个角色才能逃脱。
使用ldapsearch
命令行工具验证可以从目录中检索cn
值中带有点的条目
只是为了咧嘴笑,通过使用“ 2e
”而不是“ .
”来查看属性值中的点并看看会发生什么。
可能与您的问题无关,但如果每个条目都具有cn
属性,则不需要在搜索过滤器中使用当前的过滤器组件cn=*
也可以看看
我敢打赌.
必须逃脱。
上一篇: search PHP
下一篇: OpenLDAP how to create and use an objectclass that is a child of inetOrgPerson