SeQueryInformationToken 함수(ntifs.h)
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을 사용하여 호출자가 해제해야 합니다.
값 | Description |
---|---|
TokenDefaultDacl | 버퍼는 새로 만든 개체에 대한 기본 DACL을 포함하는 TOKEN_DEFAULT_DACL 구조를 받습니다. |
TokenGroups | 버퍼는 토큰과 연결된 그룹 계정을 포함하는 TOKEN_GROUPS 구조를 받습니다. |
TokenImpersonationLevel | 버퍼는 토큰의 가장 수준을 나타내는 SECURITY_IMPERSONATION_LEVEL 값을 받습니다. 액세스 토큰이 가장 토큰이 아닌 경우 SeQueryInformationToken 에 대한 호출이 실패합니다. |
TokenOwner | 버퍼는 새로 만든 개체에 대한 기본 SID(소유자 보안 식별자)가 포함된 TOKEN_OWNER 구조를 받습니다. |
TokenPrimaryGroup | 버퍼는 새로 만든 개체에 대한 기본 기본 그룹 SID를 포함하는 TOKEN_PRIMARY_GROUP 구조를 받습니다. |
TokenPrivileges | 버퍼는 토큰의 권한이 포함된 TOKEN_PRIVILEGES 구조를 받습니다. |
TokenSessionId | 버퍼는 토큰과 연결된 터미널 서비스 세션 식별자를 나타내는 DWORD 값(포인터가 아님)을 받습니다. 토큰이 터미널 서버 콘솔 세션과 연결된 경우 세션 식별자는 0입니다. 0이 아닌 세션 식별자는 터미널 서비스 클라이언트 세션을 나타냅니다. 터미널이 아닌 서비스 환경에서 세션 식별자는 0입니다. |
TokenSource | 버퍼는 토큰의 원본을 포함하는 TOKEN_SOURCE 구조를 받습니다. 이 정보를 검색하려면 TOKEN_QUERY_SOURCE 액세스가 필요합니다. |
TokenStatistics | 버퍼는 다양한 토큰 통계를 포함하는 TOKEN_STATISTICS 구조를 받습니다. |
TokenType | 버퍼는 토큰이 기본 토큰인지 가장 토큰인지 여부를 나타내는 TOKEN_TYPE 값을 받습니다. |
TokenUser | 버퍼는 토큰의 사용자 계정을 포함하는 TOKEN_USER 구조를 받습니다. |
TokenIntegrityLevel | 버퍼는 토큰의 무결성 수준을 지정하는 DWORD 값(포인터가 아님)을 받습니다. |
반환 값
반환 코드 | 설명 |
---|---|
|
SeQueryInformationToken에 대한 호출이 성공했습니다. |
|
TokenInformationClass에 잘못된 값이 제공되었습니다. |
설명
보안 및 액세스 제어에 대한 자세한 내용은 드라이버 개발자를 위한 Windows 보안 모델 및 Windows SDK의 이러한 topics 대한 설명서를 참조하세요.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 |
대상 플랫폼 | 유니버설 |
헤더 | ntifs.h(Ntifs.h 포함) |
라이브러리 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | PASSIVE_LEVEL |