AWS InvalidSignatureException,从Docker容器运行时签名过期

emeijp43  于 12个月前  发布在  Docker
关注(0)|答案(2)|浏览(165)

我遇到了一个问题,我在docker容器中开发程序,不知从哪里我似乎得到了一个无效签名的问题。当我尝试从AWS Secrets Manager检索资源时,引发了以下异常(我不相信特定的AWS服务与此问题相关):
botocore.exceptions.ClientError:调用GetSecretValue操作时发生错误(InvalidSignatureException):签名过期:20200505 T192909 Z现在早于20200506 T151410 Z(20200506 T151910 Z- 5分钟)

j8ag8udp

j8ag8udp1#

已知当客户端系统的时钟与AWS同步的时钟不同步时会发生此异常。
为了检查这个容器的时间,我在一个断点暂停了我的程序,检查了一下当前的时间。果然,它和实际时间有偏差!

首先要检查:

首先要检查的是您的本地系统的时间。如果该系统已关闭,请重新同步该系统,然后重试。这 * 应该 * 可以解决问题。
1.这可以通过使用ntpd在类似Unix的系统上完成。

  1. Windows用户可以进入“开始”->“设置”->“时间和语言”->“日期和时间”->同步您的时钟

Docker桌面

Docker Desktop的用户可能仍然会收到相同的错误,尽管他们的本地计算机的时间是同步的。

虽然这是真的,Docker容器将有同步的时间与他们的主机,这是重要的是要注意,Docker桌面运行一个虚拟机的Docker。与说,* mac或windows机器不是主机,虚拟机。* 这是我遇到的问题。我的windows桌面有一个同步和最新的日期/时间,但Docker桌面虚拟机是问题。

  • 我可以通过重新启动Docker Desktop来解决此问题。*
7z5jn7bk

7z5jn7bk2#

使用WSL 2 i在powershell模式下运行admin

$ wsl --shutdown

$ wsl

字符串
再次运行代码!

相关问题