Amazon CognitoKibana에 대한 인증 - Amazon Elasticsearch Service

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

Amazon CognitoKibana에 대한 인증

Amazon Elasticsearch Service는 Kibana 인증을 위해 Amazon Cognito를 지원합니다. 이 기능은 선택 사항이며 Elasticsearch 5.1 이상을 사용하는 도메인에서만 사용할 수 있습니다. 인증을 구성하지 않은 경우에도 Amazon CognitoIP 기반 액세스 정책프록시 서버, HTTP 기본 인증 또는 SAML을 사용하여 Kibana를 보호할 수 있습니다.

인증 프로세스의 많은 부분은 Amazon Cognito에서 진행되지만 이 섹션에서 Amazon Cognito 도메인과 호환되도록 Amazon ES 리소스를 구성하는 지침과 요건을 알려드립니다. 표준 요금은 모든 Amazon Cognito 리소스에 적용됩니다.

작은 정보

Kibana에 Amazon Cognito 인증을 사용하도록 도메인을 처음 구성하는 경우 콘솔을 사용할 것을 권합니다. Amazon Cognito 리소스는 사용자 지정 기능이 뛰어난데, 콘솔은 사용자에게 중요한 기능을 식별하고 이해하는 데 도움이 됩니다.

Prerequisites

Kibana에 대한 Amazon Cognito 인증을 구성하기 전에 충족해야 하는 사전 조건이 여럿 있습니다. Amazon ES 콘솔은 이런 리소스의 생성을 간소화해 주지만, 각 리소스의 목적을 이해해야 구성과 문제 해결에 도움이 됩니다. Kibana에 대한 Amazon Cognito 인증에는 다음 리소스가 필요합니다.

  • Amazon Cognito 사용자 풀

  • Amazon Cognito ID 풀

  • IAM 정책이 연결된 AmazonESCognitoAccess 역할(CognitoAccessForAmazonES)

참고

사용자 풀과 자격 증명 풀은 동일한 AWS 리전에 위치해 있어야 합니다. 동일한 사용자 풀과 자격 증명 풀 및 IAM 역할을 이용해 여러 Amazon Cognito 도메인에 Kibana에 대한 Amazon ES 인증을 추가할 수 있습니다. 자세한 내용은 단원을 참조하십시오.Limits.

사용자 풀 소개

사용자 풀의 주된 기능은 사용자 디렉터리를 만들고 관리하는 것, 그리고 사용자가 가입하고 로그인하게 하는 것 두 가지입니다. 사용자 풀을 생성하는 방법에 대한 자세한 내용은 https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pool-as-user-directory.html사용자 풀 생성Amazon Cognito 개발자 안내서을 참조하십시오.

Amazon ES에 사용할 사용자 풀을 생성할 때는 다음 사항을 고려하십시오.

  • 사용자 풀에 Amazon Cognito도메인 이름이 있어야 합니다. 는 이 도메인 이름을 사용하여 사용자를 Kibana에 액세스하기 위한 로그인 페이지로 리디렉션합니다.Amazon ES 사용자 풀은 도메인 이름 외에 다른 기본값이 아닌 구성은 필요하지 않습니다.

  • 이름, 생년월일, 이메일 주소, 전화번호 등 풀의 필수 표준 속성을 지정해야 합니다.— 사용자 풀을 만든 후에는 이런 속성을 변경할 수 없으므로 이때 중요한 속성을 선택해야 합니다.

  • 사용자 풀을 만드는 동안 사용자가 자기 계정을 만들 수 있는지 여부, 계정 암호의 최소 강도, 멀티 팩터 인증 활성화 여부 등을 선택하십시오. 외부 자격 증명 공급자를 사용할 계획이라면 이러한 설정은 중요하지 않습니다. 기술적으로는 사용자 풀을 자격 증명 공급자로 동시에 활성화할 수 있지만, 외부 자격 증명 공급자를 활성화하는 것은 가능하지만 대부분은 둘 중 하나를 선호합니다.

사용자 풀 IDs의 형식입니다.region_ID AWS CLI 또는 AWS SDK를 사용하여 Amazon ES를 구성할 계획인 경우, ID를 기록해 둡니다.

