标签: directorysearcher

如何根据姓氏和名字在Active Directory中搜索用户?

我正在尝试使用.NET中的姓氏(sn)和名字(givenName)来搜索AD中的用户DirectorySearcher.

我可以找到一个基于sAMAccountname此代码的用户:

 DirectorySearcher searcher1 = new DirectorySearcher(entry);
 searcher1.Filter = string.Format("(&(objectCategory=person)(objectClass=user)(SAMAccountname={0}))",aLogin);

 SearchResult results1;
 results1 = searcher1.FindOne();
Run Code Online (Sandbox Code Playgroud)

但是,当我试图做到这一点的givenNamesn:

DirectorySearcher searcher1 = new DirectorySearcher(entry);
searcher1.Filter = string.Format("(&(objectCategory=person)(objectClass=user)(givenname={0})(sn={1})", aName, aSName);

SearchResultCollection results1;
results1 = searcher1.FindAll();
Run Code Online (Sandbox Code Playgroud)

它不起作用; 消息显示"无效过滤器"; 我可以不根据givenName和过滤sn吗?

我怎样才能做到这一点?

c# active-directory directorysearcher

18
推荐指数
2
解决办法
4万
查看次数

如何找到计算机所属的组织单位?(Active Directory C#)

我想在C#中找到我的计算机所属的最具体的OU.我有代码可以获得我需要的信息,但它感觉不健壮,需要复杂的解析.还有更好的选择吗?思考?任何帮助表示赞赏!

真的我想要的是命令提示符命令的等效:

dsquery computer -name COMP-HERE
Run Code Online (Sandbox Code Playgroud)

但我需要在C#中使用它,这被证明是有问题的.

DirectorySearcher d = new DirectorySearcher("CN=COMP-HERE");
d.PropertiesToLoad.Add("adspath");
SearchResultCollection results = d.FindAll();
foreach (SearchResult searchResult in results) {
    foreach (string propertyKey in searchResult.Properties.PropertyNames) {
        ResultPropertyValueCollection valueCollection = searchResult.Properties[propertyKey];
        foreach (Object propertyValue in valueCollection) {
            Console.WriteLine(
            "{0}:{1}",
            propertyKey,
            propertyValue.ToString());
        }
    }
}
Console.ReadLine();
Run Code Online (Sandbox Code Playgroud)

c# active-directory ou directorysearcher

6
推荐指数
1
解决办法
1万
查看次数

通过DirectoryEntry还是DirectorySearcher指定Active Directory域控制器?

我想使用以下方法搜索AD时可以指定域控制器:

$principalContext  = New-Object 'System.DirectoryServices.AccountManagement.PrincipalContext'([System.DirectoryServices.AccountManagement.ContextType]::Domain, $DomainControllerIpAddress, $Container)
Run Code Online (Sandbox Code Playgroud)

如何使用DirectoryEntry或指定域控制器DirectorySearcher

powershell active-directory domaincontroller directorysearcher

3
推荐指数
1
解决办法
2862
查看次数

Active Directory:无法使用 DirectorySearcher 联系服务器

我不断收到错误无法联系服务器。当我尝试运行我的代码时:

我已经搜索了几个小时,但仍然无法联系服务器。

DirectorySearcher directorySearcher = new DirectorySearcher();
string path = directorySearcher.SearchRoot.Path;
DirectoryEntry directoryEntry = new DirectoryEntry(path);

PrincipalContext pricipalContext = new PrincipalContext(ContextType.Domain, "LDAP://domain.dk/DC=domain,DC=dk");
//GroupPrincipal group = GroupPrincipal.FindByIdentity(pricipalContext, "(CN=" + department + ")");
GroupPrincipal group = GroupPrincipal.FindByIdentity(pricipalContext, "(CN=" + department + ")");


if (group != null)
{
    foreach (Principal principal in group.Members)
    {
        UserPrincipal tu = principal as UserPrincipal;

        DirectoryEntry de = tu.GetUnderlyingObject() as DirectoryEntry;
        var store = de.InvokeGet("physicalDeliveryOfficeName").ToString();
        var storeNumber = de.InvokeGet("description").ToString();

        employees.Add(new AdEmployees() { name = principal.Name, phone …
Run Code Online (Sandbox Code Playgroud)

c# ldap active-directory windows-authentication directorysearcher

2
推荐指数
1
解决办法
7118
查看次数