使 AWS API 网关只能作为 SNS 订阅端点访问
Make AWS API Gateway accessible only as SNS subscription endpoint
在我当前的项目中,我们配置了将 Cloudwatch 警报转发到 Slack 频道。为此,我们使用 AWS SNS 主题 + API 订阅该主题的网关,并将警报转发到 Slack webhook。
我正在尝试解决的问题 - 目前提到的 API 网关的 REST 资源是 public(它不需要任何身份验证并且可以从 Internet 获得)。我如何配置 API 网关使其只能作为 SNS 订阅端点使用?
您需要创建端点类型为 API 的网关:Private
并且您需要为 SNS 创建一个 VPC 端点以便在内部访问该端点。
更多信息:https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-vpc-endpoint-policies.html
在我当前的项目中,我们配置了将 Cloudwatch 警报转发到 Slack 频道。为此,我们使用 AWS SNS 主题 + API 订阅该主题的网关,并将警报转发到 Slack webhook。
我正在尝试解决的问题 - 目前提到的 API 网关的 REST 资源是 public(它不需要任何身份验证并且可以从 Internet 获得)。我如何配置 API 网关使其只能作为 SNS 订阅端点使用?
您需要创建端点类型为 API 的网关:Private
并且您需要为 SNS 创建一个 VPC 端点以便在内部访问该端点。 更多信息:https://docs.aws.amazon.com/apigateway/latest/developerguide/apigateway-vpc-endpoint-policies.html