SecretRefs Vault
Le plugin Vault intégré permet à OpenClaw de résoudre les SecretRefsexec depuis
HashiCorp Vault au démarrage du Gateway et lors des rechargements. OpenClaw stocke les
références Vault dans la configuration, conserve les valeurs résolues dans l’instantané
des secrets en mémoire et ne réécrit pas les clés API résolues dans openclaw.json.
Utilisez cette fonctionnalité si vous exécutez déjà Vault ou souhaitez conserver les
clés des fournisseurs de modèles hors des fichiers de configuration d’OpenClaw. Pour le
modèle d’exécution des SecretRefs, consultez
Gestion des secrets.
Avant de commencer
Vous avez besoin des éléments suivants :- OpenClaw avec le plugin
vaultintégré disponible - un serveur Vault accessible
- une authentification Vault capable de produire un jeton client disposant d’un accès en lecture aux chemins de secrets qu’OpenClaw doit résoudre
- l’environnement qui démarre le Gateway doit inclure
VAULT_ADDRet soitVAULT_TOKEN, soitOPENCLAW_VAULT_AUTH_METHOD=token_fileavecVAULT_TOKEN_FILE, soit une connexion JWT/Kubernetes configurée
openclaw vault :
Stocker une clé de fournisseur dans Vault
Par défaut, OpenClaw utilise KV v2 monté sursecret, conformément aux exemples du
serveur de développement Vault. Pour un environnement Vault de production, définissez
OPENCLAW_VAULT_KV_MOUNT sur le chemin de montage KV réel avant de créer des
identifiants SecretRef. Avec les valeurs par défaut d’OpenClaw, cet identifiant
SecretRef :
Rendre Vault accessible au Gateway
Pour un Gateway local non conteneurisé, exportez les paramètres Vault dans le même interpréteur de commandes que celui qui démarre OpenClaw. La méthode d’authentification par défaut lit un jeton client Vault depuisVAULT_TOKEN :
jwt :
kubernetes. Elle est
destinée aux Gateways exécutés sous forme de Pods ; le montage par défaut est
kubernetes et le fichier JWT par défaut correspond au chemin standard du jeton du
compte de service :
OPENCLAW_VAULT_AUTH_MOUNT uniquement lorsque l’authentification Kubernetes
est montée dans Vault ailleurs que sous auth/kubernetes. Définissez
OPENCLAW_VAULT_JWT_FILE uniquement lorsque le jeton du compte de service est projeté
dans un chemin personnalisé.
Paramètres facultatifs :
openclaw vault status n’affiche jamais VAULT_TOKEN ; la commande indique uniquement
si le jeton, le fichier de jeton et le fichier JWT sont définis.
Générer et appliquer un plan SecretRef
Créez un plan qui associe à Vault la clé API du fournisseur de modèles OpenRouter :--allow-exec, car le plugin Vault effectue la résolution par l’intermédiaire
d’un fournisseur SecretRef exec géré par OpenClaw.
Si le Gateway n’est pas encore en cours d’exécution, démarrez-le normalement après
avoir appliqué le plan au lieu d’exécuter openclaw secrets reload.
Configurer davantage de clés de fournisseurs
Raccourcis intégrés :--provider-key :
--provider-key <provider=id> écrit une SecretRef dans
models.providers.<provider>.apiKey. Pour les fournisseurs personnalisés, elle ne crée
pas les paramètres baseUrl, api ou models du fournisseur ; configurez-les
d’abord.
Utilisez --target <path=id> pour tout chemin cible SecretRef connu :
openclaw.json. Utilisez
auth-profiles:<agentId>:<path> pour les cibles existantes dans
auth-profiles.json. Le chemin cible doit être une cible SecretRef enregistrée dans
OpenClaw. La commande de configuration ne crée pas de secrets nommés arbitraires dans
OpenClaw ; Vault reste le magasin de secrets et OpenClaw stocke les SecretRefs
uniquement dans les champs de configuration pris en charge.
Format des identifiants SecretRef
Les identifiants SecretRef Vault suivent cette convention :
Le champ Vault renvoyé doit être une chaîne de caractères.
Pour KV v1, définissez :
providers/openrouter/apiKey lit alors :
Ce qu’OpenClaw stocke
L’application d’un plan de configuration Vault stocke un fournisseur géré par le plugin :Conteneurs et déploiements gérés
Les Gateways conteneurisés utilisent toujours le même plugin et la même configuration SecretRef. Le conteneur doit recevoir :VAULT_ADDR- une source d’authentification :
VAULT_TOKENOPENCLAW_VAULT_AUTH_METHOD=token_fileavecVAULT_TOKEN_FILEOPENCLAW_VAULT_AUTH_METHOD=jwtavecOPENCLAW_VAULT_AUTH_MOUNT,OPENCLAW_VAULT_AUTH_ROLEetOPENCLAW_VAULT_JWT_FILEOPENCLAW_VAULT_AUTH_METHOD=kubernetesavecOPENCLAW_VAULT_AUTH_ROLE; vous pouvez éventuellement remplacerOPENCLAW_VAULT_AUTH_MOUNTouOPENCLAW_VAULT_JWT_FILE
- les paramètres facultatifs
VAULT_NAMESPACE,OPENCLAW_VAULT_KV_MOUNTetOPENCLAW_VAULT_KV_VERSION
OPENCLAW_VAULT_AUTH_METHOD=kubernetes lorsque
l’authentification Kubernetes de Vault est configurée pour le cluster. Utilisez
OPENCLAW_VAULT_AUTH_METHOD=jwt uniquement lorsque Vault est configuré pour traiter le
cluster comme un émetteur JWT/OIDC générique. Les deux options sont préférables à un
jeton Vault à longue durée de vie dans un Secret Kubernetes. Les déploiements avec
conteneur compagnon ou injecteur Vault Agent peuvent utiliser token_file à la place.
Pour les configurations Vault mutualisées, conservez le routage des locataires dans la
stratégie Vault et la configuration du déploiement. OpenClaw n’impose aucun montage,
rôle ou chemin fixe : chaque environnement Gateway peut définir ses propres valeurs
OPENCLAW_VAULT_KV_MOUNT, OPENCLAW_VAULT_AUTH_ROLE et identifiants SecretRef. Si un
Gateway partagé doit résoudre simultanément différents utilisateurs Vault, utilisez
des fournisseurs exec configurés manuellement qui encapsulent des environnements
d’authentification distincts, ou répartissez les locataires entre plusieurs
environnements Gateway dotés d’environnements Vault séparés.