ACCESS_DENIED_ACE構造体 (winnt.h)

ACCESS_DENIED_ACE構造体は、オブジェクトへのアクセスを制御する随意アクセス制御リスト (DACL) のアクセス制御エントリ (ACE) を定義します。 アクセス拒否 ACE は、セキュリティ識別子 (SID) によって識別される特定のトラスティのオブジェクトへのアクセスを拒否します。

構文

typedef struct _ACCESS_DENIED_ACE {
  ACE_HEADER  Header;
  ACCESS_MASK Mask;
  DWORD       SidStart;
} ACCESS_DENIED_ACE;

メンバー

Header

ACE サイズと型を指定するACE_HEADER構造体。 また、子オブジェクトによる ACE の継承を制御するフラグも含まれています。 ACE_HEADER構造体の AceType メンバーをACCESS_DENIED_ACE_TYPEに設定し、AceSize メンバーをACCESS_DENIED_ACE構造体に割り当てられたバイトの合計数に設定する必要があります。

Mask

この ACE によって明示的に拒否されるアクセス権を指定する ACCESS_MASK 構造体。

SidStart

トラスティの SID の最初の DWORD 。 SID の残りのバイトは、 SidStart メンバーの後の連続したメモリに格納されます。 この SID は、アプリケーション データと共に追加できます。

注釈

ACE 構造体は DWORD 境界に配置する必要があります。 すべての Windows メモリ管理機能は 、DWORD で配置されたハンドルをメモリに返します。

Mask メンバーによって指定されたアクセス権は、SidStart メンバーに格納されている SID と一致する有効な SID を持つトラスティに対して拒否されます。

ACCESS_DENIED_ACE構造体は、AddAccessDeniedAce 関数または AddAccessDeniedAceEx 関数の呼び出しによって、アクセス制御リスト (ACL) 作成できます。 これらの関数を使用すると、トラスティの SID に対応するために必要な正しい量のメモリが割り当てられ、 Header.AceType メンバーと Header.AceSize メンバーの値が自動的に設定されます。 AddAccessDeniedAceEx 関数を使用すると、Header.AceFlags メンバーも設定されます。 ACL の外部にACCESS_DENIED_ACE構造体を作成する場合は、SidStart メンバー内のトラスティの完全な SID とそれに続く連続したメモリに対応するために十分なメモリを割り当てる必要があります。また、Header.AceType、Header.AceFlagsHeader.AceSize メンバーの値は、アプリケーションによって明示的に設定する必要があります。

要件

要件
サポートされている最小のクライアント Windows XP (デスクトップ アプリのみ)
サポートされている最小のサーバー Windows Server 2003 (デスクトップ アプリのみ)
Header winnt.h (Windows.h を含む)

こちらもご覧ください

エース

ACL

AddAccessDeniedAce

SID