此函数基于功能名称构造两个 SID 数组。 一个是具有 NT Authority 的数组组 SID,另一个是具有 AppAuthority 的功能 SID 数组。
Syntax
BOOL DeriveCapabilitySidsFromName(
[in] LPCWSTR CapName,
[out] PSID **CapabilityGroupSids,
[out] DWORD *CapabilityGroupSidCount,
[out] PSID **CapabilitySids,
[out] DWORD *CapabilitySidCount
);
参数
[in] CapName
字符串形式的功能的名称。
[out] CapabilityGroupSids
具有 NTAuthority 的 GroupSid。
[out] CapabilityGroupSidCount
数组中的 GroupSids 计数。
[out] CapabilitySids
带 AppAuthority 的 CapabilitySids。
[out] CapabilitySidCount
AppAuthority 的 CapabilitySid 计数。
返回值
如果函数成功,则返回 TRUE。
如果函数失败,则返回 FALSE。 若要获取扩展的错误信息,请调用 GetLastError。
注解
调用方应通过调用 LocalFree释放每个数组中返回的单个 SID,以及为数组本身分配的内存。
为旧功能(在 Win10 之前发布)的应用程序功能计算的 SID 与已发布的 SID 相同,但服务组功能的 SID 将基于哈希。
要求
| Requirement | 价值 |
|---|---|
| 最低支持的客户端 | Windows XP [桌面应用 |UWP 应用] |
| 支持的最低服务器 | Windows Server 2003 [桌面应用 |UWP 应用] |
| 目标平台 | Windows操作系统 |
| 头 | securitybaseapi.h (包括 Windows.h) |
| 库 | OneCoreUAP.lib |
| DLL | KernelBase.dll |