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


Метод ITSGPolicyEngine::AuthorizeConnection (tsgpolicyengine.h)

Определяет, авторизовано ли указанное подключение для подключения к шлюзу удаленных рабочих столов (шлюз удаленных рабочих столов).

Шлюз удаленных рабочих столов вызывает этот метод после успешной проверки подлинности пользователя. Затем подключаемый модуль авторизации должен использовать интерфейс ITSGAuthorizeConnectionSink для уведомления шлюза удаленных рабочих столов о результатах авторизации.

Синтаксис

HRESULT AuthorizeConnection(
  [in] GUID                        mainSessionId,
  [in] BSTR                        username,
  [in] AAAuthSchemes               authType,
  [in] BSTR                        clientMachineIP,
  [in] BSTR                        clientMachineName,
  [in] BYTE                        *sohData,
  [in] ULONG                       numSOHBytes,
  [in] BYTE                        *cookieData,
  [in] ULONG                       numCookieBytes,
  [in] HANDLE_PTR                  userToken,
  [in] ITSGAuthorizeConnectionSink *pSink
);

Параметры

[in] mainSessionId

Уникальный идентификатор, назначенный запросу на подключение шлюзом удаленных рабочих столов.

[in] username

Имя пользователя.

[in] authType

Значение типа перечисления AAAuthSchemes , указывающее тип проверки подлинности, используемый для подключения к шлюзу удаленных рабочих столов.

[in] clientMachineIP

IP-адрес компьютера пользователя.

[in] clientMachineName

Имя компьютера пользователя.

[in] sohData

Указатель на BYTE , содержащий инструкцию о работоспособности (SoH), предоставленную компьютером пользователя. Если подключаемый модуль авторизации не требует инструкции о работоспособности, этот параметр имеет значение NULL. Дополнительные сведения см. в статье Метод IsQuarantineEnabled .

[in] numSOHBytes

Число байтов, на которые ссылается параметр sohData .

[in] cookieData

Указатель на BYTE , содержащий файл cookie, предоставленный пользователем. Если для параметра authType не задано значение AA_AUTH_COOKIE, этот параметр имеет значение NULL.

[in] numCookieBytes

Число байтов, на которые ссылается параметр cookieData .

[in] userToken

Указатель на HANDLE , указывающий маркер пользователя. Если пользователь не работает под управлением Windows, этот параметр имеет значение NULL.

[in] pSink

Указатель на интерфейс ITSGAuthorizeConnectionSink , который подключаемый модуль авторизации должен использовать для уведомления шлюза удаленных рабочих столов о результатах авторизации.

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

Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .

Комментарии

Если этот метод возвращает S_OK, шлюз удаленных рабочих столов ожидает, пока подключаемый модуль авторизации вызовет метод интерфейса ITSGAuthorizeConnectionSink . Если возвращается какое-либо другое значение, шлюз удаленных рабочих столов немедленно отклоняет запрос на авторизацию.

Если авторизация требует более 1 секунды, рекомендуется запустить отдельный поток для выполнения авторизации.

Пример использования метода AuthorizeConnection см. в разделе Пример подключаемой проверки подлинности и авторизации шлюза удаленных рабочих столов .

Требования

   
Минимальная версия клиента Windows 7
Минимальная версия сервера Windows Server 2008 R2
Целевая платформа Windows
Header tsgpolicyengine.h

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

ITSGAuthorizeConnectionSink

ITSGPolicyEngine

IsQuarantineEnabled