Amazon Elasticsearch 클러스터에서 세분화된 액세스 제어 오류를 해결하려면 어떻게 해야 합니까?

최종 업데이트 날짜: 2021년 3월 5일

Amazon Elasticsearch(Amazon ES) 클러스터에서 액세스 제어 오류가 발생했습니다. 액세스 제어 오류를 해결하고 확인하려면 어떻게 해야 합니까?

간략한 설명

Amazon ES 클러스터에서 다음과 같은 세분화된 액세스 제어 오류 중 하나가 발생할 수 있습니다.

  • "security_exception", "reason":"no permissions" 403 오류("security_exception","reason":"no permissions" 403 errors)
  • "사용자: 다음에 대한 익명 수행 권한이 없습니다. iam:PassRole(User: anonymous is not authorized to perform: iam:PassRole)"
  • "Elasticsearch 검색 데이터를 찾을 수 없음(Couldn’t find any Elasticsearch data)"
  • 401 권한 없음 오류

이 문서에서는 이러한 오류를 해결하는 것 외에도 Amazon ES를 사용하여 다음 작업을 완료하는 방법을 보여줍니다.

  • 현장 조정 액세스 제어가 활성화된 경우 다른 AWS 서비스를 Amazon ES와 통합
  • 세분화된 액세스 제어를 사용하여 익명 액세스 허용
  • 사용자 테넌시를 기반으로 특정 인덱스, 대시보드 및 시각화에 대한 세분화된 액세스 제공
  • 현장 수준에서 세분화된 액세스 제어 사용

해결 방법

"security_exception", "reason":"no permissions" 403 오류("security_exception","reason":"no permissions" 403 errors)

이 오류를 해결하려면 먼저 Amazon ES 클러스터의 사용자 또는 백엔드 역할에 필요한 권한이 있는지 확인합니다. 그런 다음 사용자 또는 백엔드 역할을 역할에 매핑합니다.

"사용자: 다음에 대한 익명 수행 권한이 없습니다. iam:PassRole(User: anonymous is not authorized to perform: iam:PassRole)"

수동 스냅샷을 등록하려고 할 때 이 오류가 나타날 수 있습니다. 수동 스냅샷을 등록하는 데 사용한 Amazon Identity and Access Management(IAM) 역할에 필요한 일반 권한뿐만 아니라manage_snapshots 역할을 IAM 역할에 매핑해야 합니다. 그런 다음 해당 IAM 역할을 사용하여 서명된 요청을 도메인에 보냅니다.

"Elasticsearch 검색 데이터를 찾을 수 없음(Couldn’t find any Elasticsearch data)"

Amazon ES 7.9로 업그레이드한 후 인덱스 패턴을 생성하려고 할 때 이 오류가 나타날 수 있습니다. Amazon ES 7.9에서는 /_resolve API를 사용하여 세분화된 액세스 제어 클러스터에서 새 인덱스 패턴을 만들 때 모든 인덱스 및 별칭에 “indices:admin/resolve/index”를 추가해야 합니다. 이 권한이 없기 때문에 Amazon ES에서 403 오류 상태 코드가 발생합니다. 이로 인해 차례로 Kibana에서 500 오류 상태 코드에 매핑됩니다. 따라서 인덱스는 나열되지 않습니다.

401 권한 없음 오류

curl -u “user:password” <ES-ENDPOINT>를 사용하는 기본 자격 증명에 “$” 또는 “!”를 사용하면 401 권한 없음 오류가 발생할 수 있습니다. 다음 예와 같이 자격 증명을 작은 따옴표로 묶어야 합니다.

curl -u 'user:password' <ES-ENDPOINT>

현장 조정 액세스 제어가 활성화된 경우 다른 AWS 서비스를 Amazon ES와 통합

현장 조정 액세스 제어가 활성화된 경우 다른 AWS 서비스를 Amazon ES와 통합하려면 해당 서비스에 대한 IAM 역할에 적절한 권한을 부여해야 합니다. 자세한 내용은 세분화된 액세스 제어와 통합 사용에 대한 다음 설명서를 참조하세요.

세분화된 액세스 제어를 사용하여 익명 액세스 허용

Amazon ES의 관리 특성으로 인해 현재 익명 액세스는 지원되지 않습니다.

사용자 테넌시를 기반으로 특정 인덱스, 대시보드 및 시각화에 대한 세분화된 액세스 제공

특정 인덱스, 대시보드 또는 시각화에 대한 세분화된 액세스를 제공하려면 테넌트의 Kibana 인덱스에 대한 사용 권한이 있는 역할에 사용자를 매핑해야 합니다.

.kibana_<hash>_<tenant_name>

자세한 내용은 Kibana 인덱스 관리를 참조하세요.

현장 수준에서 세분화된 액세스 제어 사용

현장 수준에서 세분화된 액세스 제어를 사용하려면 필요한 현장 수준 보안으로 역할을 설정하세요. 그런 다음 만든 역할에 사용자를 매핑합니다.


이 문서가 도움이 되었나요?


Do you need billing or technical support?