Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Если вы используете API сценариев для WMI, можно задать определенные привилегии безопасности. Например, можно задать привилегии безопасности, чтобы запросить завершение работы операционной системы или проверить журнал событий безопасности. Дополнительные сведения см. в разделе Выполнение со специальными привилегиями.
При доступе к WMI на компьютере необходимо задать только привилегии. При доступе к удаленному узлу COM RPC автоматически задает привилегии. Чтобы определить все необходимые привилегии, ознакомьтесь с документацией по определенным классам WMI, к которым требуется получить доступ, например Win32_OperatingSystem. Дополнительные сведения см. в WbemPrivilegeEnum
В этом разделе рассматриваются следующие разделы:
- задание привилегий из объекта Security_
- Установка привилегии как части моникера
- Отзыв и сброс привилегий
- связанные темы
Установка привилегии из объекта Security_
Используйте следующую процедуру, чтобы задать привилегии безопасности в Visual Basic.
Установка привилегий в Visual Basic
Создайте объект типа SWbemLocator.
Добавьте новую привилегию в объект SWbemLocator.Security_.
Объект Security_ содержит коллекцию SWbemObjectSet. Объекты в наборе — это объекты SWbemSecurity. Дополнительные сведения см. в статье Доступ к коллекции.
Войдите в WMI и получите объект SWbemServices.
Объект SWbemServices наследует привилегии, заданные на предыдущем шаге.
Вы также можете задать привилегии с помощью метода SWbemPrivilegeSet.AddAsString.
Задание привилегии в составе Моникера
Вы можете задать привилегию как часть моникера.
В следующем примере показано, как добавить привилегию отладки к моникеру.
Set Service = GetObject("winmgmts:{impersonationLevel=impersonate, (Debug)}")
Отмена и сброс привилегий
В следующем примере показано, как задать привилегию SeDebugPrivilege и отменить привилегию SeRemoteShutdownPrivilege.
Set Service = GetObject("winmgmts:{impersonate,(Debug,!RemoteShutdown)}")
Связанные разделы