5

AWS Elasticsearch를 설정 한 후 고정 IP 서버에 Logstash 및 Kibana 프록시를 설치하고이 도메인 액세스 정책을 ES에 추가 했으므로 잘 작동합니다. 다음 AWS ES 액세스 정책에 추가 IAM Managment를 콘솔에서와 관계있는 ARN를 복사AWS Elasticsearch 서비스 (정적 IP 및 Lambda ARN)에 다중 도메인 액세스 정책 추가

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Sid": "", 
     "Effect": "Allow", 
     "Principal": { 
     "AWS": "*" 
     }, 
     "Action": "es:*", 
     "Resource": "arn:aws:es:ap-southeast-1:323137313233:domain/sg-es-logs/*", 
     "Condition": { 
     "IpAddress": { 
      "aws:SourceIp": [ 
      "192.192.192.192" 
      ] 
     } 
     } 
    } 
    ] 
} 

는 지금은 람다 함수는 AWS ES에 es:ESHttpDelete 동작을 실행할 수 있도록해야합니다, 그래서 기존 역할 service-role/Elasticsearch과 기능을 만들어 이 문제를 해결하려면

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Effect": "Allow", 
     "Principal": { 
     "AWS": [ 
      "arn:aws:iam:: 323137313233:role/service-role/Elasticsearch" 
     ] 
     }, 
     "Action": [ 
     "es:*" 
     ], 
     "Resource": "arn:aws:es:ap-southeast-1:323137313233:domain/sg-es-logs/*" 
    } 
    ] 
} 

문제가 있습니다 ES 정적 IP 또는 ARN에 대해 도메인 액세스 정책을 선택해야하지만 둘 다에 대해 선택해서는 안됩니다. 콘솔을 사용하지 않고 수동으로 병합하려고했을 때 작동하지 않았습니다. AWS 설명서를 확인했지만 가능한지 여부는 언급하지 않았습니다.

+1

FWIW, 아마존 개발자 지원은 매우 훌륭하지만 그것은 당신에게 월 $ 30 비용 : 그래서, 최종 정책 같은 것이 될 것이다. 나는 답을 모른다. 당신이 말했듯이, 의사들은 실제로하고 싶은 일을하는 법을 말하지 않는다. –

+1

첫 번째 정책에 금지 된 사용자 필드가 있습니다. 어떻게 작동 시키셨습니까? 주체를 지정하는 대신 주 ARN을 비교하는 두 번째 조건을 추가하십시오 – JayEye

답변

2

Statement 배열에 정책의 JSON 형식으로 여러 정책 문을 추가 할 수 있습니다.

{ 
    "Version": "2012-10-17", 
    "Statement": [ 
    { 
     "Sid": "", 
     "Effect": "Allow", 
     "Principal": { 
     "AWS": "*" 
     }, 
     "Action": "es:*", 
     "Resource": "arn:aws:es:ap-southeast-1:323137313233:domain/sg-es-logs/*", 
     "Condition": { 
     "IpAddress": { 
      "aws:SourceIp": [ 
      "192.192.192.192" 
      ] 
     } 
     } 
    }, 
    { 
     "Effect": "Allow", 
     "Principal": { 
     "AWS": [ 
      "arn:aws:iam:: 323137313233:role/service-role/Elasticsearch" 
     ] 
     }, 
     "Action": [ 
     "es:*" 
     ], 
     "Resource": "arn:aws:es:ap-southeast-1:323137313233:domain/sg-es-logs/*" 
    } 
    ] 
}