トークン内の特権の変更
プライマリ トークンまたは偽装トークンの特権は、次の 2 つの方法で変更できます。
- AdjustTokenPrivileges 関数を使用して、特権を有効または無効にします。
- CreateRestrictedToken 関数を使用して特権を制限または削除します。
AdjustTokenPrivileges では、トークンに対する特権を追加または削除できません。 現在無効になっている既存の特権のみを有効にするか、現在有効になっている既存の特権を無効にすることができます。 例については、「 C++ での特権の有効化と無効化」を参照してください。
ユーザー アカウントに特権を割り当てるには、「アカウントへの 特権の割り当て」を参照してください。
CreateRestrictedToken には、次のようなより広範な機能があります。
- 特権の削除。 特権を削除することは、無効にした場合と同じではないことに注意してください。 トークンから特権を削除した後は、元に戻すことはできません。
- トークン内の SID に拒否専用属性をアタッチする。 これは、特定のグループまたはアカウントを禁止する効果があります。たとえば、Everyone グループが特定のファイルへのアクセスを削除することを拒否します。 SID の制限の詳細については、「 アクセス トークンの SID 属性」を参照してください。
- トークン内の SID を制限するリストを指定する。 SID の制限については、「 制限付きトークン」を参照してください。