OpenThreadToken 함수(processthreadsapi.h)

OpenThreadToken 함수는 스레드와 연결된 액세스 토큰을 엽니다.

구문

BOOL OpenThreadToken(
  [in]  HANDLE  ThreadHandle,
  [in]  DWORD   DesiredAccess,
  [in]  BOOL    OpenAsSelf,
  [out] PHANDLE TokenHandle
);

매개 변수

[in] ThreadHandle

액세스 토큰이 열리는 스레드에 대한 핸들입니다.

[in] DesiredAccess

액세스 토큰에 대한 요청된 액세스 유형을 지정하는 액세스 마스크 를 지정합니다. 이러한 요청된 액세스 유형은 토큰의 DACL( 임의 액세스 제어 목록 )과 조정되어 어떤 액세스가 부여되거나 거부되는지 확인합니다.

액세스 토큰에 대한 액세스 권한 목록은 Access-Token 개체에 대한 액세스 권한을 참조하세요.

[in] OpenAsSelf

TRUE이면 프로세스 수준 보안 컨텍스트에 대해 액세스 검사 수행됩니다.

OpenThreadToken 함수를 호출하는 스레드의 현재 보안 컨텍스트에 대해 액세스 검사 만들려면 FALSE입니다.

OpenAsSelf 매개 변수를 사용하면 호출자가 SecurityIdentification 수준에서 토큰을 가장할 때 이 함수의 호출자가 지정된 스레드의 액세스 토큰을 열 수 있습니다. 이 매개 변수가 없으면 SecurityIdentification 가장 수준을 사용하여 임원 수준 개체를 열 수 없으므로 호출 스레드가 지정된 스레드에서 액세스 토큰을 열 수 없습니다.

[out] TokenHandle

새로 열린 액세스 토큰에 대한 핸들을 수신하는 변수에 대한 포인터입니다.

반환 값

함수가 성공하면 반환 값이 0이 아닙니다.

함수가 실패하면 반환 값은 0입니다. 확장 오류 정보를 가져오려면 GetLastError를 호출합니다. 토큰에 익명 가장 수준이 있는 경우 토큰이 열리지 않고 OpenThreadToken 이 오류로 ERROR_CANT_OPEN_ANONYMOUS 설정합니다.

설명

익명 가장 수준이 있는 토큰은 열 수 없습니다.

CloseHandle을 호출하여 TokenHandle 매개 변수를 통해 반환된 액세스 토큰 핸들을 닫습니다.

요구 사항

   
지원되는 최소 클라이언트 Windows XP [데스크톱 앱 | UWP 앱]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱 | UWP 앱]
대상 플랫폼 Windows
헤더 processthreadsapi.h(Windows.h 포함)
라이브러리 Advapi32.lib
DLL Advapi32.dll

추가 정보

Access Control 개요

AccessCheck

AdjustTokenGroups

AdjustTokenPrivileges

기본 Access Control 함수

CloseHandle

GetCurrentThreadToken

GetTokenInformation

OpenProcessToken

SECURITY_IMPERSONATION_LEVEL

SetThreadToken

SetTokenInformation