发布于: Jul 30, 2021

今天,我们发布了一种通过适用于 Amazon AppSync GraphQL API 调用的 Amazon Lambda 实施自定义授权逻辑的灵活、简单方式。

 AppSync 是一种托管 GraphQL 服务,可让您创建灵活的 API 来安全访问、操作和合并来自一个或多个数据源的数据,同时减少了网络调用,以此简化应用程序开发过程。 通过 AppSync,您可以创建您的应用程序通过互联网与之交互的 GraphQL API。虽然 API 终端节点可以公开访问,但它们永远不允许未经授权的访问。访问 AppSync API 始终需要授权方法(请求标头中的令牌或使用 IAM 凭证对请求本身进行签名)。直到最近,AppSync 一直提供以下不同授权模式:

  • API 密钥 
  • OpenID Connect 
  • Identity and Access Management (IAM)

我们现在为存在现有授权模式未完全涵盖的特定要求的使用案例添加了基于 Amazo Lambda 的新授权模式,允许您实施自定义授权策略来保护您的 GraphQL API。

每当请求到达 AppSync 时,所选择的 Lambda 函数将从客户端接收授权令牌,并执行开发人员定义的所需授权逻辑。AppSync 将在调用后从 Lambda 接收负载,相应地允许或拒绝 API 调用,并从 Lambda 对 AppSync 中的 GraphQL 解析器的授权调用中获取特定的上下文数据。

现在,AppSync 具有通过 Amazon Lambda 实施自定义授权逻辑的功能,它可以提供满足所有授权要求所需的灵活性。您可以通过单个 API 将基于 Amazon Lambda 的授权混合并与任何现有 AppSync 授权模式匹配,并将特定授权提供程序与 GraphQL 架构中的类型、字段或操作链接起来。

Lambda 授权程序目前在推出了 AppSync 的所有区域中都可用。有关更多详细信息,请参阅我们的博客文章和 AppSync 文档

要了解更多信息,请访问 AppSync 产品页面