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


Функция WTSQueryUserToken (wtsapi32.h)

Получает основной маркер доступа пользователя, вошедшего в систему, указанного идентификатором сеанса. Для успешного вызова этой функции вызывающее приложение должно выполняться в контексте учетной записи LocalSystem и иметь права SE_TCB_NAME .

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

Синтаксис

BOOL WTSQueryUserToken(
  [in]  ULONG   SessionId,
  [out] PHANDLE phToken
);

Параметры

[in] SessionId

Идентификатор сеанса служб удаленных рабочих столов. Любая программа, запущенная в контексте службы, будет иметь идентификатор сеанса, равный нулю (0). Функцию WTSEnumerateSessions можно использовать для получения идентификаторов всех сеансов на указанном сервере узла сеансов удаленных рабочих столов.

Чтобы иметь возможность запрашивать сведения для сеанса другого пользователя, необходимо иметь разрешение На запрос сведений. Дополнительные сведения см. в разделе Разрешения служб удаленных рабочих столов. Чтобы изменить разрешения для сеанса, используйте средство администрирования конфигурации служб удаленных рабочих столов.

[out] phToken

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

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

Если функция выполнена успешно, возвращаемое значение является ненулевым, а параметр phToken указывает на основной токен пользователя.

Если функция выполняется неудачно, возвращается нулевое значение. Дополнительные сведения об ошибке можно получить, вызвав GetLastError.

Комментарии

Сведения о первичных маркерах см. в разделе Маркеры доступа. Дополнительные сведения о привилегиях учетной записи см. в разделе Разрешения и константы авторизациислужб удаленных рабочих столов.

Сведения о привилегиях, связанных с этой учетной записью, см. в разделе Учетная запись LocalSystem .

Требования

   
Минимальная версия клиента Windows Vista
Минимальная версия сервера Windows Server 2008
Целевая платформа Windows
Header wtsapi32.h
Библиотека Wtsapi32.lib
DLL Wtsapi32.dll
Набор API ext-ms-win-session-wtsapi32-l1-1-0 (представлено в Windows 8)

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

CloseHandle

WTSEnumerateSessions