0
我想從域中檢索所有DC,並且還想知道它們是否可讀或可寫。爲什麼屬性「primaryGroupID」缺少域控制器
要知道,如果DC是可讀與否,我需要閱讀的DC屬性primaryGroupID值。在下面的代碼嘗試相同的。
代碼片段 -
var currDomain = Domain.GetCurrentDomain();
foreach (DomainController dc in currDomain.DomainControllers)
{
var dcName = dc.Name;
var de = dc.GetDirectoryEntry(); // DirectoryEntry represent DC
// Loads the values of the specified properties into the property cache.
de.RefreshCache(new[] {"primaryGroupID"});
if (de.Properties.Contains("primaryGroupID"))
{
int primaryGroupID;
var strPrimaryGroupID = Convert.ToString(de.Properties["primaryGroupID"][0]);
if (int.TryParse(strPrimaryGroupID, out primaryGroupID))
{
// RID for the "Read-only Domain Controllers" built-in group in Active Directory
// Writable Domain Controllers have primaryGroupID set to 516 (the "Domain Controllers" group).
dcName = string.Format(primaryGroupID == 521 ? "{0} (Read only)" : "{0} (Writable)", dc.Name);
}
}
}
但是仍然屬性顯示不出來。我已經從AD確認了DC的相應屬性。
,顯示了默認屬性顯示在下面的屏幕截圖 -
你有,爲什麼物業primaryGroupID缺少任何線索?
@HansPassant你可以請你分享一下如何爲代碼片段中的** de **對象分享我的共享嗎? –
從dc.GetDirectoryEntry()獲取的DirectoryEntry的objectClass是什麼? primaryGroupID屬性可能對該類型的對象無效。 –
我只是自己試了一下。它返回一個「服務器」對象。 primaryGroupID屬性對服務器對象無效。 –