amazon-web-services - 如何在 Appsync 中使用 OpenID Connect 验证订阅?

标签 amazon-web-services graphql aws-appsync

我正在通过 AWS Appsync 进行 graphql 订阅,并将 OpenID Connect 配置为身份验证方法。它适用于变异查询,但不适用于订阅

type Mutation {
    requestTransaction(transaction: TransactionRequestInput!): TransactionRequestACK!
        @aws_oidc
    responseTransaction(transaction: TransactionResponseInput!): TransactionResponse!
        @aws_iam @aws_api_key
}


type Subscription {
    responseTransaction(id: ID!): Transaction!
        @aws_subscribe(mutations: ["responseTransaction"])
        @aws_oidc
}

上面的架构是我正在使用的架构。每个字段都配置了一个 lambda 作为解析器。我可以使用 OIDC jwt token 向 requestTransaction 发送 mutation 请求。但是当我发送订阅请求时,解析器不会被触发。客户端的订阅处于挂起状态,没有错误。使用 OIDC 订阅是否需要任何特殊配置?

最佳答案

Joey Yi Zhu,截至今天,即使您在输入中输入 OIDC token ,这也是 AWS Appsync 查询控制台中的一个已知错误。在订阅的情况下它不会传递,但在查询和突变的情况下它确实可以正常工作(您可以在浏览器的开发控制台中验证相同的内容)。在联系AWS支持后我了解到了这一点,因为我也面临着同样的问题。 如果您通过 aws-appsync 包等其他方式使用 OIDC 测试订阅,它会按预期工作。

关于amazon-web-services - 如何在 Appsync 中使用 OpenID Connect 验证订阅?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62283062/

相关文章:

amazon-web-services - AWS Instance Scheduler 问题 - 计划名称未知

amazon-web-services - 当我 FTP 到远程服务器时,如何强制 Amazon EC2 实例使用我的弹性 IP?

amazon-web-services - 使用 ec2 标签在 ansible 上创建 Metric 警报

javascript - 无效的 Hook 调用。钩子(Hook)只能在使用 react-apollo 的函数组件内部调用

amazon-web-services - 在 DynamoDB 中保存 AWS Cognito 用户

c# - 为什么我的 Entity Framework 测试失败了?

graphql - GraphQL 中数字的枚举 (js)

c# - GraphQL : Not Getting EF Related objects after implementing Types

mongodb - AppSync 中的 S3Object GraphQL 类型与 Lambda 数据源?

amazon-web-services - AWS AppSync 中订阅的自定义筛选