共用方式為


EXPLICIT_ACCESS_A結構 (accctrl.h)

EXPLICIT_ACCESS 結構會定義指定信任項的訪問控制資訊。 訪問控制功能,例如 SetEntriesInAclGetExplicitEntriesFromAcl,使用此結構來描述 存取控制專案(ACE) 中 訪問控制清單 (ACL) 中的資訊。

語法

typedef struct _EXPLICIT_ACCESS_A {
  DWORD       grfAccessPermissions;
  ACCESS_MODE grfAccessMode;
  DWORD       grfInheritance;
  TRUSTEE_A   Trustee;
} EXPLICIT_ACCESS_A, *PEXPLICIT_ACCESS_A, EXPLICIT_ACCESSA, *PEXPLICIT_ACCESSA;

成員

grfAccessPermissions

一組位旗標,使用 ACCESS_MASK 格式來指定 ACE 允許、拒絕或稽核受託人的訪問許可權。 使用 EXPLICIT_ACCESS 結構的函式不會轉換、解譯或驗證此遮罩中的位。

grfAccessMode

來自 ACCESS_MODE 列舉的值。 對於 選擇性訪問控制清單 (DACL),此旗標會指出 ACL 是否允許或拒絕指定的訪問許可權。 對於 系統訪問控制清單 (SACL),此旗標會指出 ACL 是否產生稽核訊息,以成功嘗試使用指定的訪問許可權,或嘗試失敗,或兩者。 修改現有的 ACL 時,您可以指定REVOKE_ACCESS旗標,以移除指定信任項的任何現有 ACE。

grfInheritance

一組位旗標,決定其他容器或物件是否可以從附加 ACL 的主要物件繼承 ACE。 這個成員的值對應於 AceFlags 成員 ACE_HEADER 結構的繼承部分(低序位元組)。 這個參數可以NO_INHERITANCE,指出 ACE 不可繼承;或它可以是下列值的組合。

價值 意義
CONTAINER_INHERIT_ACE
主要物件所包含的其他容器會繼承 ACE。
INHERIT_NO_PROPAGATE
繼承但不傳播。
INHERIT_ONLY
僅繼承。
INHERIT_ONLY_ACE
ACE 不適用於附加 ACL 的主要物件,但主要物件所包含的物件會繼承 ACE。
NO_INHERITANCE
請勿繼承。
NO_PROPAGATE_INHERIT_ACE
OBJECT_INHERIT_ACE和CONTAINER_INHERIT_ACE旗標不會傳播至繼承的 ACE。
OBJECT_INHERIT_ACE
主要物件所包含的非container 物件會繼承 ACE。
SUB_CONTAINERS_AND_OBJECTS_INHERIT
主要物件所包含的容器和非容器對象都會繼承 ACE。 此旗標對應於CONTAINER_INHERIT_ACE和OBJECT_INHERIT_ACE旗標的組合。
SUB_CONTAINERS_ONLY_INHERIT
主要物件所包含的其他容器會繼承 ACE。 此旗標會對應至CONTAINER_INHERIT_ACE旗標。
SUB_OBJECTS_ONLY_INHERIT
主要物件所包含的非container 物件會繼承 ACE。 此旗標會對應至OBJECT_INHERIT_ACE旗標。

Trustee

信任 結構,可識別 ACE 套用至的使用者、群組或程式(例如 Windows 服務)。

言論

注意

accctrl.h 標頭會將EXPLICIT_ACCESS_定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱函式原型的 慣例。

要求

要求 價值
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
支援的最低伺服器 Windows Server 2003 [僅限傳統型應用程式]
標頭 accctrl.h

另請參閱

ACCESS_MASK

ACCESS_MODE

ACE

ACE_HEADER

ACL

BuildExplicitAccessWithName

BuildSecurityDescriptor

GetExplicitEntriesFromAcl

LookupSecurityDescriptorParts

SetEntriesInAcl

受託人