자격 증명 풀 소개

자격 증명 풀을 사용하면 로그인 후 제한적 권한의 임시 역할을 사용자에게 할당할 수 있습니다. 자격 증명 풀을 생성하는 방법은 https://docs.aws.amazon.com/cognito/latest/developerguide/identity-pools.html의 Amazon Cognito 개발자 안내서자격 증명 풀을 참조하십시오. Amazon ES에 사용할 자격 증명 풀을 생성할 때는 다음 사항을 고려하십시오.

  • 콘솔을 사용하는 경우 Amazon Cognito인증되지 않은 자격 증명에 대한 액세스 활성화 확인란을 선택하여 자격 증명 풀을 생성해야 합니다. 자격 증명 풀을 생성하고 도메인을 구성Amazon ES한 후 에서 이 설정을 비활성화합니다.Amazon Cognito

  • 자격 증명 풀에 외부 자격 증명 공급자를 추가할 필요가 없습니다. Amazon ES 인증을 사용하려고 Amazon Cognito를 구성할 때는 방금 만든 사용자 풀을 사용할 자격 증명 풀을 구성합니다.

  • 자격 증명 풀을 만든 다음에는 인증 및 인증되지 않은 IAM 역할을 선택해야 합니다. 이러한 역할은 로그인 전후 사용자의 액세스 정책을 지정합니다. Amazon Cognito 콘솔을 사용하는 경우 이런 역할이 자동으로 생성됩니다. 인증 역할을 만든 후에는 ARN을 기록해 두십시오. 의 형식입니다.arn:aws:iam::123456789012:role/Cognito_identitypoolAuth_Role.

자격 증명 풀 IDs의 형식은 region:ID-ID-ID-ID-ID입니다. AWS CLI 또는 AWS SDK를 사용하여 Amazon ES를 구성할 계획인 경우, ID를 기록해 둡니다.

역할 소개CognitoAccessForAmazonES

Amazon ES는 권한이 있어야 Amazon Cognito 사용자와 자격 증명 풀을 구성하고 이것들을 인증에 사용할 수 있습니다. 이를 위해 AWS 관리형 정책인 AmazonESCognitoAccess를 사용할 수 있습니다. 콘솔을 이용해 Amazon ES 도메인을 생성하거나 구성할 경우 IAM 역할이 자동으로 생성되어 이 정책을 연결합니다. 이 역할의 기본 이름은 입니다.CognitoAccessForAmazonES.

또는 AWS AWS CLI 중 하나를 사용하는 경우 SDKs 도메인을 구성할 때 자체 역할을 생성하고, 정책을 연결하고, 이 역할에 대한 ARN을 지정해야 합니다.Amazon ES 역할은 다음과 같은 신뢰 관계를 맺고 있어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "es.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

지침은 AWS 서비스에 대한 권한을 위임할 역할 생성IAM 정책 연결 및 분리를 참조하십시오.IAM 사용 설명서

Amazon ES 도메인 구성

사전 조건을 마친 후 Kibana에 Amazon ES를 사용하기 위해 Amazon Cognito 도메인을 구성할 수 있습니다.

참고

Amazon Cognito일부 AWS 리전에서는 을(를) 사용할 수 없습니다. 지원되는 리전의 목록은 AWS 리전 및 엔드포인트.를 참조하십시오. Amazon Cognito에 사용한 것과 똑같은 리전을 Amazon ES.에 사용할 필요는 없습니다.

Amazon Cognito 인증 구성(콘솔)

콘솔에서는 CognitoAccessForAmazonES 역할을 자동으로 생성하기 때문에 구성하기가 가장 간단합니다. 콘솔로 Kibana에 대한 Amazon ES 인증을 사용하는 도메인을 만들려면 표준 Amazon Cognito 권한 외에도 다음과 같은 권한 모음이 있어야 합니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole", "iam:CreateRole", "iam:AttachRolePolicy", "ec2:DescribeVpcs", "cognito-identity:ListIdentityPools", "cognito-idp:ListUserPools" ], "Resource": "*" } ] }

CognitoAccessForAmazonES가 이미 존재하는 경우, 필요한 권한 수가 더 적습니다.

