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


Метод IWbemUnsecuredApartment::CreateSinkStub (wbemcli.h)

Метод CreateSinkStub аналогичен методу IUnsecuredApartment::CreateObjectStub и создает приемник сервера пересылки объектов и выполняет проверки доступа для получения асинхронных вызовов из управления Windows. Метод CreateSinkStub отличается от CreateObjectStub тем, что он может указать, что обратные вызовы в приемник должны проходить проверку подлинности.

WMI предоставляет Unsecapp.exe процесс, который будет функционировать как отдельный процесс. Вы можете разместить Unsecapp.exe с помощью вызова интерфейса IWbemUnsecuredApartment или IUnsecuredApartment в других версиях Windows. В IUnsecuredApartment нет методов, выполняющих проверку доступа.

Проверка доступа означает, что Unsecapp.exe позволяет вызывать обратные вызовы только учетной записи компьютера, который изначально получил приемник. Если раздел реестра UnsecAppAccessControlDefault равен нулю, то Unsecapp.exe не выполняет управление доступом к обратным вызовам, если приложение не вызывает CreateSinkStub с параметром dwFlag, для параметра dwFlag задано значение WBEM_FLAG_UNSECAPP_CHECK_ACCESS. Если параметр отсутствует( это значение по умолчанию), Unsecapp.exe считывает значение раздела реестра, чтобы определить, следует ли проверять подлинность обратных вызовов.

Синтаксис

HRESULT CreateSinkStub(
  [in]  IWbemObjectSink *pSink,
  [in]  DWORD           dwFlags,
        LPCWSTR         wszReserved,
  [out] IWbemObjectSink **ppStub
);

Параметры

[in] pSink

Указатель на внутрипроцессную реализацию IWbemObjectSink в клиенте.

[in] dwFlags

Одно из следующих значений можно задать из перечисления WBEM_UNSECAPP_FLAG_TYPE . Этот параметр определяет, как Unsecapp.exe использует раздел реестра, проверяет этот раздел реестра:

HKEY_LOCAL_MACHINE\ПРОГРАММНОГО ОБЕСПЕЧЕНИЯ\Microsoft\WBEM\CIMOM\UnsecAppAccessControlDefault

WBEM_FLAG_UNSECAPP_DEFAULT_CHECK_ACCESS

Unsecapp.exe считывает раздел реестра UnsecAppAccessControlDefault , чтобы определить, следует ли проверять подлинность обратных вызовов.

WBEM_FLAG_UNSECAPP_CHECK_ACCESS

Unsecapp.exe выполняет проверку подлинности обратных вызовов независимо от параметра раздела реестра UnsecAppAccessControlDefault.

WBEM_FLAG_UNSECAPP_DONT_CHECK_ACCESS

Unsecapp.exe не выполняет проверку подлинности обратных вызовов независимо от параметра раздела реестра UnsecAppAccessControlDefault.

wszReserved

Зарезервировано.

[out] ppStub

Получает указатель на замещающий объект для использования в асинхронных вызовах IWbemServices . Пользователь получает указатель IUnknown и должен вызвать QueryInterface для IID_WbemObjectSink , прежде чем использовать этот объект в асинхронных вызовах IWbemServices .

Возвращаемое значение

Этот метод возвращает стандартные коды com-ошибок для QueryInterface. Он возвращает S_OK , если вызов выполнен успешно. Если вызов завершается сбоем, так как запрошенный интерфейс не поддерживается, метод возвращает E_NOINTERFACE.

Коды ошибок, относящихся к COM, также могут быть возвращены, если проблемы с сетью приводят к потере удаленного подключения к управлению Windows.

Комментарии

Этот метод предоставляется для повышения безопасности асинхронных вызовов из клиентских приложений. Дополнительные сведения см. в разделе Настройка безопасности при асинхронном вызове.

Требования

   
Минимальная версия клиента Ни одна версия не поддерживается
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header wbemcli.h (включая Wbemidl.h)
Библиотека Wbemuuid.lib
DLL Unsecapp.exe

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

IUnsecuredApartment::CreateObjectStub

IWbemUnsecuredApartment

Снижение безопасности для приемника в отдельном процессе

Выполнение проверок доступа

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