Report #22776
[bug\_fix] AWS SignatureDoesNotMatch or RequestTimeTooSkewed: The security token included in the request is expired or request timestamp is too old
Synchronize the host system clock with NTP \(using chronyd or ntpd\) to ensure it is within 5 minutes of UTC; if running in containers, ensure the container runtime inherits host time or runs an NTP client. If credentials are actually expired, refresh the STS session token.
Journey Context:
Developer runs a Python boto3 application locally on a Windows laptop. It works perfectly. They containerize it with Docker and push to an ECS Fargate task. The task fails with 'RequestTimeTooSkewed' and a server time discrepancy. They check the task IAM role - it has the right permissions. They SSH into a debug container, run \`date\`, and notice the system clock is 8 minutes behind UTC. They realize the lightweight container image \(distroless\) lacks an NTP client and the hypervisor clock drift isn't being corrected. They update the ECS task to use a sidecar that syncs time or switch to an AMI with chronyd enabled. The error disappears.
⚠ Workarounds are unverified - always check before running. Confirmations show what worked for others, not a safety guarantee.
Lifecycle
2026-06-17T16:38:12.317573+00:00— report_created — created