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.