Share via


__SystemSecurity 類別的 SetSecurityDescriptor 方法

SetSecurityDescriptor方法會寫入安全性描述元的更新版本,以控制您所連線之 WMI 命名空間的存取權。 安全性描述項是由 __SecurityDescriptor實例表示。 如需詳細資訊,請參閱 變更安全性物件上的存取安全性

語法

uint32 SetSecurityDescriptor(
  [in] __SecurityDescriptor Descriptor
);

參數

描述元 [in]

與 WMI 命名空間相關聯的安全性描述元。

傳回值

傳回下列清單中所列的其中一個值,或不同的值來表示錯誤。 如需詳細資訊,請參閱 WMI 傳回碼WbemErrorEnum

0

成功完成。

2

使用者無法存取要求的資訊。

8

未知的失敗。

9

使用者沒有足夠的許可權可執行 方法。

21

方法呼叫中指定的參數無效。

備註

Win32_SecurityDescriptor實例代表SECURITY_DESCRIPTOR_CONTROL資料類型,並包含 DACL () 和系統存取控制清單 (SACL) 的任意存取控制清單。 如需詳細資訊,請參閱存取控制清單

如果在取得安全性描述元時未授與或啟用 SeSecurityPrivilege ,則只會在傳回的安全性描述元中傳回 DACL。 如需詳細資訊,請參閱 Privilege Constants執行 Privileged Operations

呼叫此方法時,您可以在 Win32_SecurityDescriptor 實例中更新 DACL 和 SACL,但您也可以只更新 DACL 或 SACL。

下列值SECURITY_DESCRIPTOR_CONTROL判斷 DACL 或 SACL 還是兩者都會更新。

  • SE_DACL_PRESENT

    指出應更新 DACL。 如果未設定,WMI 會保留 DACL 的原始值。

  • SE_SACL_PRESENT

    指出應該更新 SACL。 如果未設定,WMI 會保留 SACL 的原始值。 若要更新 SACL,帳戶必須啟用 SeSecurityPrivilege 許可權。 針對腳本,許可權名稱為 SeSecurityPrivilege。 如需詳細資訊,請參閱 Privilege Constants

如果群組信任項和擁有者信任項屬性不是 Null,則會更新它們。 否則,WMI 會保留原始值。 如需詳細資訊,請參閱 WMI 安全性描述元物件

當新的 SACL 在呼叫這個方法時為 Null ,則目標安全性實體物件上的安全性描述元 SACL 會保持不變。

規格需求

需求
最低支援的用戶端
Windows Vista
最低支援的伺服器
Windows Server 2008
命名空間
所有 WMI 命名空間

另請參閱

__SystemSecurity

設定 Namepace 安全性描述元