TOKEN_INFORMATION_CLASS 열거형(winnt.h)

TOKEN_INFORMATION_CLASS 열거형에는 액세스 토큰에 할당되거나 검색되는 정보 유형을 지정하는 값이 포함됩니다.

GetTokenInformation 함수는 이러한 값을 사용하여 검색할 토큰 정보의 형식을 나타냅니다.

SetTokenInformation 함수는 이러한 값을 사용하여 토큰 정보를 설정합니다.

Syntax

typedef enum _TOKEN_INFORMATION_CLASS {
  TokenUser = 1,
  TokenGroups,
  TokenPrivileges,
  TokenOwner,
  TokenPrimaryGroup,
  TokenDefaultDacl,
  TokenSource,
  TokenType,
  TokenImpersonationLevel,
  TokenStatistics,
  TokenRestrictedSids,
  TokenSessionId,
  TokenGroupsAndPrivileges,
  TokenSessionReference,
  TokenSandBoxInert,
  TokenAuditPolicy,
  TokenOrigin,
  TokenElevationType,
  TokenLinkedToken,
  TokenElevation,
  TokenHasRestrictions,
  TokenAccessInformation,
  TokenVirtualizationAllowed,
  TokenVirtualizationEnabled,
  TokenIntegrityLevel,
  TokenUIAccess,
  TokenMandatoryPolicy,
  TokenLogonSid,
  TokenIsAppContainer,
  TokenCapabilities,
  TokenAppContainerSid,
  TokenAppContainerNumber,
  TokenUserClaimAttributes,
  TokenDeviceClaimAttributes,
  TokenRestrictedUserClaimAttributes,
  TokenRestrictedDeviceClaimAttributes,
  TokenDeviceGroups,
  TokenRestrictedDeviceGroups,
  TokenSecurityAttributes,
  TokenIsRestricted,
  TokenProcessTrustLevel,
  TokenPrivateNameSpace,
  TokenSingletonAttributes,
  TokenBnoIsolation,
  TokenChildProcessFlags,
  TokenIsLessPrivilegedAppContainer,
  TokenIsSandboxed,
  TokenIsAppSilo,
  TokenLoggingInformation,
  MaxTokenInfoClass
} TOKEN_INFORMATION_CLASS, *PTOKEN_INFORMATION_CLASS;

상수

 
TokenUser
값: 1
버퍼는 을 받습니다.
토큰 의 사용자 계정을 포함하는 TOKEN_USER 구조체입니다.
TokenGroups
버퍼는 을 받습니다.
토큰 과 연결된 그룹 계정을 포함하는 TOKEN_GROUPS 구조체입니다.
TokenPrivileges
버퍼는 을 받습니다.
토큰 의 권한을 포함하는 TOKEN_PRIVILEGES 구조체입니다.
TokenOwner
버퍼는 을 받습니다.
새로 만든 개체에 대한 기본 SID(소유자 보안 식별자 )를 포함하는 TOKEN_OWNER 구조체입니다.
TokenPrimaryGroup
버퍼는 을 받습니다.
새로 만든 개체에 대한 기본 기본 그룹 SID를 포함하는 구조체를 TOKEN_PRIMARY_GROUP.
TokenDefaultDacl
버퍼는 을 받습니다.
새로 만든 개체에 대한 기본 DACL을 포함하는 구조체를 TOKEN_DEFAULT_DACL.
TokenSource
버퍼는 을 받습니다.
토큰 의 원본을 포함하는 TOKEN_SOURCE 구조체입니다. 정보를 검색하려면 TOKEN_QUERY_SOURCE 액세스가 필요합니다.
TokenType
버퍼는 을 받습니다.
토큰기본 토큰 인지 가장 토큰인지 여부를 나타내는 TOKEN_TYPE 값입니다.
TokenImpersonationLevel
버퍼는 을 받습니다.
토큰 의 가장 수준을 나타내는 SECURITY_IMPERSONATION_LEVEL 값입니다. 액세스 토큰이 가장 토큰이 아니면 함수가 실패합니다.
TokenStatistics
버퍼는 을 받습니다.
다양한 토큰 통계를 포함하는 TOKEN_STATISTICS 구조체입니다.
TokenRestrictedSids
버퍼는 을 받습니다.
에서 SID를 제한하는 목록을 포함하는 TOKEN_GROUPS 구조체
제한된 토큰입니다.
TokenSessionId
버퍼는 토큰과 연결된 터미널 서비스 세션 식별자를 나타내는 DWORD 값을 받습니다.

