如何解决 DynamoDB 中的无效安全令牌错误?

1 分钟阅读
0

当我尝试在 Amazon DynamoDB 中发出 GET 或 PUT 请求时,出现错误“security token included in the request is invalid”(请求中包含的安全令牌无效)。

简短描述

在以下情况下,您可能会收到错误 security token included in the request is invalid(请求中包含的安全令牌无效):

  • 您使用了 AWS 客户端的临时凭证,但凭证已过期。
  • 您用于对请求进行身份验证的安全令牌存在问题。
  • 您的 Amazon Elastic Compute Cloud (Amazon EC2) 实例的日期和时间设置不正确,导致您的 AWS 凭证被拒绝。

解决方法

**注意:**如果您在运行 AWS 命令行界面 (AWS CLI) 命令时收到错误,请参阅 AWS CLI 错误故障排除。此外,请确保您使用的是最新版本的 AWS CLI

使用 Amazon Time Sync Service 或其他 NTP 源

要保持您的实例的准确时间参考,请配置 Amazon Time Sync Service 或其他网络时间协议 (NTP) 源。

更新您的 AWS 凭证

要查看您的凭证,请使用 --debug 设置运行 update-access-key 命令。如果您使用安全令牌服务,请运行 get-caller-identity 命令。如果您的 AWS 凭证不正确,请使用 AWS CLI 更新您的 AWS 访问密钥 ID 和秘密访问密钥

使用正确的凭证配置您的 AWS CLI 或 AWS SDK

要在 AWS CLI 中配置您的凭证,请运行 configure 命令。

要在 AWS SDK 中配置您的凭证,您可以使用环境变量、AWS 凭证文件或 AWS Secrets Manager

刷新您的临时凭证

如果您对 DynamoDB 使用临时凭证,请在凭证即将到期前 5 分钟刷新您的凭证

对您的实例使用 IAM 角色

如果您使用 EC2 实例作为客户端计算机,则将实例配置文件附加到您的实例。确保您未在代码或实例上指定任何其他凭证。实例配置文件是默认凭证提供程序链搜索凭证的最后位置。如果凭证位于搜索链的前端位置,则您无法使用 AWS Identity and Access Management (IAM) 角色。有关详细信息,请参阅配置和凭证优先级

轮换您的凭证

如果您仍然遇到问题,请轮换您的凭证

相关信息

为 SDK 提供临时凭证

AWS 官方
AWS 官方已更新 2 个月前