我制定了一个白名单策略,其中包含我想从中获取 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/

10-16 01:07