O token de segurança incluído na solicitação expirou
TL;DR — Suas credenciais temporárias do AWS expiraram. Isso acontece apenas com credenciais STS/SSO/assumed-role (não com chaves de usuário IAM de longa duração). Atualize a sessão – execute novamente aws sso login ou assuma novamente a função – certifique-se de que AWS_SESSION_TOKEN seja o novo e limpe qualquer token obsoleto deixado no ambiente.
O que significa
ExpiredTokenException: The security token included in the request is expiredAWS rejeitou sua solicitação porque as credenciais de segurança temporárias com as quais foi assinado expiraram. Credenciais temporárias de STS (funções de instância AssumeRole, SSO, GetSessionToken, EC2/ECS) ativas para uma janela limitada - as sessões de função são executadas de 15 minutos até a configuração de duração máxima da sessão da função (entre 1 e 12 horas; 1 hora por padrão), e as credenciais GetSessionToken para um usuário IAM são padronizadas para 12 horas e podem se estender até 36. Depois que essa janela passa, todas as solicitações assinadas com eles falham com ExpiredTokenException. O reenvio com o mesmo token expirado falha novamente – só vale a pena tentar novamente após a atualização.
Por que isso acontece
- A sessão STS/SSO simplesmente expirou — as credenciais da função assumida expiram na duração da sessão da função (padrão 1 hora, configurável até 12); uma sessão SSO também expira.
- Um
AWS_SESSION_TOKENobsoleto no ambiente — um token de sessão antigo exportado para seu shell (ou um.env) continua sendo usado após expirar; env vars não são atualizados automaticamente. - Um processo de longa duração que buscava credenciais uma vez na inicialização e nunca as atualizava.
- Credenciais armazenadas em cache no
~/.aws/cli/cacheou em um cache de credenciais do SDK que tenha expirado. - Inclinação do relógio — um relógio de máquina suficientemente distante pode fazer com que credenciais válidas pareçam expiradas.
Como corrigir
- Atualize a sessão. Execute novamente o
aws sso login(para SSO) ou assuma novamente a função (aws sts assume-role …) para obter uma nova chave de acesso, segredo e token de sessão. - Atualize todos os três valores – ID da chave de acesso, chave de acesso secreta, e o token de sessão juntos. Uma nova chave com um token obsoleto ainda falha.
- Limpe env vars obsoletos —
unset AWS_ACCESS_KEY_ID AWS_SECRET_ACCESS_KEY AWS_SESSION_TOKENe, em seguida, reencaminhe as novas credenciais ou mude para um perfil que o SDK possa atualizar por conta própria. - Deixe o SDK gerenciar o ciclo de vida — configure um provedor de perfil/credencial (SSO,
assume_role, função de instância) para que o SDK seja atualizado automaticamente antes de expirar, em vez de fixar um token. - Verifique com
aws sts get-caller-identity— se for bem-sucedido, suas credenciais estão atualizadas. - Verifique o relógio (NTP) se tudo parece atualizado, mas as solicitações ainda informam a expiração.
Conecte pelo DynoTable
DynoTable resolve seu perfil de novo em todas as conexões — Sessões SSO e função de assunção protegida por MFA incluídas - assim que a sessão for renovadas, suas tabelas voltam sem reiniciar. O ponto de status do chip de perfil fica vermelho com Entrar (SSO) ou Reconectar quando credenciais temporárias expirar; clique nele ou execute novamente uma consulta para acionar o fluxo de atualização no aplicativo. Pressium ⌘P para confirmar que você está no perfil que atualizou no terminal. O construtor de consultas é uma verificação rápida de integridade que leituras assinadas são bem-sucedidas após a atualização.
FAQ
Como faço para corrigir "o token de segurança incluído na solicitação expirou"? Suas credenciais temporárias expiraram. Atualize-os - execute novamente o login do aws sso ou assuma novamente a função - e atualize a chave de acesso, o segredo e AWS_SESSION_TOKEN juntos. Limpe qualquer token obsoleto deixado em seu shell para que o antigo não seja reutilizado e prefira um provedor de credenciais SDK que seja atualizado automaticamente.
Por que só consigo isso com credenciais temporárias? ExpiredTokenException se aplica a credenciais STS/SSO/assumed-role com limite de tempo, que possuem uma expiração. As chaves de acesso do usuário IAM de longa duração não expiram por conta própria, portanto, geram erros de credencial por outros motivos (/disabled inválido), não este.
Erros relacionados
- O token de segurança incluído na solicitação é inválido — credenciais rejeitadas como erradas, não expiradas.
- IncompleteSignatureException — uma assinatura de solicitação malformada.
- AccessDeniedException — credenciais válidas, permissão ausente.
Fontes
Solicitar credenciais de segurança temporárias - Guia do usuário IAM (verificado em 13/07/2026)
AssumeRole - Referência API do serviço de token de segurança AWS (verificado em 13/07/2026)
Tipos de erros comuns – Referência do Amazon DynamoDB API (verificado em 13/07/2026)
Solução de erros para o AWS CLI - Guia do usuário do AWS CLI (verificado em 13/07/2026)