토큰이 터미널 서버 클라이언트 세션과 연결된 경우 세션 식별자는 0이 아닌 것입니다.

Windows Server 2003 및 Windows XP: 토큰이 터미널 서버 콘솔 세션과 연결된 경우 세션 식별자는 0입니다.

터미널이 아닌 서비스 환경에서 세션 식별자는 0입니다.

TokenSessionIdSetTokenInformation으로 설정된 경우 애플리케이션에는 운영 체제의 일부로 작동 권한이 있어야 하며 토큰에서 세션 ID를 설정하려면 애플리케이션을 사용하도록 설정해야 합니다.
TokenGroupsAndPrivileges
버퍼는 사용자 SID, 그룹 계정, 제한된 SID 및 토큰과 연결된 인증 ID를 포함하는 TOKEN_GROUPS_AND_PRIVILEGES 구조를 받습니다.
TokenSessionReference
예약되어 있습니다.
TokenSandBoxInert
토큰에 SANDBOX_INERT 플래그가 포함된 경우 버퍼는 0이 아닌 DWORD 값을 받습니다.
TokenAuditPolicy
예약되어 있습니다.
TokenOrigin
버퍼는 TOKEN_ORIGIN 값을 받습니다.

이름, 도메인 및 암호를 LogonUser 함수에 전달하는 등 명시적 자격 증명을 사용한 로그온으로 인해 토큰이 생성된 경우 TOKEN_ORIGIN 구조에는 토큰을 만든 로그온 세션 의 ID가 포함됩니다.

