我怎么能返回所有的组成员如果它超过1500,我使用下面的代码 在组中使用execute\u query member属性为空
import pyad.adquery
q = pyad.adquery.ADQuery()
q.execute_query(
attributes = ["CN", "sAMAccountName", "sAMAccountType", "name", "title", "distinguishedName", "mail", "managedBy", "member", "memberOf"][::-1],
where_clause = "{0} = '{1}'".format(query_attribute,query_value),
base_dn = "DC=domain,DC=company,DC=net",
) --> Using execute_query member attribute is empty
result = list(q.get_results())[0]['member'] --> result is None
使用来自中国的pyad只有前1500名用户返回
^{pr2}$
这个限制不是来自pyad,而是AD本身。Active Directory将只从多值属性中为您提供1500行。为了得到剩下的,你必须明确要求更多。在
我没有在Python中尝试过,但是要想获得下一个1500,您应该能够执行以下操作:
试试看是否有效。在
看一下Pyad source code,可能不实际工作(因为
hasattr
检查,在检查属性是否有效时可能不会删除“range”部分)。还有一个an issue logged for this,尚未回复。而且既然是project is no longer maintained,除非你自己动手去修理它,否则它不太可能被修复(这应该和删除hasattr
检查一样容易)。在但如果这真的发生了,你就必须把它放到一个循环中,直到你得到一个错误,这意味着没有更多的结果。我有一个C#here的例子。您可以将循环中的逻辑转换为Python。在
相关问题 更多 >
编程相关推荐