¿Cómo generar de nuevo el token root en Vault?

Muchas veces vamos a necesitamos realizar alguna acción administrativa en Vault que requiera un root token y no disponemos de uno, podemos generar uno temporalmente mediante generate-root.

Para ello necesitaremos el quorum de claves configurado en Vault.

Generar el token

Comenzamos el proceso con:

vault operator generate-root -init

Vault nos mostrará información similar a:

Nonce:           12345678-1234-1234-1234-123456789abc
Started:         true
Progress:        0/3
Required Shares: 3
OTP:             xxxxxxxxxxxxxxxxxxxxxxxxx

Debemos guardar el Nonce y el OTP.

En este ejemplo necesitamos 3 claves para completar el proceso.

Introducir las claves

Ahora introducimos las claves necesarias:

vault operator generate-root \
  -nonce="12345678-1234-1234-1234-123456789abc"

Vault solicitará una clave:

Unseal Key (will be hidden):

Repetimos el comando con las diferentes claves hasta alcanzar el threshold configurado.

Cuando se complete el proceso obtendremos algo similar a:

Progress:       3/3
Complete:       true
Encoded Token:  xxxxxxxxxxxxxxxxxxxxxxxxx

Obtener el root token

Con el Encoded Token y el OTP podemos obtener el root token:

vault operator generate-root \
  -decode="xxxxxxxxxxxxxxxxxxxxxxxxx" \
  -otp="xxxxxxxxxxxxxxxxxxxxxxxxx"

Vault devolverá el token:

hvs.xxxxxxxxxxxxxxxxxxxxxxxxx

Ya podemos utilizar este token para realizar las operaciones administrativas que necesitemos.

Revocar el token

Una vez terminada la operación, es importante revocar el root token para no dejar activo un token con privilegios completos de administración.

Podemos hacerlo con:

vault token revoke <ROOT_TOKEN>

De esta forma, el token root permanece activo únicamente durante el tiempo necesario para realizar la operación administrativa y después queda revocado.

Leave a Reply

Your email address will not be published. Required fields are marked *

Are you human? Please solve:Captcha