Поделиться через


Метод SetSecurityDescriptor класса __SystemSecurity

Метод 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. Дополнительные сведения см. в разделах Константы привилегий и Выполнение привилегированных операций.

При вызове этого метода можно обновить как DACL, так и saCL в экземпляре Win32_SecurityDescriptor , но также можно обновить только DACL или только SACL.

Следующие значения в SECURITY_DESCRIPTOR_CONTROL определяют, обновляются ли daCL, SACL или оба.

  • SE_DACL_PRESENT

    Указывает, что необходимо обновить список DACL. Если этот параметр не задан, WMI сохраняет исходное значение DACL.

  • SE_SACL_PRESENT

    Указывает, что необходимо обновить список SACL. Если этот параметр не задан, WMI сохраняет исходное значение saCL. Чтобы обновить saCL, у учетной записи должна быть включена привилегия SeSecurityPrivilege . Для создания скриптов имя привилегии — SeSecurityPrivilege. Дополнительные сведения см. в разделе Константы привилегий.

Если свойства доверенного лица группы и владельца не имеют значения NULL, они обновляются. В противном случае WMI сохраняет исходные значения. Дополнительные сведения см. в разделе Объекты дескриптора безопасности WMI.

Если в вызове этого метода новый список SACL имеет значение NULL , то список SACL дескриптора безопасности для целевого защищаемого объекта остается без изменений.

Требования

Требование Значение
Минимальная версия клиента
Windows Vista
Минимальная версия сервера
Windows Server 2008
Пространство имен
Все пространства имен WMI

См. также раздел

__SystemSecurity

Настройка дескрипторов безопасности в среде имен