我试图通过LDAP查询Active directory以列出组,但我得到的信息比我需要的多。如何解析结果以仅获取所有组名。例如:LOCAL_java_read
和其他部分,而不是结果的其余部分。你知道吗
from ldap3 import Server, Connection, ALL
server = Server('xxx', port=389, get_info=ALL)
conn = Connection(server, 'username', 'password', auto_bind=True, raise_exceptions=True)
conn.search('OU=Groups,OU=CH,DC=google,DC=com', '(objectclass=group)')
groups=conn.entries
print (groups)
结果:
[DN: CN=LOCAL_java_read,OU=Groups,OU=CH,DC=google,DC=com - STATUS: Read - READ TIME: 2019-03-27T14:22:08.072330
, DN: CN=LOCAL_python_read,OU=Groups,OU=CH,DC=google,DC=com - STATUS: Read - READ TIME: 2019-03-27T14:22:08.072330
, DN: CN=LOCAL_php_read,OU=Groups,OU=CH,DC=google,DC=com - STATUS: Read - READ TIME: 2019-03-27T14:22:08.072330]
我不确定activedirectory如何构造它的属性,但我相信您可以使用通配符
*
通过更改搜索来获取组。你知道吗Microsoft's site包含有关LDAP搜索筛选器的信息,这些筛选器很可能与AD相关
您可以使用regex从各个组条目中提取组名:
尽管我认为@Nathan McCoy的答案最终可能会带来一个更干净更好的解决方案。你知道吗
相关问题 更多 >
编程相关推荐