【发布时间】:2018-05-07 22:54:48
【问题描述】:
Powershell 中的以下代码为我获取 DC 的 ntdsaGUID(用于 repadmin)
Get-ADDomainController -filter * | Select-Object -Property Name, IPv4Address, @{n='DsaGuid'; e={(Get-ADObject $_.NTDSSettingsObjectDN).ObjectGUID}}
我很难在 C# 中生成等效项。
DomainController(源自:domain.DomainControllers)上有一个名为 NtdsaObjectGuid 的私有成员,但我不知道我是否能做到这一点,即使 VS 可以。
在 C# 中获取 DC 的 DSA GUID 是否有受支持的方法?
谢谢!
【问题讨论】:
-
我不明白你的问题。您想如何使用 C# 获取这些数据?您想参考 System.Management.Automation 并运行您的 PS 单线吗?还是您想使用 System.DirectoryServices 命名空间?请注意,对 System.DirectoryServices.ActiveDirectory.DomainController 类使用 FindAll() 方法应该可以为您提供大部分信息(或者只需查找特定域控制器的 directoryEntry 并检索所需的属性)。
-
我想在 C# 中执行此操作。我可以得到所有的DC没问题。我只是无法在 C# 中看到它的 DSA GUID。当我有一个 DC 并在 VS 中检查它时,我可以看到非公共成员有“NtdsaObjectGuid”这就是我想要的,但由于它似乎是非公共的,我不知道如何......
标签: c# powershell active-directory