

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

# 사용자 풀에 그룹 추가
<a name="cognito-user-pools-user-groups"></a>

Amazon Cognito 사용자 풀에서 그룹에 대한 지원을 통해 그룹을 생성하고 관리하고, 사용자를 그룹에 추가하고, 그룹에서 사용자를 제거할 수 있습니다. 그룹을 통해 사용자 모음을 생성하여 권한을 관리하거나 다른 유형의 사용자를 표시합니다. 그룹에 AWS Identity and Access Management (IAM) 역할을 할당하여 그룹 구성원에 대한 권한을 정의할 수 있습니다.

그룹을 사용하여 사용자 풀에서 사용자 모음을 생성할 수 있습니다. 이 작업은 해당 사용자에 대한 권한을 설정하여 수행되는 경우가 많습니다. 예를 들어, 웹 사이트 및 앱의 독자, 기고자 및 편집자에 대해 별도의 사용자 그룹을 생성할 수 있습니다. 그룹과 연관된 IAM 역할을 사용하면 Amazon S3에 기고자만 콘텐츠를 넣을 수 있으며, 편집자만 Amazon API Gateway의 API를 통해 콘텐츠를 게시할 수 있도록 다른 그룹에 대해 서로 다른 권한을 설정할 수도 있습니다.

Amazon Cognito는 사용자 풀에 추가하는 각 OIDC, SAMl 및 소셜 [ID 제공업체](cognito-user-pools-identity-federation.md#cognito-user-pools-identity-federation-how-it-works)(idP)에 대한 사용자 그룹을 생성합니다. 그룹 이름은 `us-east-1_EXAMPLE_MYSSO` 또는 `us-east-1_EXAMPLE_Google`과 같은 `[user pool ID]_[IdP name]` 형식입니다. 자동으로 생성된 각 고유 IdP 사용자 프로필이 이 그룹에 자동으로 추가됩니다. [연결된 사용자](cognito-user-pools-identity-federation-consolidate-users.md)는 이 그룹에 자동으로 추가되지 않지만 별도의 프로세스에서 그룹에 프로필을 추가할 수 있습니다.

 AWS Management Console, APIs 및 CLI에서 사용자 풀의 그룹을 생성하고 관리할 수 있습니다. 개발자(자 AWS 격 증명 사용)는 사용자 풀의 그룹을 생성, 읽기, 업데이트, 삭제 및 나열할 수 있습니다. 그룹에서 사용자를 추가하고 제거할 수도 있습니다.

사용자 풀 내에서 그룹 사용에 대한 추가 비용은 없습니다. 자세한 내용은 [Amazon Cognito 요금](https://aws.amazon.com/cognito/pricing/)을 참조하세요.

## 그룹에 IAM 역할 할당
<a name="assigning-iam-roles-to-groups"></a>

그룹을 사용하면 IAM 역할을 사용하는 리소스에 대한 권한을 제어할 수 있습니다. IAM 역할에는 신뢰 정책 및 권한 정책이 포함됩니다. 역할 [신뢰](https://docs.aws.amazon.com/cognito/latest/developerguide/role-trust-and-permissions.html) 정책은 역할을 사용할 수 있는 사용자를 지정합니다. [권한](https://docs.aws.amazon.com/cognito/latest/developerguide/iam-roles.html#access-policies) 정책은 그룹 구성원이 액세스할 수 있는 작업과 리소스를 지정합니다. IAM 역할을 생성하는 경우 그룹 사용자가 역할을 수임할 수 있도록 역할 트러스트 정책을 설정합니다. 역할 권한 정책에서 그룹에 부여할 권한을 지정합니다.

Amazon Cognito에서 그룹을 생성할 때 역할의 [ARN](https://docs.aws.amazon.com/IAM/latest/UserGuide/reference_identifiers.html#identifiers-arns)을 제공하여 IAM 역할을 지정합니다. 그룹 구성원이 Amazon Cognito를 사용하여 로그인하면 자격 증명 풀에서 임시 자격 증명을 받을 수 있습니다. 해당 권한은 연결된 IAM 역할에 따라 결정됩니다.

개별 사용자가 여러 그룹에 있을 수 있습니다. 사용자가 여러 그룹에 있는 경우 개발자는 다음과 같이 IAM 역할을 자동으로 선택하기 위한 옵션을 보유합니다.
+ 각 그룹에 우선 순위 값을 할당할 수 있습니다. 우선 순위가 좋은(낮은) 그룹이 선택되고 이와 연관된 IAM 역할이 적용됩니다.
+ 자격 증명 풀을 통해 사용자에 대한 AWS 자격 증명을 요청할 경우 [GetCredentialsForIdentity](https://docs.aws.amazon.com/cognitoidentity/latest/APIReference/API_GetCredentialsForIdentity.html) `CustomRoleARN` 파라미터에서 역할 ARN을 지정하여 사용 가능한 역할 중에서 앱을 선택할 수도 있습니다. 지정된 IAM 역할은 사용자에 대해 사용 가능한 역할과 일치해야 합니다.

## 그룹에 우선 순위 값 할당
<a name="assigning-precedence-values-to-groups"></a>

사용자는 둘 이상의 그룹에 속할 수 있습니다. 사용자의 액세스 및 ID 토큰에 있는 `cognito:groups` 클레임에는 사용자가 속한 모든 그룹의 목록이 포함되어 있습니다. `cognito:roles` 클레임에는 그룹에 해당하는 역할 목록이 포함되어 있습니다.

사용자가 둘 이상의 그룹에 속할 수 있으므로 각 그룹에 우선 순위가 할당될 수 있습니다. 우선 순위는 사용자 풀에서 사용자가 속한 다른 그룹을 기준으로 이 그룹의 우선 순위를 지정하는, 음수가 아닌 숫자입니다. 0은 가장 높은 우선 순위 값입니다. 우선 순위 값이 낮은 그룹은 우선 순위 값이 높거나 null인 그룹보다 우선합니다. 사용자가 둘 이상의 그룹에 속해 있는 경우 우선 순위 값이 가장 낮은 그룹의 IAM 역할이 사용자 ID 토큰의 `cognito:preferred_role` 클레임에 적용됩니다.

두 개의 그룹에 동일한 우선 순위 값이 있을 수 있습니다. 이러한 경우 두 그룹 모두 우선 적용되지 않습니다. 우선 순위 값이 동일한 두 그룹에 동일한 역할 ARN이 있는 경우 해당 역할은 각 그룹의 사용자에 대한 ID 토큰의 `cognito:preferred_role` 클레임에 사용됩니다. 두 그룹의 역할 ARN이 서로 다른 경우 `cognito:preferred_role` 클레임은 사용자의 ID 토큰에서 설정되지 않습니다.

## 그룹을 사용하여 Amazon API Gateway로 권한 제어
<a name="using-groups-to-control-permission-with-amazon-api-gateway"></a>

Amazon API Gateway를 통해 사용자 풀에서 그룹을 사용하여 권한을 제어할 수 있습니다. 사용자가 속한 그룹은 `cognito:groups` 클레임에 있는 사용자 풀의 ID 토큰과 액세스 토큰에 모두 포함됩니다. 요청과 함께 ID 또는 액세스 토큰을 Amazon API Gateway에 제출하고 REST API에 Amazon Cognito 사용자 풀 권한 부여자를 사용할 수 있습니다. 자세한 내용은 [API Gateway 개발자 가이드](https://docs.aws.amazon.com/apigateway/latest/developerguide/)에서 [Amazon Cognito 사용자 풀을 권한 부여자로 사용하여 REST API에 대한 액세스 제어](https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-integrate-with-cognito.html)를 참조하세요.

사용자 정의 JWT 권한 부여자를 사용하여 Amazon API Gateway HTTP API에 대한 액세스 권한을 부여할 수도 있습니다. 자세한 내용은 [API Gateway 개발자 가이드](https://docs.aws.amazon.com/apigateway/latest/developerguide/)에서 [JWT 권한 부여자를 사용하여 HTTP API에 대한 액세스 제어](https://docs.aws.amazon.com/apigateway/latest/developerguide/http-api-jwt-authorizer.html)를 참조하세요.

## 그룹에 대한 제한 사항
<a name="user-pool-user-groups-limitations"></a>

사용자 그룹에 다음 제한이 적용됩니다.
+ 생성할 수 있는 그룹 수는 [Amazon Cognito 서비스 할당량](quotas.md)에 따라 제한됩니다.
+ 그룹은 중첩될 수 없습니다.
+ 그룹에서 사용자를 검색할 수 없습니다.
+ 이름으로 그룹을 검색할 수 없지만 그룹을 나열할 수 있습니다.

## 에서 새 그룹 생성 AWS Management Console
<a name="creating-a-new-group-using-the-console"></a>

새 그룹을 생성하려면 다음 절차를 따르세요.

**새 그룹을 생성하려면**

1. [Amazon Cognito 콘솔](https://console.aws.amazon.com/cognito/home)로 이동합니다. 메시지가 표시되면 자격 AWS 증명을 입력합니다.

1. **사용자 풀(User Pools)**을 선택합니다.

1. 목록에서 기존 사용자 풀을 선택합니다.

1. **그룹** 메뉴를 선택한 다음 **그룹 생성**을 선택합니다.

1. [**그룹 생성(Create a group)**] 페이지의 [**그룹 이름(Group name)**]에 새 그룹의 친숙한 이름을 입력합니다.

1. 다음 필드를 사용하여 이 그룹에 대한 추가 정보를 선택적으로 제공할 수 있습니다.
   + [**설명(Description)**] - 새 그룹의 용도에 대한 세부 정보를 입력합니다.
   + [**우선 순위(Precedence)**] - Amazon Cognito는 우선 순위가 더 낮은 소속 그룹을 기준으로 지정된 사용자의 모든 그룹 권한을 평가하고 적용합니다. 우선 순위가 더 낮은 그룹이 선택되고 연결된 IAM 역할이 적용됩니다. 자세한 내용은 [그룹에 우선 순위 값 할당](#assigning-precedence-values-to-groups) 단원을 참조하십시오.
   + [**IAM 역할(IAM role)**] - 리소스에 대한 권한을 제어해야 하는 경우 그룹에 IAM 역할을 할당할 수 있습니다. 사용자 풀을 자격 증명 풀과 통합한 경우 **IAM 역할** 설정은 자격 증명 풀이 토큰에서 역할을 선택하도록 구성된 경우 사용자의 ID 토큰에 할당될 역할을 결정합니다. 자세한 내용은 [그룹에 IAM 역할 할당](#assigning-iam-roles-to-groups) 단원을 참조하십시오.
   + [**이 그룹에 사용자 추가(Add users to this group)**] - 그룹이 생성된 후 기존 사용자를 이 그룹의 구성원으로 추가합니다.

1. [**생성(Create)**]을 선택하여 확인합니다.