{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Action": [ "ec2:DescribeVpcs", "cognito-identity:ListIdentityPools", "cognito-idp:ListUserPools" ], "Resource": "*" }, { "Effect": "Allow", "Action": [ "iam:GetRole", "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/CognitoAccessForAmazonES" } ] }

Kibana에 대한 Amazon Cognito 인증을 구성하려면(콘솔)

  1. https://aws.amazon.com으로 이동하여 Sign In to the Console(콘솔에 로그인).을 선택합니다.

  2. Analytics에서 Elasticsearch 서비스.를 선택합니다.

  3. 탐색 창의 My domains(내 도메인)에서 구성할 도메인을 선택합니다.

  4. 작업, 인증 수정을 선택합니다.

  5. Amazon Cognito authentication(Amazon Cognito 인증)에서 Enable Amazon Cognito authentication(Amazon Cognito 인증 활성화).를 선택합니다.

  6. 리전에서 사용자 풀과 자격 증명 풀이 포함된 리전을 선택합니다.Amazon Cognito

  7. Cognito 사용자 풀에서 사용자 풀을 하나 선택하거나 만듭니다. 자세한 지침은 단원을 참조하십시오.사용자 풀 소개.

  8. Cognito 자격 증명 풀에서 자격 증명 풀을 선택하거나 만듭니다. 자세한 지침은 단원을 참조하십시오.자격 증명 풀 소개.

    참고

    Create new user pool(새 사용자 풀 생성)Create new identity pool(새 자격 증명 풀 생성) 링크는 콘솔로 연결되며, 이러한 리소스를 수동으로 생성해야 합니다.Amazon Cognito 이 프로세스는 자동이 아닙니다. 자세한 내용은 단원을 참조하십시오.Prerequisites.

  9. IAM 역할의 경우 기본값 (권장)을 사용하거나 새 이름을 입력합니다.CognitoAccessForAmazonES 이 역할의 목적을 자세히 알아보려면 단원을 참조하십시오.역할 소개CognitoAccessForAmazonES.

  10. 제출.을 선택합니다.

도메인이 처리를 마친 후 추가 구성 단계는 인증된 역할 허용자격 증명 공급자 구성를 참조하십시오.

Amazon Cognito 인증 구성(AWS CLI)

--cognito-options 도메인을 구성하려면 Amazon ES 파라미터를 사용합니다. 다음 구문은 create-elasticsearch-domainupdate-elasticsearch-domain-config 명령 둘 다에서 사용됩니다:

--cognito-options Enabled=true,UserPoolId="user-pool-id",IdentityPoolId="identity-pool-id",RoleArn="arn:aws:iam::123456789012:role/CognitoAccessForAmazonES"

다음은 us-east-1 역할을 이용하여 Kibana에 Amazon Cognito 인증을 사용하는 도메인을 CognitoAccessForAmazonES 리전에 만들어 Cognito_Auth_Role:에 도메인 액세스를 제공하는 예입니다.

aws es create-elasticsearch-domain --domain-name my-domain --region us-east-1 --access-policies '{ "Version":"2012-10-17", "Statement":[{"Effect":"Allow","Principal":{"AWS": ["arn:aws:iam::123456789012:role/Cognito_Auth_Role"]},"Action":"es:ESHttp*","Resource":"arn:aws:es:us-east-1:123456789012:domain/*" }]}' --elasticsearch-version "6.0" --elasticsearch-cluster-config InstanceType=m4.xlarge.elasticsearch,InstanceCount=1 --ebs-options EBSEnabled=true,VolumeSize=10 --cognito-options Enabled=true,UserPoolId="us-east-1_123456789",IdentityPoolId="us-east-1:12345678-1234-1234-1234-123456789012",RoleArn="arn:aws:iam::123456789012:role/CognitoAccessForAmazonES"

도메인이 처리를 마친 후 추가 구성 단계는 인증된 역할 허용자격 증명 공급자 구성를 참조하십시오.

인증 구성(AWS Amazon Cognito)SDKs

AWS SDKs(Android 및 iOS SDKs 제외)는 Amazon Elasticsearch Service 구성 API 참조CognitoOptions 작업에 대한 CreateElasticsearchDomain 파라미터를 포함하여 UpdateElasticsearchDomainConfig에 정의된 모든 작업을 지원합니다. AWS SDKs 설치 및 사용에 대한 자세한 내용은 AWS 소프트웨어 개발 키트를 참조하십시오.

도메인이 처리를 마친 후 추가 구성 단계는 인증된 역할 허용자격 증명 공급자 구성를 참조하십시오.

인증된 역할 허용

기본적으로 자격 증명 풀 소개의 지침에 따라 구성한 인증된 IAM 역할은 Kibana 액세스에 필요한 권한이 없습니다. 역할에 추가 권한을 부여해야 합니다.

자격 증명 기반 정책에 이러한 권한을 포함시킬 수 있지만, 인증된 사용자가 모든 도메인에 액세스할 수 있도록 하려는 경우가 아니면 단일 도메인에 연결된 Amazon ES리소스 기반 정책이 더 나은 접근 방식입니다.

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "AWS": [ "arn:aws:iam::123456789012:role/Cognito_identitypoolAuth_Role" ] }, "Action": [ "es:ESHttp*" ], "Resource": "arn:aws:es:region:123456789012:domain/domain-name/*" } ] }

