pal*_*wim 6 .net c# ldap active-directory
我有一个DirectoryEntry代表用户的对象.从DirectoryEntry.Properties集合中,我正在检索"manager"属性,它将为用户的经理提供一个专有名称("DN")值.
我可以DirectoryEntry从这两个对象中检索管理器的对象吗?如果是这样,怎么样?
我想象的东西DirectoryEntry.GetEntryFromDN(dnManager);,但我找不到类似的电话.
为了澄清,DirectoryEntry和DN是我拥有的唯一信息.我不能实例化一个新的DirectoryEntry因为那时我将不得不使用默认目录和凭据或具有目录名称/端口和用户名/密码.
小智 5
DirectoryEntry User = YourPreExistingUser();
string managerDN = User.Properties["manager"][0].ToString();
// Browse up the object hierarchy using DirectoryEntry.Parent looking for the
// domain root (domainDNS) object starting from the existing user.
DirectoryEntry DomainRoot = User;
do
{
DomainRoot = DomainRoot.Parent;
}
while (DomainRoot.SchemaClassName != "domainDNS");
// Use the domain root object we found as the search root for a DirectorySearcher
// and search for the manager's distinguished name.
using (DirectorySearcher Search = new DirectorySearcher())
{
Search.SearchRoot = DomainRoot;
Search.Filter = "(&(distinguishedName=" + managerDN + "))";
SearchResult Result = Search.FindOne();
if (Result != null)
{
DirectoryEntry Manager = Result.GetDirectoryEntry();
}
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
13660 次 |
| 最近记录: |