我正在尝试使用这种方法从特定位置 l
检索 LDAP uid。
LDAP_SEARCH_FILTER = '(|(l=Amsterdam)(l=Madrid)(l=Berlin)(l=Munich)(l=Mexico City)(l=Dubai))'
server = ldap3.Server(ldap_server_uri)
with ldap3.Connection(server, auto_bind=True, user=ldap_user, password=ldap_password) as conn:
conn.search(ldap_search_base, search_filter, attributes=ldap3.ALL_ATTRIBUTES)
for entry in conn.entries:
user = {'NAME': entry['uid'][0], 'FULLNAME': entry['cn'][0], 'LOCATION': entry['l'][0]}
然而,每当来自 Mexico City
的 OU 永远不会被检索到。其余的工作得很好。
我尝试从 ALL l
收集 OU,并且它有效。
当我打印 l
时,它打印:Mexico City
LDAP_SEARCH_FILTER = f'(|(l=*))'
我也尝试将 Mexico City
放在双引号中,但这也无济于事
LDAP_SEARCH_FILTER = '(|(l=Amsterdam)(l=Madrid)(l=Berlin)(l=Munich)(l="Mexico City")(l=Dubai))'
我认为它是因为 Mexico City
是两个词,其余的只是一个词,但是我有什么想法可以解决它吗?