토큰이 네트워크 인증에서 발생한 경우(예: AcceptSecurityContext 호출 또는 dwLogonTypeLOGON32_LOGON_NETWORK 또는 LOGON32_LOGON_NETWORK_CLEARTEXT 설정된 LogonUser 호출) 이 값은 0이 됩니다.
TokenElevationType
버퍼는 토큰의 상승 수준을 지정하는 TOKEN_ELEVATION_TYPE 값을 받습니다.
TokenLinkedToken
버퍼는 이 토큰에 연결된 다른 토큰에 대한 핸들을 포함하는 TOKEN_LINKED_TOKEN 구조를 받습니다.
TokenElevation
버퍼는 토큰이 상승되었는지 여부를 지정하는 TOKEN_ELEVATION 구조를 받습니다.
TokenHasRestrictions
버퍼는 토큰이 필터링된 경우 0이 아닌 DWORD 값을 받습니다.
TokenAccessInformation
버퍼는 토큰에 포함된 보안 정보를 지정하는 TOKEN_ACCESS_INFORMATION 구조를 받습니다.
TokenVirtualizationAllowed
버퍼는 토큰에 대해 가상화가 허용되는 경우 0이 아닌 DWORD 값을 받습니다.
TokenVirtualizationEnabled
버퍼는 토큰에 대해 가상화를 사용하도록 설정한 경우 0이 아닌 DWORD 값을 받습니다.
TokenIntegrityLevel
버퍼는 토큰의 무결성 수준을 지정하는 TOKEN_MANDATORY_LABEL 구조를 받습니다.
TokenUIAccess
토큰에 UIAccess 플래그가 설정된 경우 버퍼는 0이 아닌 DWORD 값을 받습니다.
TokenMandatoryPolicy
버퍼는 토큰의 필수 무결성 정책을 지정하는 TOKEN_MANDATORY_POLICY 구조를 받습니다.
TokenLogonSid
버퍼는 토큰의 로그온 SID를 지정하는 TOKEN_GROUPS 구조를 받습니다.
TokenIsAppContainer
버퍼는 토큰이 앱 컨테이너 토큰인 경우 0이 아닌 DWORD 값을 받습니다. TokenIsAppContainer를 검사 0을 반환하는 모든 호출자는 호출자 토큰이 식별 수준 가장 토큰이 아닌지 확인해야 합니다. 현재 토큰이 앱 컨테이너가 아니지만 ID 수준 토큰인 경우 AccessDenied를 반환해야 합니다.
TokenCapabilities
버퍼는 토큰과 연결된 기능을 포함하는 TOKEN_GROUPS 구조를 받습니다.
TokenAppContainerSid
버퍼는 토큰과 연결된 AppContainerSid를 포함하는 TOKEN_APPCONTAINER_INFORMATION 구조를 받습니다. 토큰이 앱 컨테이너와 연결되지 않은 경우 TOKEN_APPCONTAINER_INFORMATION 구조체의 TokenAppContainer 멤버는 NULL을 가리킵니다.
TokenAppContainerNumber
버퍼는 토큰에 대한 앱 컨테이너 번호를 포함하는 DWORD 값을 받습니다. 앱 컨테이너 토큰이 아닌 토큰의 경우 이 값은 0입니다.
TokenUserClaimAttributes
버퍼는 토큰과 연결된 사용자 클레임을 포함하는 CLAIM_SECURITY_ATTRIBUTES_INFORMATION 구조를 받습니다.
TokenDeviceClaimAttributes
버퍼는 토큰과 연결된 디바이스 클레임을 포함하는 CLAIM_SECURITY_ATTRIBUTES_INFORMATION 구조를 받습니다.
TokenRestrictedUserClaimAttributes
이 값은 예약되어 있습니다.
TokenRestrictedDeviceClaimAttributes
이 값은 예약되어 있습니다.
TokenDeviceGroups
버퍼는 토큰과 연결된 디바이스 그룹을 포함하는 TOKEN_GROUPS 구조를 받습니다.
TokenRestrictedDeviceGroups
버퍼는 토큰과 연결된 제한된 디바이스 그룹을 포함하는 TOKEN_GROUPS 구조를 받습니다.
TokenSecurityAttributes
이 값은 예약되어 있습니다.
TokenIsRestricted
이 값은 예약되어 있습니다.
TokenProcessTrustLevel
TokenPrivateNameSpace
TokenSingletonAttributes
TokenBnoIsolation
TokenChildProcessFlags
TokenIsLessPrivilegedAppContainer
LPAC(최소 권한 AppContainer)를 참조합니다. LPAC는 ALL_APPLICATION_PACKAGES SID에서 무시되는 AppContainer입니다. AppContainer에 대한 자세한 내용은 레거시 앱용 AppContainer를 참조하세요.

Windows의 많은 리소스는 DoNotAddAllApplicationPackagesToRestrictions에 설명된 대로 ALL_APPLICATION_PACKAGES ACL입니다. 명시적으로 부여한 것(예: 자식 작업자 프로세스를 샌드박싱하는 웹 브라우저)을 제외한 모든 리소스에 대한 권한 없이 프로세스를 실행하려는 시나리오에서 AppContaoiner는 ALL_APPLICATION_PACKAGES 인해 시스템에 너무 많이 액세스할 수 있습니다. 이것이 바로 LPAC가 들어오는 곳입니다. API를 통해서만 LPAC를 명령적으로 만들 수 있습니다. 을 통해 appxmanifest.xml선언적으로 사용하지 않습니다.
MaxTokenInfoClass
이 열거형의 최대값입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows XP [데스크톱 앱만 해당]
지원되는 최소 서버 Windows Server 2003 [데스크톱 앱만 해당]
머리글 winnt.h(Windows.h 포함)

추가 정보

Access Control

권한 부여 열거형

GetTokenInformation

SECURITY_IMPERSONATION_LEVEL

SetTokenInformation

TOKEN_CONTROL

TOKEN_DEFAULT_DACL

TOKEN_DEVICE_CLAIMS

TOKEN_GROUPS

TOKEN_GROUPS_AND_PRIVILEGES

TOKEN_ORIGIN

TOKEN_OWNER

TOKEN_PRIMARY_GROUP

TOKEN_PRIVILEGES

TOKEN_SOURCE

TOKEN_STATISTICS

TOKEN_TYPE

TOKEN_USER

TOKEN_USER_CLAIMS