Hasura Webhook使用Amazon Cognito进行身份验证

时间:2019-02-06 00:44:14

标签: amazon-web-services aws-lambda amazon-cognito hasura

我的问题更多是与使用Amazon Cognito设计Webhook架构有关。在浏览了关于webhook auth的hasura的文档后,我想到了以下设计。可行吗注意:AWS lambda位于启用了授权的API网关后面。

enter image description here

现在

  • 您不认为应用程序进行身份验证以及每项请求的hasura开销是多少?
  • 在hasura和cognito之间没有lambda可以实现吗?
  • hasura是否可以基于用户凭据向应用程序和webhook提供身份验证以在Cognito中进行验证?

感谢您的反馈。

1 个答案:

答案 0 :(得分:1)

我和你有同样的问题。在尝试了许多方法之后,我认为使用Hasura JWT模式是一个好方法,并且无需任何复杂的配置即可很好地工作。看看以下流程:

  1. React App从Cognito请求令牌
  2. Cognito触发PreTokenGeneration添加Hasura声明
  3. React App从Cognito获得idToken(具有Hasura声明)

我认为最好将auth和数据分开。

注意: Cognito不支持声明值的dict类型。因此,您应该在Hasura jwt-secret中设置claims_format: 'stringified_json'。您可以查看以下问题:https://github.com/hasura/graphql-engine/issues/1176

仅供参考: * https://docs.aws.amazon.com/cognito/latest/developerguide/user-pool-lambda-pre-token-generation.html * https://docs.hasura.io/1.0/graphql/manual/auth/jwt.html#