我正在尝试保护Amazon VPC中托管的Elastic Search域。
我们拥有一些内部数据中心,它们尝试获取数据和将数据发布到ES端点的EC2实例。
ES域使用基于IAM和安全组的访问来保护。
在SG中,我添加了所有IP(数据中心和EC2实例) 在ES域的访问策略的主要部分中,我为数据加载添加了IAM角色。我有点受阻,因为它正在尝试同时验证IAM和IP
我只想验证数据中心的IP地址
并使用IAM角色处理EC2。
因为,我的数据中心位于VPC的外部,因此我无法担任IAM角色,因为我不能使用基于资源的策略。最好的方法是什么?
注意:数据中心已连接到vpc。
如果我保护域名的方法是正确的方法,请提供帮助吗?
ES Access Policy:
AccessPolicies:
Version: '2012-10-17'
Statement:
- Effect: Allow
Principal:
AWS:
Ref: IAMRoleForDataLoad
Action:
- 'es:ESHttpGet'
- 'es:ESHttpPost'
- 'es:ESHttpPut'
Resource:
Fn::Join:
- ''
- - 'arn:aws:es:us-east-1:'
- !Ref "AWS::AccountId"
- ':domain/'
- 'testdomain'
- "/*"
Security Groups:
ESSecurityGroup:
Type: AWS::EC2::SecurityGroup
Properties:
GroupDescription: 'Ips that Can Access Elastic Search Domain'
VpcId:
Ref: VpcId
GroupName:
Ref: SGName
SecurityGroupIngress:
- FromPort: '443'
IpProtocol: tcp
ToPort: '443'
CidrIp:
Ref: AllowIp1