この関数は、機能名から SID の 2 つの配列を構築します。 1 つは NT Authority を持つ配列グループ SID で、もう 1 つは AppAuthority を持つ機能 SID の配列です。
構文
BOOL DeriveCapabilitySidsFromName(
[in] LPCWSTR CapName,
[out] PSID **CapabilityGroupSids,
[out] DWORD *CapabilityGroupSidCount,
[out] PSID **CapabilitySids,
[out] DWORD *CapabilitySidCount
);
パラメーター
[in] CapName
文字列形式の機能の名前。
[out] CapabilityGroupSids
NTAuthority を持つ GroupSids。
[out] CapabilityGroupSidCount
配列内の GroupSid の数。
[out] CapabilitySids
AppAuthority を使用した CapabilitySids。
[out] CapabilitySidCount
AppAuthority を使用した CapabilitySid の数。
戻り値
関数が成功すると、 TRUE が返されます。
関数が失敗すると、 FALSE が返されます。 詳細なエラー情報を得るには、GetLastError を呼び出します。
解説
呼び出し元は、 を呼び出 LocalFreeすことによって、各配列で返される個々の SID と、配列自体に割り当てられたメモリを解放する必要があります。
レガシ機能 (Win10 より前に公開) のアプリケーション機能用に計算された SID は、公開されている SID と同じですが、サービス グループ機能 SID の SID はハッシュ ベースになります。
要件
| 要件 | 値 |
|---|---|
| サポートされている最小のクライアント | Windows XP [デスクトップ アプリ | UWP アプリ] |
| サポートされている最小のサーバー | Windows Server 2003 [デスクトップ アプリのみ | UWP アプリ] |
| 対象プラットフォーム | Windows |
| ヘッダー | securitybaseapi.h (Windows.h を含む) |
| Library | Advapi32.lib |
| [DLL] | Kernel32.dll |