我制定了一个白名单策略,其中包含我想从中获取 IP 的 IP 地址列表
下面的示例,考虑策略 ARN 是 arn:aws:iam::0000000:policy/Whitelister
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Resource": "*",
"Condition": {
"NotIpAddress": {
"aws:SourceIp": [
"W.X.Y.Z",
"A.B.C.D"
]
}
}
}
]
}
我有一个 AWS Elasticsearch(ES) 帐户,它允许基于 JSON 的访问策略。我如何在 AWS ES 的策略中使用上述策略来限制对这些 IP 的访问。
我现在有硬写的 IP,但这会导致冗余,更新 IP 会很困难。
{
"Version": "2012-10-17",
"Statement": [
{
"Effect": "Deny",
"Principal": "*",
"Action": "*",
"Resource": [
"arn:aws:es:****************/domain-name/*",
"arn:aws:es:****************/domain-name/"
],
"Condition": {
"NotIpAddress": {
"aws:SourceIp": [
"W.X.Y.Z",
"A.B.C.D"
]
}
}
}
]
}
最佳答案
不幸的是,您 不能在 ES 域的 IP 策略中使用 您的策略。
让我详细说明一下,因为我认为 基于资源的策略 之间存在混淆,例如 ES 域的 IP 策略和 基于身份的策略 用于 IAM 用户、角色或组。 AWS docs 中解释了这些差异。
简而言之,您的政策 arn:aws:iam::0000000:policy/Whitelister
就是所谓的 managed-policy 。托管策略只能附加到 IAM identity
,它可以是 IAM 用户、组或角色 。它们不能附加到基于资源的策略。
关于amazon-web-services - 将策略附加到 AWS Elasticsearch,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/62255998/