【发布时间】:2015-07-27 11:24:23
【问题描述】:
我正在尝试使用 C++ 在 Windows 上获取计算机的主域 SID。我已经设法使用LsaQueryInformationPolicy 和PolicyPrimaryDomainInformationparameter 来做到这一点。我已经为此操作打开了 LSA 政策:
auto lsaStatus = LsaOpenPolicy(Server, &ObjectAttributes, GENERIC_READ | POLICY_VIEW_LOCAL_INFORMATION, &PolicyHandle);
不幸的是,使用LSAOpenPolicy 需要管理员权限才能运行,而对于我正在处理的项目,它不能,因为大多数用户不会拥有它。我的问题是 - 有什么方法可以在不调用管理员权限的情况下获取当前计算机的主域 SID?如果有,我应该如何使用 Visual C++/MFC 来做到这一点?
【问题讨论】:
-
也许 GetComputerObjectName 后跟 LookupAccountName 和 GetWindowsAccountDomainSid?
标签: c++ windows visual-c++ dns sid