Amazon ES 도메인에 리소스 기반 정책을 추가하는 방법에 대한 자세한 내용은 액세스 정책 구성. 단원을 참조하십시오.

자격 증명 공급자 구성

Kibana에 Amazon Cognito 인증을 사용하도록 도메인을 구성하면 Amazon ES는 사용자 풀에 앱 클라이언트를 추가하고 사용자 풀을 자격 증명 풀에 인증 공급자로 추가합니다. 다음 스크린샷은 콘솔의 앱 클라이언트 설정Amazon Cognito 페이지를 보여줍니다.


                Amazon Cognito앱 클라이언트 설정을 보여주는  콘솔
주의

앱 클라이언트의 이름을 바꾸거나 삭제하지 마십시오.

사용자 풀을 어떻게 구성했느냐에 따라 사용자 계정을 수동으로 만들어야 할 수도 있고, 사용자가 직접 스스로의 계정을 만들게 할 수도 있습니다. 이러한 설정이 허용되는 경우 추가 조치가 필요 없습니다. 그러나 외부 자격 증명 공급자 사용을 선호하는 사람들이 많습니다.

SAML 2.0 자격 증명 공급자를 활성화하려면 SAML 메타데이터 문서를 제공해야 합니다. Login with Amazon, Facebook, Google 같은 소셜 자격 증명 공급자를 사용하려면 이런 공급자들에게서 받은 앱 ID와 앱 암호를 가지고 있어야 합니다. 자격 증명 공급자는 자유롭게 조합하여 사용할 수 있습니다. 공급자를 추가하면 아래 스크린샷에 보이는 대로 로그인 페이지에 옵션이 추가됩니다.


                옵션이 여러 개인 로그인 페이지

사용자 풀을 구성하는 가장 쉬운 방법은 Amazon Cognito 콘솔을 사용하는 것입니다. 외부 자격 증명 공급자를 추가하려면 자격 증명 공급자 페이지를 사용하고, 도메인의 앱 클라이언트에 대해 자격 증명 공급자를 활성화 및 비활성화하려면 앱 클라이언트 설정Amazon ES 페이지를 사용합니다. 예를 들어 자체 SAML 자격 증명 공급자를 활성화하고 Cognito 사용자 풀을 자격 증명 공급자로 비활성화할 수 있습니다.

지침은 https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-identity-federation.html사용자 풀에서 연동 사용사용자 풀 앱에 대한 자격 증명 공급자 설정 지정Amazon Cognito 개발자 안내서을 참조하십시오.

(선택 사항) 세분화된 액세스 구성

