首页 > 解决方案 > 链接到 Cognito 用户池的 AWS Amplify GraphQL 架构

问题描述

我正在使用 AWS Amplify 创建一个网站平台,该平台主要用作其注册用户的目录,具有与业务领域相关的各种属性。平台的两个主要用户将是注册用户和普通未认证用户,他们将能够根据注册用户的属性,例如,等列出和过滤注册用户locationage注册用户将在会员区域设置他们的所有属性。

一些属性存储在 Cognito 中,例如nameaddress并且是使用 Amplify Authentication设置的。这些是我希望通过 Amplify GraphQL功能查询和变异的字段。

@auth 我可以看到使用指令可以实现很酷的授权模式。

是否可以利用 GraphQL 转换,以便我可以创建一个模型模式,其中一些字段链接到 Cognito 用户池,而一些字段在 GraphQL 模式中定义,以便它们是可查询和可变的?事实上,我想为注册用户提供更新除电子邮件之外的所有字段的工具。或者也许有一些 Amplify 支持的服务组合,我可以将它们连接在一起以实现相同的目标?

我是 AWS Serveless 生态系统的新手,到目前为止一直令人兴奋!

标签: amazon-web-servicesgraphqlamazon-cloudformationamazon-cognitoaws-amplify

解决方案


我发现上面可以使用@function指令来实现。它允许我们将 lambda 解析器连接到模式。在 lambda 中,我们几乎可以执行任何操作,例如读取和更新 Amazon Cognito 用户池。

https://aws-amplify.github.io/docs/cli-toolchain/graphql#function


推荐阅读