gpt4 book ai didi

amazon-web-services - AWS AppSync - 未经授权的异常

转载 作者:行者123 更新时间:2023-12-04 00:14:19 24 4
gpt4 key购买 nike

我已开始使用 AWS AppSync,但遇到了权限问题。

我使用 AppSync 为我的数据创建了一个 DynamoDB 表,并设置了与我已经创建的 Cognito 用户池一起使用的授权。

我将默认操作设置为 ALLOW其中,根据 AWS 文档 - https://docs.aws.amazon.com/appsync/latest/devguide/security.html#amazon-cognito-user-pools-authorization - 默认情况下,应该允许公共(public)访问运行我的架构中定义的任何查询/变异/订阅。

上述文档还说通过添加 @aws_auth 来限制访问。到我的类型定义。我还没有添加。

所以这就是我想要的:我希望我的查询是公开的 - 不需要添加 @aws_auth指令 - 我的突变被限制在我的 Cognito 用户池中的 Admins 组中。因此,在测试查询时,我应该能够将数据返回给我,而无需在任何地方登录。

但是,当尝试在 AppSync 控制台中运行任何测试查询时,我会收到以下错误消息:

{
"errors": [
{
"errorType": "UnauthorizedException",
"message": "Unable to parse JWT token."
}
]
}

显然,这与未使用 Cognito 登录有关。

我之前在没有使用 Cognito 授权的情况下测试过这些查询,它们都运行良好。由于我的默认操作设置为 ALLOW对于我的 Cognito 授权者,我的查询现在应该运行相同,因为我没有修改它们。

查看我的查询、类型和解析器的代码,我看不出它们的编写方式有什么不同。允许访问我的 DynamoDB 表的 IAM 角色也保持不变,并且没有附加任何限制。

到底是怎么回事? AppSync 是否存在错误,或者我在这里遗漏了什么?

请告诉我。谢谢

最佳答案

我认为您的 API key 到期日期已经结束。所以转到 --
API -> 选择您的 AppSync -> 转到设置 -> 选择您的 API key -> 然后编辑 ->
现在您处于“配置您的 API key 并更改到期日期”中。
-> 选择过期
选择此 API key 何时到期
在这里,您可以选择从创建新 API key 之日起 1 年。

关于amazon-web-services - AWS AppSync - 未经授权的异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52675213/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com