사용자 풀 그룹 멀티테넌시 모범 사례 - Amazon Cognito

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

사용자 풀 그룹 멀티테넌시 모범 사례

그룹 기반 멀티테넌시는 아키텍처에 자격 증명 풀이 있는 Amazon Cognito 사용자 풀이 필요할 때 가장 효과적입니다.

사용자 풀 ID 및 액세스 토큰에는 클레임이 포함되어 있습니다. cognito:groups 또한 ID 토큰에는 cognito:preferred_role 클레임이 cognito:roles 포함됩니다. 앱 인증의 기본 결과가 자격 증명 풀의 임시 AWS 자격 증명인 경우, 사용자의 그룹 멤버십은 사용자가 받는 IAM 역할 및 권한을 결정할 수 있습니다.

예를 들어, 각각 고유한 Amazon S3 버킷에 애플리케이션 자산을 저장하는 세 개의 테넌트를 생각해 보십시오. 각 테넌트의 사용자를 관련 그룹에 할당하고, 그룹의 선호 역할을 구성하고, 해당 역할에 버킷에 대한 읽기 액세스 권한을 부여합니다.

다음 다이어그램은 IAM 역할에 대한 적격성을 결정하는 사용자 풀의 전용 그룹과 앱 클라이언트 및 사용자 풀을 공유하는 테넌트를 보여줍니다.

공유 사용자 풀에서 각 many-to-one 테넌트가 고유한 사용자 그룹을 갖는 멀티테넌시 모델의 다이어그램입니다.
그룹 멀티테넌시 구현 시기

AWS 리소스 액세스가 주요 관심사인 경우 Amazon Cognito 사용자 풀의 그룹 사용자 풀은 역할 기반 액세스 제어 (RBAC) 를 위한 메커니즘입니다. 사용자 풀에 여러 그룹을 구성하고 그룹 우선 순위에 따라 복잡한 RBAC 결정을 내릴 수 있습니다. 자격 증명 풀은 우선 순위가 가장 높은 역할, 그룹 클레임의 모든 역할 또는 사용자 토큰의 다른 클레임에 대한 자격 증명을 할당할 수 있습니다.

노력 수준

그룹 멤버십만으로 멀티테넌시를 유지하려는 노력의 수준은 낮습니다. 그러나 IAM 역할 선택을 위한 기본 제공 용량 이상으로 사용자 풀 그룹의 역할을 확장하려면 사용자 토큰의 그룹 멤버십을 처리하는 애플리케이션 로직을 구축하고 클라이언트에서 수행할 작업을 결정해야 합니다. Amazon 검증 권한을 앱과 통합하여 클라이언트 측 승인 결정을 내릴 수 있습니다. 그룹 식별자는 현재 Verified Permissions IsAuthorizedWithTokenAPI 작업에서 처리되지 않지만, 그룹 멤버십 클레임을 포함하여 토큰의 콘텐츠를 파싱하는 사용자 지정 코드를 개발할 수 있습니다.