LookupSecurityDescriptorPartsA 函式 (aclapi.h)
LookupSecurityDescriptorParts 函式會從自我相對安全性描述元擷取安全性資訊。
語法
DWORD LookupSecurityDescriptorPartsA(
[out, optional] PTRUSTEE_A *ppOwner,
[out, optional] PTRUSTEE_A *ppGroup,
[out, optional] PULONG pcCountOfAccessEntries,
[out, optional] PEXPLICIT_ACCESS_A *ppListOfAccessEntries,
[out, optional] PULONG pcCountOfAuditEntries,
[out, optional] PEXPLICIT_ACCESS_A *ppListOfAuditEntries,
[in] PSECURITY_DESCRIPTOR pSD
);
參數
[out, optional] ppOwner
變數的指標,可接收 對 TRUSTEE 結構的指標。 函式會在 pSD 安全性描述元中查閱與擁有者安全性標識符相關聯的名稱, (SID) ,並傳回在 TRUSTEE 結構的 ptstrName 成員中名稱的指標。 函式會將 TrusteeForm 成員設定為 TRUSTEE_IS_NAME。
如果您對擁有者的名稱不感興趣,此參數可以是 NULL 。
[out, optional] ppGroup
變數的指標,可接收 對 TRUSTEE 結構的指標。 此函式會查閱與安全描述元之主要群組 SID 相關聯的名稱,並傳回在 TRUSTEE 結構之 ptstrName 成員中名稱的指標。 函式會將 TrusteeForm 成員設定為 TRUSTEE_IS_NAME。
如果您對組名不感興趣,這個參數可以是 NULL 。
[out, optional] pcCountOfAccessEntries
ULONG 的指標,接收 pListOfAccessEntries 陣列中傳回的EXPLICIT_ACCESS結構數目。 只有當pListOfAccessEntries 參數也是 NULL 時,此參數才能是 NULL。
[out, optional] ppListOfAccessEntries
變數的指標,該變數會接收EXPLICIT_ACCESS結構的指標,該陣列描述安全性描述元 (DACL) 之選擇性存取控制清單中的存取控制專案 (ACE) 。 這些EXPLICIT_ACCESS結構中的TRUSTEE結構會使用TRUSTEE_IS_NAME形式。 如需 EXPLICIT_ACCESS 結構的數位如何描述 訪問控制清單中的 ACE (ACL) ,請參閱 GetExplicitEntriesFromAcl 函式。 如果此參數為 NULL,cCountOfAccessEntries 參數也必須是 NULL。
[out, optional] pcCountOfAuditEntries
ULONG 的指標,可接收 pListOfAuditEntries 陣列中傳回的EXPLICIT_ACCESS結構數目。 只有當pListOfAuditEntries 參數也是 NULL 時,此參數才能是 NULL。
[out, optional] ppListOfAuditEntries
變數的指標,接收 EXPLICIT_ACCESS 結構數位的指標,這些結構描述 系統訪問控制清單中的 ACE (SACL) 安全性描述元。 這些EXPLICIT_ACCESS結構中的TRUSTEE結構會使用TRUSTEE_IS_NAME形式。 如果此參數為 NULL,cCountOfAuditEntries 參數也必須是 NULL。
[in] pSD
函式從中擷取安全性資訊的現有 自我相對安全性描述元 指標。
傳回值
如果函式成功,函式會傳回ERROR_SUCCESS。
如果函式失敗,它會傳回 WinError.h 中定義的非零錯誤碼。
備註
LookupSecurityDescriptorParts 函式會擷取安全性描述元的擁有者和主要群組的名稱。 此函式也會傳回 DACL 中 ACE 的描述,以及安全性描述元之 SACL 中的稽核控制專案描述。
如果您對資訊不感興趣, pSD 以外的參數可以是 NULL 。 如果您不想要 DACL 的相關信息, pListOfAccessEntries 和 cCountOfAuditEntries 都必須是 NULL。 如果您不想要 SACL 的相關信息, pListOfAuditEntries 和 cCountOfAuditEntries 都必須是 NULL。 同樣地,如果您想要 DACL 或 SACL 資訊,則兩個對應的參數不得為 NULL。
當您完成使用 pOwner、 pGroup、 pListOfAccessEntries 或 pListOfAuditEntries 參數傳回的任何緩衝區時,請呼叫 LocalFree 函式來釋放這些緩衝區。
LookupSecurityDescriptorParts 函式適用於在自己的對象上實作或公開安全性的信任伺服器。 函式適用於自我相對安全性描述元,適合串行化為數據流並儲存至磁碟,因為信任的伺服器可能需要。
注意
aclapi.h 標頭會將 LookupSecurityDescriptorParts 定義為別名,根據 UNICODE 預處理器常數的定義,自動選取此函式的 ANSI 或 Unicode 版本。 混合使用編碼中性別名與非編碼中性的程序代碼,可能會導致編譯或運行時間錯誤不符。 如需詳細資訊,請參閱 函式原型的慣例。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows XP [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | aclapi.h |
程式庫 | Advapi32.lib |
Dll | Advapi32.dll |