带有AWS AppSync的多种授权类型

时间:2018-07-04 20:12:23

标签: aws-appsync

似乎AppSync项目只能配置为一种授权类型(API_KEYAWS_IAM等)。我使用AMAZON_COGNITO_USER_POOLS作为主要类型,但是我也有一个(Node.js)客户端,我想为其提供API_KEY访问权限。

这可能吗?

如果没有,您能提出其他建议吗?

3 个答案:

答案 0 :(得分:1)

正如您所注意到的,目前每个AWS AppSync终端节点不能启用多个授权模式。替代方法是使用相同的架构配置一个单独的AppSync终端节点(您可以在一个AWS账户内每个区域最多创建25个),并使用不同的授权方案对其进行配置。

答案 1 :(得分:1)

如果您没有订阅,Rohan的回答将有效。如果您确实在一个AppSync端点中有一个预订,并且在另一个AppSync端点中对数据进行了突变,那么在幕后数据被更新时,该预订将不会更新(这很有意义,因为该预订是作为AppSync中的侦听器附加的)端点)。在AppSync支持多种方法之前,您可能需要尝试一下IAM。 here中有一些有关如何使其在App + Lambda中与Cognito一起使用的详细信息。该示例在python中提供,但对于node.js,您将生成诸如https://www.npmjs.com/package/aws4之类的签名。如果您在其他位置运行node.js客户端,则只要您生成一些API密钥

答案 2 :(得分:1)

自2019年5月起,我们很高兴宣布在同一API中支持多种身份验证类型! https://aws.amazon.com/blogs/mobile/using-multiple-authorization-types-with-aws-appsync-graphql-apis/