BuildExplicitAccessWithNameA 函式 (aclapi.h)

BuildExplicitAccessWithName 函式會使用呼叫端所指定的數據,初始化EXPLICIT_ACCESS結構。 信任項是由名稱字串識別。

語法

void BuildExplicitAccessWithNameA(
  [in, out]      PEXPLICIT_ACCESS_A pExplicitAccess,
  [in, optional] LPSTR              pTrusteeName,
  [in]           DWORD              AccessPermissions,
  [in]           ACCESS_MODE        AccessMode,
  [in]           DWORD              Inheritance
);

參數

[in, out] pExplicitAccess

要初始化 之EXPLICIT_ACCESS 結構的指標。 BuildExplicitAccessWithName 函式不會配置任何記憶體。 此參數不可為 NULL

[in, optional] pTrusteeName

NULL 終止字串的指標,其中包含 TRUSTEE 結構之 ptstrName 成員的信任項名稱。 BuildExplicitAccessWithName 函式會設定 TRUSTEE 結構的其他成員,如下所示。

意義
pMultipleTrustee
NULL
MultipleTrusteeOperation
NO_MULTIPLE_TRUSTEE
TrusteeForm
TRUSTEE_IS_NAME
TrusteeType
TRUSTEE_IS_UNKNOWN

[in] AccessPermissions

指定 EXPLICIT_ACCESS 結構之 grfAccessPermissions 成員的存取遮罩。 遮罩是一組位旗標,使用 ACCESS_MASK 格式來指定 ACE 允許、拒絕或稽核信任者的訪問許可權。 使用 EXPLICIT_ACCESS 結構的函式不會轉換、解譯或驗證此遮罩中的位。

[in] AccessMode

指定 EXPLICIT_ACCESS 結構之 grfAccessMode 成員的存取模式。 存取模式指出 訪問控制專案 (ACE) 允許、拒絕或稽核指定的許可權。 如需 DACL) 的任意存取控制清單 (,此參數可以是 ACCESS_MODE 列舉中的其中一個值。 對於 系統訪問控制清單 (SACL) ,此參數可以是 ACCESS_MODE 值的組合。

[in] Inheritance

指定 EXPLICIT_ACCESS 結構之 grfInheritance 成員的繼承類型。 這個值是一組位旗標,可判斷其他容器或物件是否可以從 附加 ACL 的主要物件繼承 ACE。 這個成員的值會對應至ACE_HEADER 結構之 AceFlags 成員 (低序位元組) 的繼承部分。 這個參數可以NO_INHERITANCE來表示 ACE 不可繼承,或者它可以是下列值的組合。

意義
CONTAINER_INHERIT_ACE
主要物件所包含的其他容器會繼承 ACE。
INHERIT_ONLY_ACE
ACE 不適用於附加 ACL 的主要物件,但主要物件所包含的物件會繼承 ACE。
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_ACEINHERIT_ONLY_ACE 旗標的組合。
SUB_OBJECTS_ONLY_INHERIT
主要物件所包含的非container 物件會繼承 ACE。 此旗標會對應至 OBJECT_INHERIT_ACEINHERIT_ONLY_ACE 旗標的組合。

傳回值

備註

注意

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

規格需求

需求
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 aclapi.h
程式庫 Advapi32.lib
Dll Advapi32.dll

另請參閱

Ace

ACL

存取控制 概觀

基本 存取控制 函式

EXPLICIT_ACCESS

GetExplicitEntriesFromAcl

SetEntriesInAcl

受託 人