簡體   English   中英

C#Active Directory DirSync。 是否可以獲取專有名稱屬性?

[英]C# Active Directory DirSync. Is it possible to get distinguished name attribute?

我有一個代碼,可以為我提供在Active Directory中更改的用戶列表。 它使用DirSync控件。 當我選擇獲取屬性的完整列表時,只會收到以下內容:

objectclass: top
objectclass: person
objectclass: organizationalPerson
objectclass: user
whencreated: 20141202165637.0Z
name: gfdgfgfd
objectsid: System.Byte[]
countrycode: 0
primarygroupid: 513
samaccounttype: 805306368
useraccountcontrol: 66048
pwdlastset: 130620129983259471
parentguid: System.Byte[]
codepage: 0
objectcategory: CN=Person,CN=Schema,CN=Configuration,DC=test,DC=com
userprincipalname: gfdgdf@test.com
displayname: gfdgfgfd
accountexpires: 9223372036854775807
ntsecuritydescriptor: System.Byte[]
givenname: gfdgfgfd
instancetype: 4
samaccountname: gfdgdf
objectguid: System.Byte[]

我還需要獲得專有名稱。 可能嗎

這是我的代碼:

string str_dcName = "xxxxxxxx";
System.DirectoryServices.DirectoryEntry rootDSE = new System.DirectoryServices.DirectoryEntry("LDAP://rootDSE");
System.Net.NetworkCredential cr = new System.Net.NetworkCredential(@"User", "Pass", "test.com");
LdapConnection connection = new LdapConnection(str_dcName);
connection.Credential = cr;
connection.Bind();

SearchRequest request = new SearchRequest("DC=test,DC=com", "(|(objectClass=organizationalUnit)(isDeleted=TRUE)(objectClass=user)(objectcategory=person))", SearchScope.Subtree, null);

DirSyncRequestControl dirSyncRC = new DirSyncRequestControl(cookie, DirectorySynchronizationOptions.IncrementalValues, Int32.MaxValue);
request.Controls.Add(dirSyncRC);

bool bMoreData = true;
SearchResponse searchResponse = (SearchResponse)connection.SendRequest(request);

謝謝!

好吧,過了一會兒,我發現我丟失了一些東西。 在SearchResponse中,所有條目都具有:

  • 屬性
  • 控制
  • 專有名稱

因此,專有名稱不在屬性內。

while (bMoreData)
   foreach (SearchResultEntry entry in searchResponse.Entries)
      Console.WriteLine(entry.DistinguishedName);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM