与多个认知用户池进行同步



我正在开发一个使用 AppSync GraphQL 作为 API 的 Amplify 应用程序。

我正在尝试拥有 2 个单独的用户池,可以用作此 GraphQL API 的身份验证源。

按照 Amplify 教程,我能够部署 AppSync GraphQL API,但我无法选择配置多个用户池。

我查看了 AWS 控制台,发现我可以在"其他授权提供程序"下添加更多用户池,但是当我在查询部分尝试时,只有第一个用户池有效。API 响应

"message": "Not Authorized to access listTodos on type Query"

这是我的架构:

type Todo @model {
id: ID!
name: String!
description: String
}

我还尝试将第二个用户池添加为Amplify生成的身份池的身份验证提供程序,但运气也不好。

是否可以在单个 AppSync API 中使用 2 个用户池?我在这里错过了什么?

谢谢。

我遇到了同样的问题,但是。终于我想通了。

您必须使用多个授权向架构添加额外的指令。在这种情况下,应按如下方式更新架构:

type Todo @model @aws_cognito_user_pools {
id: ID!
name: String!
description: String
}

您可以从此处找到有关此内容的更多信息: https://aws.amazon.com/blogs/mobile/using-multiple-authorization-types-with-aws-appsync-graphql-apis/

最新更新