從 ACL 取得資訊
提供數個函式,可從 存取控制清單 擷取存取控制資訊, (ACL) 。 這些包括用來判斷 ACL 授與或稽核指定 信任項之存取權限的函式。 其他函式可讓您擷取 ACL 中 (ACL) 存取控制專案 的相關資訊。
GetExplicitEntriesFromAcl函式會擷取描述 ACL 中 ACE的EXPLICIT_ACCESS結構陣列。 將 ACE 資訊從一個 ACL 複製到另一個 ACL 時,這非常有用。 例如,呼叫GetExplicitEntriesFromAcl以取得一個 ACL 中 ACE 的相關資訊後,可以接著在呼叫 SetEntriesInAcl函式中傳遞傳回的EXPLICIT_ACCESS結構,以在新 ACL 中建立對等 ACL。
GetEffectiveRightsFromAcl函式可讓您判斷 DACL 授與給指定信任項的有效存取權限。 信任者的有效存取權限是 DACL 授與給信任者或信任者所屬之任何群組的存取權限。 GetEffectiveRightsFromAcl 會檢查指定 DACL 中所有允許和拒絕存取的 ACE。
使用下列步驟來判斷信任者的物件存取權限
- 呼叫 GetSecurityInfo 或 GetNamedSecurityInfo 函式,以取得物件的 DACL 指標。
- 呼叫 GetEffectiveRightsFromAcl 函式,以擷取 DACL 授與給指定信任項的存取權限。
GetAuditedPermissionsFromAcl函式可讓您檢查 SACL,以判斷指定信任項的稽核存取權限,或信任者所屬的任何群組。 稽核的許可權表示導致系統在安全性事件記錄檔中產生稽核記錄的存取嘗試類型。 此函式會傳回兩個 存取遮罩:一個包含針對失敗存取嘗試監視的存取權限,另一個包含受監視以成功存取的存取權限。 GetAuditedPermissionsFromAcl 會檢查 SACL 中的所有系統稽核 ACE。