You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

AWS API Gateway资源策略:如何仅对webhook端点做IP访问限制?

问题分析与解决方案

问题根源

你之前的两个方案都出现范围错误,核心原因是第二个允许语句的资源范围太窄(仅匹配{proxy+}路径下的端点),而AWS资源策略默认是拒绝所有未明确允许的请求。所以非{proxy+}路径下的端点会被默认拒绝,看起来像是IP限制影响了所有端点。

正确的资源策略配置

以下两种方案都能实现「仅限制/webhook端点的IP访问,其他端点不受影响」的需求:

方案1:Deny优先(推荐,逻辑更清晰)

通过Deny语句拦截非指定IP对/webhook的访问,同时允许所有IP访问所有端点(Deny会优先覆盖/webhook的允许规则):

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Deny",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "arn:aws:execute-api:eu-central-1:你的账号ID:你的API ID/*/POST/webhook",
      "Condition": {
        "NotIpAddress": {
          "aws:SourceIp": [
            "X.XX.XX.XX/32",
            "X.XXX.XXX.XXX/32"
          ]
        }
      }
    },
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "arn:aws:execute-api:eu-central-1:你的账号ID:你的API ID/*/*/*"
    }
  ]
}

方案2:Allow精准匹配

先允许指定IP访问/webhook,再允许所有IP访问除/webhook外的所有端点:

{
  "Version": "2012-10-17",
  "Statement": [
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "arn:aws:execute-api:eu-central-1:你的账号ID:你的API ID/*/POST/webhook",
      "Condition": {
        "IpAddress": {
          "aws:SourceIp": [
            "X.XX.XX.XX/32",
            "X.XXX.XXX.XXX/32"
          ]
        }
      }
    },
    {
      "Effect": "Allow",
      "Principal": "*",
      "Action": "execute-api:Invoke",
      "Resource": "arn:aws:execute-api:eu-central-1:你的账号ID:你的API ID/*/*/*",
      "Condition": {
        "StringNotEquals": {
          "execute-api:ResourcePath": "/webhook"
        }
      }
    }
  ]
}

关键注意事项

  • 替换策略中的你的账号ID、你的API ID为实际值(可在API Gateway控制台的API详情页获取)
  • 确保资源ARN的阶段部分用*,匹配所有部署阶段
  • 配置完成后必须重新部署API,策略才会生效
  • 测试时分别用允许IP和非允许IP访问/webhook,同时验证其他端点的正常访问

内容的提问来源于stack exchange,提问作者F16R

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.13 09:59:53