带有特殊字符(';+;';)的ldap搜索返回空值
我想按唯一成员属性搜索组中的特定ldap节点。 差不多带有特殊字符(';+;';)的ldap搜索返回空值,ldap,python-ldap,Ldap,Python Ldap,我想按唯一成员属性搜索组中的特定ldap节点。 差不多 search_filter = 'uniqueMember=mail='testuser.+abc@abc.com',ou=people,dc=myorg,dc=com' 当我使用搜索此文件管理器时 conn.search_s(node_dn, ldap.SCOPE_BASE, search_filter, []) 它返回{'info':'','desc':'Bad search filter'} 而类似的搜索不带“+”的搜索过滤器 s
search_filter = 'uniqueMember=mail='testuser.+abc@abc.com',ou=people,dc=myorg,dc=com'
当我使用搜索此文件管理器时
conn.search_s(node_dn, ldap.SCOPE_BASE, search_filter, [])
它返回{'info':'','desc':'Bad search filter'}
而类似的搜索不带“+”的搜索过滤器
search_filter = 'uniqueMember=mail='testuser.abc@abc.com',ou=people,dc=myorg,dc=com'
返回所需的输出
我试过所有可能的方法逃跑。像
a. uniqueMember=mail='testuser.\+abc@abc.com',ou=people,dc=myorg,dc=com
b. uniqueMember=mail='testuser.\\+abc@abc.com',ou=people,dc=myorg,dc=com
c. uniqueMember=mail='testuser.\2Babc@abc.com',ou=people,dc=myorg,dc=com
d. uniqueMember=mail='testuser.\\2Babc@abc.com',ou=people,dc=myorg,dc=com
我尝试了'\2B',因为这是如何在apache directory studio中看到uniqueMember属性的
我正在使用python ldap 2.2.0和port389
在配置port389时是否缺少任何东西。请帮助。加号
+
表示RDN是多值的
另见
+
表示uniqueMember
的值有一个多值RDN,它没有什么特别之处uniqueMember
有DN语法,所以这里也没有什么神秘之处。网页及其引用的所有网页都应包含所需的所有信息。