기본 자격 증명 풀 설정은 로그인한 모든 사용자를 동일한 IAM 역할(Cognito_identitypoolAuth_Role)에 할당한다는 사실을 눈치채셨을 것입니다. 다시 말해 모든 사용자는 동일한 AWS 리소스에 액세스할 수 있습니다. 와 세분화된 액세스 제어를 함께 사용하려는 경우(예: 조직의 분석가가 여러 인덱스에 대한 읽기 전용 액세스 권한을 갖지만 개발자가 모든 인덱스에 대한 쓰기 액세스 권한을 갖도록 하려는 경우)다음 두 가지 옵션이 있습니다.Amazon Cognito——

  • 사용자 그룹을 생성하고 자격 증명 공급자가 사용자 인증 토큰을 기반으로 IAM 역할을 선택하도록 구성합니다(권장).

  • 자격 증명 공급자가 하나 이상의 규칙을 기반으로 IAM 역할을 선택하도록 구성합니다.

다음 스크린샷과 같이 콘솔의 자격 증명 풀 편집Amazon Cognito 페이지를 사용하여 이러한 옵션을 구성합니다. 세분화된 액세스 제어가 포함된 연습은 단원을 참조하십시오.자습서: IAM 마스터 사용자와 Amazon Cognito.


                인증 공급자를 위한 역할 옵션
중요

기본 역할과 마찬가지로 Amazon Cognito는 각 추가 역할의 신뢰 관계에 속해야 합니다. 자세한 내용은 https://docs.aws.amazon.com/cognito/latest/developerguide/role-based-access-control.html#creating-roles-for-role-mapping역할 매핑을 위한 역할 생성Amazon Cognito 개발자 안내서을 참조하십시오.

사용자 그룹과 토큰

사용자 그룹을 생성할 때 그 그룹의 구성원에 대한 IAM 역할을 선택합니다. 그룹 생성에 대한 자세한 내용은 https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-user-groups.html사용자 그룹Amazon Cognito 개발자 안내서을 참조하십시오.

사용자 그룹을 하나 이상 만든 후 인증 공급자를 구성하여 사용자에게 자격 증명 풀의 기본 역할 대신 그룹 역할을 할당할 수 있습니다. 토큰으로부터 역할 선택 옵션을 선택합니다. 그런 다음 기본 인증된 역할 사용 또는 거부를 선택하여 자격 증명 풀이 그룹의 일부가 아닌 사용자를 처리하는 방법을 지정합니다.

Rules

규칙은 기본적으로 if가 순차적으로 평가하는 일련의 Amazon Cognito 문입니다. 예를 들어 사용자의 이메일 주소에 @corporate가 포함된 경우, Amazon Cognito는 해당 사용자를 Role_A로 할당합니다. 사용자의 이메일 주소에 @subsidiary가 포함된 경우, Role_B로 할당합니다. 그렇지 않은 경우 사용자에게 기본 인증된 역할을 할당합니다.

자세한 내용은 https://docs.aws.amazon.com/cognito/latest/developerguide/role-based-access-control.html#using-rules-to-assign-roles-to-users규칙 기반 매핑을 사용하여 사용자에게 역할 할당Amazon Cognito 개발자 안내서을 참조하십시오.

(선택 사항) 로그인 페이지 사용자 지정

콘솔의 UI 사용자 지정 페이지에서는 사용자 지정 로고를 업로드하고 로그인 페이지에 대한 CSS를 변경할 수 있습니다.Amazon Cognito CSS 속성에 대한 지침과 전체 목록은 https://docs.aws.amazon.com/cognito/latest/developerguide/cognito-user-pools-app-ui-customization.html사용자 풀에 대한 앱 UI 사용자 지정 설정 지정Amazon Cognito 개발자 안내서을 참조하십시오.

(선택 사항) 어드밴스 보안 구성

Amazon Cognito 사용자 풀은 멀티 팩터 인증, 손상된 자격 증명 확인, 조정 인증과 같은 어드밴스 보안 기능을 지원합니다. 자세한 내용은 https://docs.aws.amazon.com/cognito/latest/developerguide/managing-security.html보안 관리Amazon Cognito 개발자 안내서를 참조하십시오.

Testing

구성에 만족하면 사용자 경험이 기대에 부합하는지 확인하십시오.

