CSharp - 如何使用 C# 检索本地计算机 SID?

  显示原文与译文双语对照的内容
0 0

我希望能够检索本地机器的sid像 PSGetSID sysinternals但使用 C# 效用。 这可能吗?

编辑:我正在寻找一个可以为可能或者不属于域成员的计算机工作的解决方案。

时间: 原作者:

0 0

这有很好的helper 类,可以使用 LookupAccountName WIN32 api调用。

获取机器 SID ( 包括主域控制器)

我没有找到使用本机 C#的方法

原作者:
0 0

你可以通过pinvoke完成它,并从 WIN32 API获取它。

http://www.pinvoke.net/default.aspx/advapi32.lookupaccountname

在"纯". NET. 中也可能有一种方法

原作者:
0 0

另外一个来自用户ewall的帖子有一个纯. NET 解决方案,在 C# 和PowerShell中都有示例。 它使用DirectoryEntry和SecurityDescriptor对象。 请参阅:如何使用WMI检索计算机的Windows SID

...