Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Подпрограмма seQueryInformationToken извлекает указанный тип сведений о маркере доступа. Вызывающий процесс должен иметь соответствующие права доступа для получения сведений.
Синтаксис
NTSTATUS SeQueryInformationToken(
[in] PACCESS_TOKEN Token,
[in] TOKEN_INFORMATION_CLASS TokenInformationClass,
[out] PVOID *TokenInformation
);
Параметры
[in] Token
Указатель на маркер доступа, из которого извлекаются сведения. Если TokenInformationClass задано значение TokenSource, дескриптор должен иметь TOKEN_QUERY_SOURCE доступ. Для всех остальных значений TokenInformationClass дескриптор должен иметь TOKEN_QUERY доступ.
[in] TokenInformationClass
Значение из перечисленного типа TOKEN_INFORMATION_CLASS, определяющего тип извлекаемой информации.
[out] TokenInformation
Если возвращается STATUS_SUCCESS, TokenInformation получает указатель на расположение, содержащее адрес буфера, который содержит запрошенные сведения. Формат этого буфера информации зависит от значения TokenInformationClass, как показано в следующей таблице. Помните, что буфер выделяется SeQueryInformationToken из пула страниц. Этот буфер в конечном итоге должен быть освобожден вызывающим объектом с помощью ExFreePool.
| Ценность | Описание |
|---|---|
| TokenDefaultDacl | Буфер получает TOKEN_DEFAULT_DACL структуру, содержащую daCL по умолчанию для вновь созданных объектов. |
| TokenGroups | Буфер получает TOKEN_GROUPS структуру, содержащую учетные записи группы, связанные с маркером. |
| TokenImpersonationLevel | Буфер получает значение SECURITY_IMPERSONATION_LEVEL, указывающее уровень олицетворения маркера. Если маркер доступа не является маркером олицетворения, вызов SeQueryInformationToken завершается ошибкой. |
| токена | Буфер получает структуру TOKEN_OWNER, содержащую идентификатор безопасности владельца по умолчанию (идентификатор безопасности безопасности) для вновь созданных объектов. |
| TokenPrimaryGroup | Буфер получает TOKEN_PRIMARY_GROUP структуру, содержащую идентификатор безопасности первичной группы по умолчанию для только что созданных объектов. |
| TokenPrivileges | Буфер получает TOKEN_PRIVILEGES структуру, содержащую привилегии маркера. |
| TokenSessionId | Буфер получает значение DWORD (а не указатель на него), указывающее идентификатор сеанса служб терминалов, связанный с маркером. Если маркер связан с сеансом консоли сервера терминала, идентификатор сеанса равен нулю. Идентификатор сеанса, отличный от нуля, указывает сеанс клиента служб терминалов. В среде служб, отличных от терминалов, идентификатор сеанса равен нулю. |
| tokenSource | Буфер получает TOKEN_SOURCE структуру, содержащую источник маркера. для получения этих сведений требуется TOKEN_QUERY_SOURCE доступ. |
| TokenStatistics | Буфер получает TOKEN_STATISTICS структуру, содержащую различные статистические данные маркера. |
| TokenType | Буфер получает значение TOKEN_TYPE, указывающее, является ли маркер основным или олицетворением. |
| TokenUser | Буфер получает TOKEN_USER структуру, содержащую учетную запись пользователя маркера. |
| TokenIntegrityLevel | Буфер получает значение DWORD (а не указатель на него), указывающее уровень целостности маркера. |
Возвращаемое значение
| Возвращаемый код | Описание |
|---|---|
|
Вызов SeQueryInformationToken выполнен успешно. |
|
Недопустимое значение было предоставлено для TokenInformationClass. |
Замечания
Дополнительные сведения о безопасности и управлении доступом см. в модели безопасности Windows для разработчиков драйверов и документации по этим разделам в пакете SDK для Windows.
Требования
| Требование | Ценность |
|---|---|
| минимальные поддерживаемые клиентские | Windows 2000 |
| целевая платформа | Всеобщий |
| заголовка | ntifs.h (include Ntifs.h) |
| библиотеки | NtosKrnl.lib |
| DLL | NtosKrnl.exe |
| IRQL | PASSIVE_LEVEL |