PRIVILEGE_SET 構造体 (wdm.h)
PRIVILEGE_SET構造体は、セキュリティ特権のセットを指定します。 また、オブジェクトへのアクセスを要求するユーザーまたはグループが保持する特権 (存在する場合) を示すためにも使用されます。
構文
typedef struct _PRIVILEGE_SET {
ULONG PrivilegeCount;
ULONG Control;
LUID_AND_ATTRIBUTES Privilege[ANYSIZE_ARRAY];
} PRIVILEGE_SET, *PPRIVILEGE_SET;
メンバー
PrivilegeCount
特権セット内の特権の数。
Control
特権に関連する制御フラグを指定します。 PRIVILEGE_SET_ALL_NECESSARYコントロール フラグは現在定義されています。 これは、指定されたすべての特権が、アクセスを要求するプロセスによって保持される必要があることを示します。 このフラグが設定されていない場合、ユーザーのアクセス トークンに特権が存在すると、アクセスが許可されます。
Privilege[ANYSIZE_ARRAY]
セットの特権を記述 するLUID_AND_ATTRIBUTES 構造体の配列を指定します。 特権には、次の属性が定義されています。
値 | 意味 |
---|---|
SE_PRIVILEGE_ENABLED_BY_DEFAULT | 特権は既定で有効になっています。 |
SE_PRIVILEGE_ENABLED | 特権が有効になっています。 |
SE_PRIVILEGE_USED_FOR_ACCESS | この特権は、オブジェクトまたはサービスにアクセスするために使用されました。 このフラグは、不要な特権を含む可能性があるクライアント アプリケーションによって渡されるセット内の関連する特権を識別するために使用されます。 |
注釈
特権は、随意アクセス制御では通常よりも厳密にオブジェクトまたはサービスへのアクセスを制御するために使用されます。 システム・マネージャーは特権を使用して、システム・リソースを操作できるユーザーを制御します。 アプリケーションは、システム全体のリソースを変更するときに特権を使用します(システム時間の変更やシステムのシャットダウンなど)。
要件
要件 | 値 |
---|---|
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |