使用sigv4进行身份验证的API网关给出“消息:缺少身份验证令牌”

时间:2018-10-19 05:17:48

标签: amazon-web-services authentication aws-api-gateway

我在对API的请求中实现了sigv4身份验证,但是每当我尝试点击它时,我都会收到{“ message”:“ Missing Authentication Token”}作为响应。当我使用具有相同主机,授权标头,内容类型,访问密钥,秘密密钥,区域和服务名称的Postman进行测试时,该呼叫有效。这是否意味着我没有正确发送带有标头的请求或正确生成授权标头?

1 个答案:

答案 0 :(得分:0)

您收到Missing Authentication Token,因为您没有有效的签名Cookie或查询字符串参数。

如果您使用的是邮递员,请确保为给定站点启用cookie。

有关签名Cookie的更多信息:

https://docs.aws.amazon.com/AmazonCloudFront/latest/DeveloperGuide/private-content-signed-cookies.html#private-content-check-expiration-cookie

签名参数:

https://docs.aws.amazon.com/AmazonS3/latest/API/sigv4-query-string-auth.html

如果您收到无效的密钥对,则可能是您的签名URL过期了,或者您没有使用正确的密钥来生成那些经过身份验证的值。

EDIT1:

如果未找到内容,这也是CloudFront的一般错误。

https://docs.aws.amazon.com/apigateway/latest/developerguide/customize-gateway-responses.html

希望有帮助。