Skip to main content

Resolução: Erros de Autenticação do Vault (Secret ID)

📋 Descrição do Problema

Erros de autenticação ocorriam ao tentar acessar secrets do Vault.

Sintomas:

  • Falhas de autenticação nas aplicações ao buscar secrets do Vault
  • Erros relacionados a Secret ID inválido ou expirado

🔍 Causa Raiz

O Secret ID do AppRole estava sendo criado automaticamente pelo bot do Discord pelo comando /create-projeto <nome-do-projeto> com um TTL (Time To Live) de 24 horas.

Após esse período, o Secret ID expirava, causando falhas de autenticação pois as aplicações não conseguiam mais se autenticar no Vault para recuperar as secrets necessárias.


✅ Solução Implementada

O TTL do Secret ID foi ajustado no Vault para um valor sem expiração para que garanta a continuidade do funcionamento das aplicações depois das 24 horas.

Configuração Anterior

  • TTL do Secret ID: 24 horas (configurado automaticamente pelo bot do Discord)

Configuração Atual

  • TTL do Secret ID: 0s (sem expiração)

🔧 Como Resolver em Casos Futuros

SSe ocorrerem novos erros de autenticação relacionados ao Vault:

  1. Configuração inicial:

bash

 # Exportar endereço do Vault
export VAULT_ADDR=https://hashicorp-vault.digitalsys.app

# Exibir policies (para ver se já existe a policy)
vault policy list

# Exibir roles (para pegar os valores posteriores, provavelmente é &lt;nome-do-projeto>-&lt;ambiente>-role)
vault list auth/approle/role
  1. Verifique o TTL do Secret ID:

bash

vault read auth/approle/role/&lt;role-name>/secret-id-ttl
  1. Ajuste o TTL se necessário:

bash

vault write auth/approle/role/&lt;role-name> secret_id_ttl=&lt;novo-valor>
  1. Gere um novo Secret ID (se o atual expirou):

bash

vault write -f auth/approle/role/&lt;role-name>/secret-id
  1. Se necessário, atualize o VAULT_APPROLE_SECRETID do ambiente mudado no GitHub Actions com o novo valor do secret_id.