在 API Gateway 中控制和管理对 REST API 的访问
API Gateway 支持多种用于控制和管理对 API 的访问的机制:
您可以使用以下机制进行身份验证和授权:
-
资源策略允许您创建基于资源的策略,以允许或拒绝从指定的源 IP 地址或 VPC 终端节点访问您的 API 和方法。有关更多信息,请参阅 使用 API Gateway 资源策略控制对 API 的访问。
-
标准的AWS IAM 角色和策略提供可应用于整个 API 集或各个方法的灵活且可靠的访问控制。可以使用 IAM 角色和策略来控制哪些人可以创建和管理您的 API,以及谁可以调用它们。有关更多信息,请参阅 使用 IAM 权限控制对 REST API 的访问。
-
IAM 标签 可与 IAM 策略结合使用来控制访问权限。有关更多信息,请参阅 使用标签控制对 API Gateway REST API 资源的访问。
-
接口 VPC 终端节点的终端节点策略允许您将 IAM 资源策略附加到接口 VPC 终端节点,用于改进私有 API 的安全性。有关更多信息,请参阅 在 API Gateway 中为私有 API 使用 VPC 端点策略。
-
Lambda 授权方 是 Lambda 函数,它们使用持有者令牌身份验证以及由标头、路径、查询字符串、阶段变量或上下文变量请求参数描述的信息来控制对 REST API 方法的访问。Lambda 授权方用于控制谁可以调用 REST API 方法。有关更多信息,请参阅 使用 API Gateway Lambda 授权方。
-
Amazon Cognito 用户池 可让您为 REST API 创建可自定义的身份验证和授权解决方案。Amazon Cognito 用户池用于控制谁可以调用 REST API 方法。有关更多信息,请参阅 使用 Amazon Cognito 用户池作为授权方控制对 REST API 的访问。
您可以使用以下机制执行与访问控制相关的其他任务:
-
跨源资源共享 (CORS) 可让您控制您的 REST API 响应跨域资源请求的方式。有关更多信息,请参阅 针对 API Gateway 中的 REST API 的 CORS。
-
客户端 SSL 证书 可用于验证发送到后端系统的 HTTP 请求是否来自 API Gateway。有关更多信息,请参阅 生成和配置 SSL 证书以用于 API Gateway 中的后端身份验证。
-
AWS WAF 可用于保护您的 API Gateway API 免受常见 Web 漏洞攻击。有关更多信息,请参阅 在 API Gateway 中使用 AWS WAF 保护 REST API。
您可以使用以下机制跟踪和限制您已向授权客户端授予的访问权限:
-
使用计划 可让您向客户提供 API 密钥,然后跟踪和限制每个 API 密钥的 API 阶段和方法的使用。有关更多信息,请参阅 API Gateway 中针对 REST API 的使用计划和 API 密钥 。