jga*_*fin 10 c# ldap active-directory
我们得到了一个特殊的多值属性.我们称之为ourOwnManagedBy可以包含管理当前组的用户或组(他们的DN).
如何检索特定用户管理的所有组的列表(借助managedBy和ourOwnManagedBy)?
例如.假设用户是GlobalAdministrators组的成员,并且ApplicationAdministrators组具有GlobalAdministrations作为成员.最后是ourOwnManagedBy属性中具有ApplicationAdministrators的组MyApplication .
User 是...的成员 GlobalAdministrators GlobalAdministrators 是...的成员 ApplicationAdministrators MyApplication得到ApplicationAdministrators的ourOwnManagedBy如何使用该信息查找特定用户管理的所有组?是否可以对自定义属性(包含用户和组的DN)进行某种递归检查?
更新
我试过使用这样的目录搜索过滤器:
string.Format("(ourOwnManagedBy:1.2.840.113556.1.4.1941:={0})", dn);
Run Code Online (Sandbox Code Playgroud)
但我可能会错过了什么1.2.840.113556.1.4.1941呢?(MSDN页面)
小智 1
恐怕仅用一个 LDAP 查询是不可能完成这一任务的。您必须将其拆分为子查询并单独运行每个子查询,如果有很多需要迭代的内容,这反过来又会阻塞域控制器。
我尝试按照我所描述的方式进行操作,但性能非常糟糕,至少是使用 .NET 的可用模块进行操作。