Kibana에 액세스하려면

  1. 웹 브라우저에서 https://elasticsearch-domain/_plugin/kibana/로 이동합니다.

  2. 선호하는 자격 증명을 사용하여 로그인합니다.

  3. Kibana가 로드되면 인덱스 패턴을 한 개 이상 구성합니다. Kibana는 이러한 패턴을 사용하여 분석할 인덱스를 식별하기 때문입니다. *를 입력하고 다음 단계를 선택한 후 Create index pattern(인덱스 패턴 생성).을 선택합니다.

  4. 데이터를 검색하거나 탐색하려면 Discover(검색).를 선택합니다.

이 과정의 어느 단계든 실패하면 일반적인 구성 문제에서 문제 해결 정보를 확인하십시오.

Limits

Amazon Cognito에는 다양한 리소스에 대한 소프트웨어 제한이 있습니다. 많은 수의 Amazon ES 도메인에 대해 Kibana 인증을 활성화하려면 의 제한Amazon Cognito을 검토하고 필요에 따라 한도 증가를 요청하십시오.

각 Amazon ES 도메인은 사용자 풀에 앱 클라이언트를 추가하여 인증 공급자를 자격 증명 풀에 추가합니다. 10개 이상의 도메인에 Kibana 인증을 사용할 경우 "자격 인증 풀당 최대 Amazon Cognito 사용자 풀 공급자" 제한에 걸릴 수도 있습니다. 제한을 초과할 경우 Kibana에 Amazon ES 인증을 사용하려고 구성을 시도하는 모든 Amazon Cognito 도메인은 처리 중. 구성 상태에 고착될 수 있습니다.

일반적인 구성 문제

다음 표는 일반적인 구성 문제와 해결책 목록입니다.

구성Amazon ES
문제 솔루션

(콘솔)Amazon ES can't create the role

올바른 IAM 권한이 없습니다. 에 지정된 권한을 추가하십시오.Amazon Cognito 인증 구성(콘솔).

(콘솔)User is not authorized to perform: iam:PassRole on resource CognitoAccessForAmazonES

iam:PassRole 역할에 대한 CognitoAccessForAmazonES 권한이 없습니다. 사용자 계정에 다음 정책을 연결합니다.
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "iam:PassRole" ], "Resource": "arn:aws:iam::123456789012:role/service-role/CognitoAccessForAmazonES" } ] }

또는 IAMFullAccess 정책을 연결할 수 있습니다.

User is not authorized to perform: cognito-identity:ListIdentityPools on resource

에 대한 읽기 권한이 없습니다.Amazon Cognito. 사용자 계정에 AmazonCognitoReadOnly 정책을 연결하십시오.

An error occurred (ValidationException) when calling the CreateElasticsearchDomain operation: Amazon Elasticsearch must be allowed to use the passed role

Amazon ES가 CognitoAccessForAmazonES 역할의 신뢰 관계에 지정되지 않았습니다. 역할이 에 지정된 신뢰 관계를 사용하는지 확인하십시오.역할 소개CognitoAccessForAmazonES. 또는 콘솔을 이용해 Amazon Cognito 인증을 구성하십시오. 콘솔에서 자동으로 역할을 만들어줍니다.

An error occurred (ValidationException) when calling the CreateElasticsearchDomain operation: User is not authorized to perform: cognito-idp:action on resource: user pool

--cognito-options에 지정된 역할에 Amazon Cognito. 액세스 권한이 없습니다. 역할에 AWS 관리 AmazonESCognitoAccess 정책이 연결되었는지 확인하십시오. 또는 콘솔을 이용해 Amazon Cognito 인증을 구성하십시오. 콘솔에서 자동으로 역할을 만들어줍니다.
An error occurred (ValidationException) when calling the CreateElasticsearchDomain operation: User pool does not exist

Amazon ES가 사용자 풀을 찾을 수 없습니다. 사용자 풀을 생성했고 ID가 올바른지 확인합니다. ID를 찾으려면 Amazon Cognito 콘솔을 이용하거나 다음 AWS CLI 명령을 이용합니다.

aws cognito-idp list-user-pools --max-results 60 --region region

An error occurred (ValidationException) when calling the CreateElasticsearchDomain operation: IdentityPool not found

