共用方式為


擷取物件的 SACL

Active Directory 網域服務 中物件的安全性描述元可能包含系統存取控制清單 (SACL)。 SACL 包含存取控制專案 (ACE),可指定在域控制器的安全性事件記錄檔中產生稽核記錄的存取嘗試類型。 請注意,SACL 只會在發生存取嘗試的域控制器上產生記錄專案,而不是在每個包含物件複本的 DC 上。

若要從物件安全性描述元設定或取得 SACL, 必須在要求線程的存取令牌中啟用SE_SECURITY_NAME 許可權。 根據預設,系統管理員群組具有此許可權,而且可以指派給其他使用者或群組。 如需詳細資訊,請參閱 SACL 訪問許可權

若要取得和設定目錄物件的 SACL,請使用 IADsSecurityDescriptor 介面。 使用 C++ 時,IADsSecurityDescriptor::get_SystemAcl 方法會傳回 IDispatch 指標。 在該 IDispatch 指標上呼叫 QueryInterface 以取得 IADsAccessControlList 介面,並使用該介面上的 方法來存取 SACL 中的個別 ACE。 如需修改 SACL 的程式詳細資訊,類似於修改 DACL 的程式,請參閱 設定物件的訪問許可權。

若要列舉 SACL 中的 ACE,請使用 IADsAccessControlList::get__NewEnum 方法,此方法會傳回 IUnknown 指標。 在該 IUnknown 指標上呼叫 QueryInterface 以取得 IEnumVARIANT 介面。 使用 IEnumVARIANT::Next 方法來列舉 ACL 中的 ACE。 每個 ACE 都會以包含 IDispatch 指標的 VARIANT 傳回;請注意 vt 成員是VT_DISPATCH。 在該 IDispatch 指標上呼叫 QueryInterface,以取得 ACE 的 IADsAccessControlEntry 介面。 使用 IADsAccessControlEntry 介面方法來設定或取得 ACE 的元件。

如需 SCL 的詳細資訊,請參閱: