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


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

Определяет, к каким ресурсам авторизовано указанное подключение.

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

Синтаксис

HRESULT AuthorizeResource(
  [in] GUID                      mainSessionId,
  [in] int                       subSessionId,
  [in] BSTR                      username,
  [in] BSTR                      *resourceNames,
  [in] ULONG                     numResources,
  [in] BSTR                      *alternateResourceNames,
  [in] ULONG                     numAlternateResourceName,
  [in] ULONG                     portNumber,
  [in] BSTR                      operation,
  [in] BYTE                      *cookie,
  [in] ULONG                     numBytesInCookie,
  [in] ITSGAuthorizeResourceSink *pSink
);

Параметры

[in] mainSessionId

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

[in] subSessionId

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

[in] username

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

[in] resourceNames

Список ресурсов для авторизации.

[in] numResources

Количество ресурсов, на которые ссылается параметр resourceNames .

[in] alternateResourceNames

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

[in] numAlternateResourceName

Количество имен альтернативных ресурсов, на которые ссылается параметр alternateResourceNames .

[in] portNumber

Номер порта, указанный пользователем.

[in] operation

Операция, которую пользователь пытается выполнить с ресурсом. Этот параметр всегда имеет значение "RDP".

[in] cookie

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

[in] numBytesInCookie

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

[in] pSink

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

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

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

Комментарии

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

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

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

Требования

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

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

ITSGPolicyEngine