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


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

Извлекает дескриптор безопасности прослушивателя Служб удаленных рабочих столов.

Синтаксис

BOOL WTSGetListenerSecurityA(
  [in]            HANDLE               hServer,
  [in]            PVOID                pReserved,
  [in]            DWORD                Reserved,
  [in]            LPSTR                pListenerName,
  [in]            SECURITY_INFORMATION SecurityInformation,
  [out, optional] PSECURITY_DESCRIPTOR pSecurityDescriptor,
  [in]            DWORD                nLength,
  [out]           LPDWORD              lpnLengthNeeded
);

Параметры

[in] hServer

Дескриптор сервера узла сеансов удаленных рабочих стола. Всегда присвойте этому параметру значение WTS_CURRENT_SERVER_HANDLE.

[in] pReserved

Этот параметр зарезервирован. Всегда присвойте этому параметру значение NULL.

[in] Reserved

Этот параметр зарезервирован. Всегда устанавливайте для этого параметра нулевое значение.

[in] pListenerName

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

[in] SecurityInformation

Значение SECURITY_INFORMATION , указывающее извлекаемые сведения о безопасности. Всегда включайте флаги DACL_SECURITY_INFORMATION и SACL_SECURITY_INFORMATION .

Дополнительные сведения о возможных значениях см . в разделе SECURITY_INFORMATION.

[out, optional] pSecurityDescriptor

Указатель на структуру SECURITY_DESCRIPTOR , которая получает сведения о безопасности, связанные с прослушивателем, на который ссылается параметр pListenerName . Структура SECURITY_DESCRIPTOR возвращается в самостоятельном формате. Дополнительные сведения о возможных значениях см. в разделе SECURITY_DESCRIPTOR.

Список управления доступом на уровне пользователей (DACL) дескриптора безопасности может содержать одно или несколько следующих значений.

WTS_SECURITY_ALL_ACCESS

Объединяет следующие значения:

  • STANDARD_RIGHTS_REQUIRED
  • WTS_SECURITY_CONNECT
  • WTS_SECURITY_DISCONNECT
  • WTS_SECURITY_LOGON
  • WTS_SECURITY_MESSAGE
  • WTS_SECURITY_QUERY_INFORMATION
  • WTS_SECURITY_REMOTE_CONTROL
  • WTS_SECURITY_RESET
  • WTS_SECURITY_SET_INFORMATION
  • WTS_SECURITY_VIRTUAL_CHANNELS

WTS_SECURITY_CONNECT (256 (0x100))

Право на подключение.

WTS_SECURITY_CURRENT_GUEST_ACCESS

Объединяет следующие значения:

  • WTS_SECURITY_LOGOFF
  • WTS_SECURITY_VIRTUAL_CHANNELS

WTS_SECURITY_CURRENT_USER_ACCESS

Объединяет следующие значения:

  • WTS_SECURITY_DISCONNECT
  • WTS_SECURITY_LOGOFF
  • WTS_SECURITY_RESET
  • WTS_SECURITY_SET_INFORMATION
  • WTS_SECURITY_VIRTUAL_CHANNELS

WTS_SECURITY_DISCONNECT (512 (0x200))

Право на отключение.

WTS_SECURITY_GUEST_ACCESS

Определяется как WTS_SECURITY_LOGON.

WTS_SECURITY_LOGOFF (64 (0x40))

Право выхода из системы.

WTS_SECURITY_LOGON (32 (0x20))

Право на вход.

WTS_SECURITY_MESSAGE (128 (0x80))

Право на отправку сообщения пользователю.

WTS_SECURITY_QUERY_INFORMATION (1 (0x1))

Право запрашивать информацию.

WTS_SECURITY_REMOTE_CONTROL (16 (0x10))

Право на использование удаленного управления.

WTS_SECURITY_RESET (4 (0x4))

Право на сброс сведений.

WTS_SECURITY_SET_INFORMATION (2 (0x2))

Право на настройку сведений.

WTS_SECURITY_USER_ACCESS

Объединяет следующие значения:

  • WTS_SECURITY_CONNECT
  • WTS_SECURITY_CURRENT_GUEST_ACCESS
  • WTS_SECURITY_QUERY_INFORMATION

WTS_SECURITY_VIRTUAL_CHANNELS (8 (0x8))

Право на использование виртуальных каналов.

[in] nLength

Размер структуры SECURITY_DESCRIPTOR в байтах, на которую ссылается параметр pSecurityDescriptor .

[out] lpnLengthNeeded

Указатель на переменную, которая получает количество байтов, необходимых для хранения полного дескриптора безопасности. Если это число меньше или равно значению параметра nLength , дескриптор безопасности копируется в структуру SECURITY_DESCRIPTOR , на которую ссылается параметр pSecurityDescriptor ; в противном случае никаких действий не выполняется.

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

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

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

Комментарии

Если число байтов, необходимое для буфера, получающего структуру SECURITY_DESCRIPTOR , неизвестно, можно вызвать этот метод с параметром nLength , равным нулю. Затем метод возвращает в параметре lpnLengthNeeded количество байтов, необходимых для буфера. Выделите буфер на основе этого числа, а затем снова вызовите метод , задав pSecurityDescriptor значение только что выделенного буфера, а nLength — число, возвращенное первым вызовом.

Примечание

Заголовок wtsapi32.h определяет WTSGetListenerSecurity в качестве псевдонима, который автоматически выбирает версию ANSI или Юникод этой функции на основе определения константы препроцессора ЮНИКОД. Использование псевдонима, не зависящий от кодирования, с кодом, который не является нейтральным для кодировки, может привести к несоответствиям, которые приводят к ошибкам компиляции или времени выполнения. Дополнительные сведения см. в разделе Соглашения для прототипов функций.

Требования

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

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

SECURITY_DESCRIPTOR

SECURITY_INFORMATION