SecretRef di Vault
Il Plugin Vault incluso consente a OpenClaw di risolvere le SecretRefexec da
HashiCorp Vault all’avvio del Gateway e durante il ricaricamento. OpenClaw memorizza i
riferimenti a Vault nella configurazione, mantiene i valori risolti nell’istantanea dei segreti in memoria
e non riscrive le chiavi API risolte in openclaw.json.
Usa questa soluzione se utilizzi già Vault o vuoi conservare le chiavi dei provider di modelli al di fuori dei
file di configurazione di OpenClaw. Per il modello di runtime delle SecretRef, consulta
Gestione dei segreti.
Prima di iniziare
Sono necessari:- OpenClaw con il plugin
vaultincluso disponibile - un server Vault raggiungibile
- un’autenticazione Vault in grado di generare un token client con accesso in lettura ai percorsi dei segreti che OpenClaw deve risolvere
- l’ambiente che avvia il Gateway deve includere
VAULT_ADDRe uno traVAULT_TOKEN,OPENCLAW_VAULT_AUTH_METHOD=token_fileconVAULT_TOKEN_FILEoppure un accesso JWT/Kubernetes configurato
openclaw vault:
Archiviare una chiave di provider in Vault
Per impostazione predefinita, OpenClaw usa KV v2 montato insecret, in linea con gli esempi del
server di sviluppo Vault. Per Vault in produzione, imposta OPENCLAW_VAULT_KV_MOUNT sul percorso di
montaggio KV effettivo prima di creare gli ID SecretRef. Con le impostazioni predefinite di OpenClaw, questo
ID SecretRef:
Rendere Vault visibile al Gateway
Per un Gateway locale non containerizzato, esporta le impostazioni di Vault nella stessa shell che avvia OpenClaw. Il metodo di autenticazione predefinito legge un token client Vault daVAULT_TOKEN:
jwt:
kubernetes. È destinato ai
Gateway eseguiti come Pod; il montaggio predefinito è kubernetes e il file JWT predefinito
è il percorso standard del token dell’account di servizio:
OPENCLAW_VAULT_AUTH_MOUNT solo quando Vault ha montato l’autenticazione Kubernetes in un percorso
diverso da auth/kubernetes. Imposta OPENCLAW_VAULT_JWT_FILE solo quando il token
dell’account di servizio è proiettato in un percorso personalizzato.
Impostazioni facoltative:
openclaw vault status non stampa mai VAULT_TOKEN; indica soltanto se il
token, il file del token e il file JWT sono impostati.
Generare e applicare un piano SecretRef
Crea un piano che associ la chiave API del provider di modelli OpenRouter a Vault:--allow-exec perché il Plugin Vault esegue la risoluzione tramite un provider
SecretRef exec gestito da OpenClaw.
Se il Gateway non è ancora in esecuzione, avvialo normalmente dopo aver applicato il piano,
anziché eseguire openclaw secrets reload.
Configurare altre chiavi dei provider
Scorciatoie integrate:--provider-key:
--provider-key <provider=id> scrive una SecretRef in
models.providers.<provider>.apiKey. Per i provider personalizzati, non crea
le impostazioni baseUrl, api o models del provider; configurale prima.
Usa --target <path=id> per qualsiasi percorso di destinazione SecretRef noto:
openclaw.json. Usa
auth-profiles:<agentId>:<path> per le destinazioni esistenti in auth-profiles.json.
Il percorso di destinazione deve essere una destinazione SecretRef registrata di OpenClaw. Il comando di configurazione
non crea segreti denominati arbitrariamente in OpenClaw; Vault rimane l’archivio dei
segreti e OpenClaw memorizza le SecretRef solo nei campi di configurazione supportati.
Formato degli ID SecretRef
Gli ID SecretRef di Vault usano questa convenzione:
Il campo Vault restituito deve essere una stringa.
Per KV v1, imposta:
providers/openrouter/apiKey legge:
Cosa memorizza OpenClaw
L’applicazione di un piano di configurazione Vault memorizza un provider gestito dal plugin:Container e distribuzioni gestite
I Gateway containerizzati usano comunque lo stesso Plugin e la stessa configurazione SecretRef. Il container deve ricevere:VAULT_ADDR- una fonte di autenticazione:
VAULT_TOKENOPENCLAW_VAULT_AUTH_METHOD=token_filepiùVAULT_TOKEN_FILEOPENCLAW_VAULT_AUTH_METHOD=jwtpiùOPENCLAW_VAULT_AUTH_MOUNT,OPENCLAW_VAULT_AUTH_ROLEeOPENCLAW_VAULT_JWT_FILEOPENCLAW_VAULT_AUTH_METHOD=kubernetespiùOPENCLAW_VAULT_AUTH_ROLE; facoltativamente sostituisciOPENCLAW_VAULT_AUTH_MOUNToOPENCLAW_VAULT_JWT_FILE
- facoltativamente
VAULT_NAMESPACE,OPENCLAW_VAULT_KV_MOUNTeOPENCLAW_VAULT_KV_VERSION
OPENCLAW_VAULT_AUTH_METHOD=kubernetes
se Vault dispone dell’autenticazione Kubernetes configurata per il cluster. Usa
OPENCLAW_VAULT_AUTH_METHOD=jwt solo quando Vault è configurato per trattare il cluster
come emittente JWT/OIDC generico. Entrambe le opzioni sono preferibili a un token Vault
a lunga durata in un Secret Kubernetes. Le distribuzioni con sidecar o injector Vault Agent possono
usare invece token_file.
Per le configurazioni Vault multi-tenant, mantieni l’instradamento dei tenant nella policy Vault e nella
configurazione della distribuzione. OpenClaw non richiede un montaggio, un ruolo o un percorso fisso: ciascun
ambiente Gateway può impostare i propri OPENCLAW_VAULT_KV_MOUNT,
OPENCLAW_VAULT_AUTH_ROLE e ID SecretRef. Se un unico Gateway condiviso deve risolvere
contemporaneamente diversi utenti Vault, usa provider exec configurati manualmente
che racchiudano ambienti di autenticazione distinti, oppure suddividi i tenant tra ambienti Gateway
con ambienti Vault separati.