Un token de compte de service permet à une machine ou à un script de lire un vault sans que personne ne se connecte. L'opérateur Kubernetes et la CLI s'authentifient tous deux avec.

Un token est lié à un environnement d'un vault. Il ne voit aucun autre vault, ni un autre environnement du même vault : un token qui fuit n'expose qu'un seul jeu de secrets. Créez-en un par consommateur : un par cluster, un par pipeline.

Créer un token

Gérer les tokens demande le rôle admin sur le vault. Dans l'app, depuis Developers > Tokens, choisissez le vault et l'environnement, puis New token. Donnez-lui un libellé qui dit qui l'utilise, par exemple prod-cluster, et un rôle :

Rôle Peut
viewer Lire les valeurs des secrets. Suffit à l'opérateur.
writer Lire, créer et faire tourner des secrets.
admin Tout ce que peut un writer.

Un token peut porter une date d'expiration. Sans elle, il reste valable jusqu'à sa révocation.

Le token n'est affiché qu'une fois, juste après sa création, et commence par fvsat_. FerrVault n'en garde qu'une empreinte et un court aperçu : un token perdu ne peut pas être réaffiché, révoquez-le et créez-en un nouveau.

Révoquer un token

La liste des tokens montre le libellé, le rôle et la dernière utilisation de chacun. Revoke prend effet immédiatement : la requête suivante faite avec ce token est refusée. Un token jamais utilisé, ou pas depuis longtemps, est un bon candidat à la révocation.

Quand la personne qui a créé un token perd son accès, ce qu'elle a créé suit cet accès : quitter l'organisation révoque tous les tokens qu'elle y a créés, perdre son droit sur un vault révoque ceux qu'elle a créés dans ce vault, et une rétrogradation ne révoque que ceux dont le rôle dépasse son nouveau rôle. Elle connaissait ces tokens, la fin de son accès doit donc y mettre fin.