TOKEN_GROUPS 구조체(winnt.h)

TOKEN_GROUPS 구조에는 액세스 토큰의 SID(그룹 보안 식별자)에 대한 정보가 포함됩니다.

구문

typedef struct _TOKEN_GROUPS {
  DWORD              GroupCount;
#if ...
  SID_AND_ATTRIBUTES *Groups[];
#else
  SID_AND_ATTRIBUTES Groups[ANYSIZE_ARRAY];
#endif
} TOKEN_GROUPS, *PTOKEN_GROUPS;

멤버

GroupCount

액세스 토큰의 그룹 수를 지정합니다.

Groups[*]

SID 집합과 해당 특성을 포함하는 SID_AND_ATTRIBUTES 구조체의 배열을 지정합니다.

SID_AND_ATTRIBUTES 구조체의 Attributes 멤버에는 다음 값이 있을 수 있습니다.

의미
SE_GROUP_ENABLED
0x00000004L
SID는 액세스 검사에 사용할 수 있습니다. 시스템에서 액세스 검사 수행할 때 SID에 적용되는 액세스 허용 및 액세스 거부 AES(액세스 거부 액세스 제어 항목)를 확인합니다.

이 특성이 없는 SID는 SE_GROUP_USE_FOR_DENY_ONLY 특성이 설정되지 않는 한 액세스 검사 동안 무시됩니다.

SE_GROUP_ENABLED_BY_DEFAULT
0x00000002L
SID는 기본적으로 사용하도록 설정됩니다.
SE_GROUP_INTEGRITY
0x00000020L
SID는 필수 무결성 SID입니다.
SE_GROUP_INTEGRITY_ENABLED
0x00000040L
SID는 필수 무결성 검사에 사용할 수 있습니다.
SE_GROUP_LOGON_ID
0xC0000000L
SID는 액세스 토큰과 연결된 로그온 세션을 식별하는 로그온 SID입니다.
SE_GROUP_MANDATORY
0x00000001L
SID는 AdjustTokenGroups 함수를 호출하여 SE_GROUP_ENABLED 특성을 지울 수 없습니다. 그러나 CreateRestrictedToken 함수를 사용하여 필수 SID를 거부 전용 SID로 변환할 수 있습니다.
SE_GROUP_OWNER
0x00000008L
SID는 토큰 사용자가 그룹의 소유자이거나 SID를 토큰 또는 개체의 소유자로 할당할 수 있는 그룹 계정을 식별합니다.
SE_GROUP_RESOURCE
0x20000000L
SID는 도메인-로컬 그룹을 식별합니다.
SE_GROUP_USE_FOR_DENY_ONLY
0x00000010L
SID는 제한된 토큰의 거부 전용 SID입니다. 시스템에서 액세스 검사 수행할 때 SID에 적용되는 액세스 거부 ACL을 확인합니다. SID에 대한 액세스 허용 ACE는 무시됩니다.

이 특성을 설정하면 SE_GROUP_ENABLED 설정되지 않으며 SID를 다시 사용할 수 없습니다.

Groups[ANYSIZE_ARRAY]

SID 집합과 해당 특성을 포함하는 SID_AND_ATTRIBUTES 구조체의 배열을 지정합니다.

SID_AND_ATTRIBUTES 구조체의 Attributes 멤버에는 다음 값이 있을 수 있습니다.

의미
SE_GROUP_ENABLED
0x00000004L
SID는 액세스 검사에 사용할 수 있습니다. 시스템에서 액세스 검사 수행할 때 SID에 적용되는 액세스 허용 및 액세스 거부 AES(액세스 거부 액세스 제어 항목)를 확인합니다.

이 특성이 없는 SID는 SE_GROUP_USE_FOR_DENY_ONLY 특성이 설정되지 않는 한 액세스 검사 동안 무시됩니다.

SE_GROUP_ENABLED_BY_DEFAULT
0x00000002L
SID는 기본적으로 사용하도록 설정됩니다.
SE_GROUP_INTEGRITY
0x00000020L
SID는 필수 무결성 SID입니다.
SE_GROUP_INTEGRITY_ENABLED
0x00000040L
SID는 필수 무결성 검사에 사용할 수 있습니다.
SE_GROUP_LOGON_ID
0xC0000000L
SID는 액세스 토큰과 연결된 로그온 세션을 식별하는 로그온 SID입니다.
SE_GROUP_MANDATORY
0x00000001L
SID는 AdjustTokenGroups 함수를 호출하여 SE_GROUP_ENABLED 특성을 지울 수 없습니다. 그러나 CreateRestrictedToken 함수를 사용하여 필수 SID를 거부 전용 SID로 변환할 수 있습니다.
SE_GROUP_OWNER
0x00000008L
SID는 토큰 사용자가 그룹의 소유자이거나 SID를 토큰 또는 개체의 소유자로 할당할 수 있는 그룹 계정을 식별합니다.
SE_GROUP_RESOURCE
0x20000000L
SID는 도메인-로컬 그룹을 식별합니다.
SE_GROUP_USE_FOR_DENY_ONLY
0x00000010L
SID는 제한된 토큰의 거부 전용 SID입니다. 시스템에서 액세스 검사 수행할 때 SID에 적용되는 액세스 거부 ACL을 확인합니다. SID에 대한 액세스 허용 ACE는 무시됩니다.

이 특성을 설정하면 SE_GROUP_ENABLED 설정되지 않으며 SID를 다시 사용할 수 없습니다.

요구 사항

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

추가 정보

AdjustTokenGroups

CreateRestrictedToken

SID_AND_ATTRIBUTES

TOKEN_CONTROL

TOKEN_DEFAULT_DACL

TOKEN_INFORMATION_CLASS

TOKEN_OWNER

TOKEN_PRIMARY_GROUP

TOKEN_PRIVILEGES

TOKEN_SOURCE

TOKEN_STATISTICS

TOKEN_TYPE

TOKEN_USER