Amazon ES가 자격 증명 풀을 찾을 수 없습니다. 사용자 풀을 생성했고 ID가 올바른지 확인합니다. ID를 찾으려면 Amazon Cognito 콘솔을 이용하거나 다음 AWS CLI 명령을 이용합니다.

aws cognito-identity list-identity-pools --max-results 60 --region region

An error occurred (ValidationException) when calling the CreateElasticsearchDomain operation: Domain needs to be specified for user pool

사용자 풀에 도메인 이름이 없습니다. Amazon Cognito 콘솔 또는 다음 AWS CLI 명령을 이용해 도메인 이름을 구성할 수 있습니다.
aws cognito-idp create-user-pool-domain --domain name --user-pool-id id
Kibana 액세스
문제 솔루션
로그인 페이지에 선호하는 자격 증명 공급자가 보이지 않습니다.

Amazon ES에 지정한 대로 자격 증명 공급자 구성. 앱 클라이언트에 자격 증명 공급자를 활성화했는지 확인하십시오.

로그인 페이지가 나의 조직과 연결된 것처럼 보이지 않습니다.

단원을 참조하십시오.(선택 사항) 로그인 페이지 사용자 지정.

나의 로그인 자격 증명이 통하지 않습니다.

에 지정한 대로 자격 증명 공급자를 구성했는지 확인하십시오.자격 증명 공급자 구성.

사용자 풀을 자격 증명 공급자로 사용하는 경우 계정이 존재하고 콘솔의 사용자 및 그룹Amazon Cognito 페이지에서 확인되었는지 확인합니다.

Kibana가 전혀 로드되지 않거나 올바로 작동하지 않습니다.

Amazon Cognito 인증된 역할이 Kibana에 액세스하고 사용하려면 그 도메인에 대한 es:ESHttp* 권한이 필요합니다(/* 에 지정된 대로 액세스 정책을 추가했는지 확인하십시오.인증된 역할 허용.

Invalid identity pool configuration. Check assigned IAM roles for this pool. Amazon Cognito에는 인증된 사용자를 대신하여 IAM 역할을 수임할 권한이 없습니다. 다음을 포함하도록 역할에 대한 신뢰 관계를 수정합니다.
{ "Version": "2012-10-17", "Statement": [{ "Effect": "Allow", "Principal": { "Federated": "cognito-identity.amazonaws.com" }, "Action": "sts:AssumeRoleWithWebIdentity", "Condition": { "StringEquals": { "cognito-identity.amazonaws.com:aud": "identity-pool-id" }, "ForAnyValue:StringLike": { "cognito-identity.amazonaws.com:amr": "authenticated" } } }] }
Token is not from a supported provider of this identity pool. 이 일반적인 오류는 사용자 풀에서 앱 클라이언트를 삭제할 때 발생합니다. 새 브라우저 세션에서 Kibana를 열어 보십시오.

Kibana에 대한 Amazon Cognito 인증 비활성화

다음 절차에 따라 Kibana에 대한 Amazon Cognito 인증을 비활성화합니다.

Kibana에 대한 Amazon Cognito 인증을 비활성화하려면(콘솔)

  1. https://aws.amazon.com으로 이동하여 Sign In to the Console(콘솔에 로그인).을 선택합니다.

  2. Analytics에서 Elasticsearch 서비스.를 선택합니다.

  3. 탐색 창의 My domains(내 도메인)에서 구성할 도메인을 선택합니다.

  4. 작업, 인증 수정을 선택합니다.

  5. Amazon Cognito 인증 Amazon Cognito Amazon Cognito 인증 활성화 확인란의 선택을 취소합니다.Amazon Cognito

  6. 제출.을 선택합니다.

중요

Amazon Cognito 사용자 풀과 자격 증명 풀이 더 이상 필요하지 않으면 삭제하십시오. 그렇지 않으면 계속 요금이 부과될 수 있습니다.

Kibana에 Amazon Cognito 인증을 사용하는 도메인 삭제

Kibana에 Amazon Cognito 인증을 사용하는 도메인이 처리 중 구성 상태에서 고착되지 않도록 하려면 연결된 Amazon ES 사용자 풀과 자격 증명 풀을 삭제하기 에 Amazon Cognito 도메인을 삭제합니다.