Odwołania SecretRef do Vault
Dołączony Plugin Vault umożliwia OpenClaw rozpoznawanie odwołań SecretRef typuexec z HashiCorp Vault podczas uruchamiania i przeładowywania Gateway. OpenClaw przechowuje odwołania do Vault w konfiguracji, zachowuje rozpoznane wartości w przechowywanej w pamięci migawce sekretów i nie zapisuje rozpoznanych kluczy API z powrotem do pliku openclaw.json.
Użyj tego rozwiązania, jeśli korzystasz już z Vault lub chcesz przechowywać klucze dostawców modeli poza plikami konfiguracyjnymi OpenClaw. Opis modelu wykonawczego SecretRef znajdziesz w sekcji Zarządzanie sekretami.
Zanim zaczniesz
Potrzebujesz:- OpenClaw z dostępnym dołączonym pluginem
vault - osiągalnego serwera Vault
- uwierzytelniania Vault, które może wygenerować token klienta z uprawnieniami do odczytu ścieżek sekretów rozpoznawanych przez OpenClaw
- środowiska uruchamiającego Gateway, które zawiera
VAULT_ADDRoraz jedno z następujących źródeł uwierzytelniania:VAULT_TOKEN,OPENCLAW_VAULT_AUTH_METHOD=token_filezVAULT_TOKEN_FILEalbo skonfigurowane logowanie JWT/Kubernetes
openclaw vault włącz dołączony plugin:
Przechowywanie klucza dostawcy w Vault
OpenClaw domyślnie używa KV v2 zamontowanego pod ścieżkąsecret, zgodnie z przykładami serwera deweloperskiego Vault. W przypadku produkcyjnego Vault przed utworzeniem identyfikatorów SecretRef ustaw OPENCLAW_VAULT_KV_MOUNT na rzeczywistą ścieżkę montowania KV. Przy domyślnych ustawieniach OpenClaw ten identyfikator SecretRef:
Udostępnianie Vault dla Gateway
W przypadku lokalnego Gateway działającego poza kontenerem wyeksportuj ustawienia Vault w tej samej powłoce, która uruchamia OpenClaw. Domyślna metoda uwierzytelniania odczytuje token klienta Vault zVAULT_TOKEN:
jwt:
kubernetes. Jest ona przeznaczona dla Gateway działających jako pody; domyślnym punktem montowania jest kubernetes, a domyślnym plikiem JWT jest standardowa ścieżka tokenu konta usługi:
OPENCLAW_VAULT_AUTH_MOUNT tylko wtedy, gdy uwierzytelnianie Kubernetes w Vault jest zamontowane w innym miejscu niż auth/kubernetes. Ustaw OPENCLAW_VAULT_JWT_FILE tylko wtedy, gdy token konta usługi jest rzutowany pod niestandardową ścieżką.
Ustawienia opcjonalne:
openclaw vault status nigdy nie wyświetla wartości VAULT_TOKEN; informuje tylko, czy ustawiono token, plik tokenu i plik JWT.
Generowanie i stosowanie planu SecretRef
Utwórz plan mapujący klucz API dostawcy modeli OpenRouter do Vault:--allow-exec, ponieważ Plugin Vault rozpoznaje odwołania za pośrednictwem zarządzanego przez OpenClaw dostawcy SecretRef typu exec.
Jeśli Gateway nie jest jeszcze uruchomiony, po zastosowaniu planu uruchom go w zwykły sposób zamiast wykonywać openclaw secrets reload.
Konfigurowanie kolejnych kluczy dostawców
Wbudowane skróty:--provider-key:
--provider-key <provider=id> zapisuje SecretRef w models.providers.<provider>.apiKey. W przypadku dostawców niestandardowych nie tworzy ustawień baseUrl, api ani models dostawcy; najpierw skonfiguruj te ustawienia.
Użyj --target <path=id> dla dowolnej znanej ścieżki docelowej SecretRef:
openclaw.json. Dla istniejących celów w auth-profiles.json użyj auth-profiles:<agentId>:<path>.
Ścieżka docelowa musi być zarejestrowanym celem SecretRef OpenClaw. Polecenie konfiguracji nie tworzy dowolnych nazwanych sekretów w OpenClaw; Vault pozostaje magazynem sekretów, a OpenClaw przechowuje odwołania SecretRef wyłącznie w obsługiwanych polach konfiguracji.
Format identyfikatora SecretRef
Identyfikatory SecretRef Vault używają następującej konwencji:
Pole zwracane przez Vault musi być ciągiem znaków.
W przypadku KV v1 ustaw:
providers/openrouter/apiKey odczytuje:
Dane przechowywane przez OpenClaw
Zastosowanie planu konfiguracji Vault powoduje zapisanie dostawcy zarządzanego przez plugin:Kontenery i wdrożenia zarządzane
Gateway działające w kontenerach nadal korzystają z tego samego pluginu i konfiguracji SecretRef. Kontener musi otrzymać:VAULT_ADDR- jedno źródło uwierzytelniania:
VAULT_TOKENOPENCLAW_VAULT_AUTH_METHOD=token_filewraz zVAULT_TOKEN_FILEOPENCLAW_VAULT_AUTH_METHOD=jwtwraz zOPENCLAW_VAULT_AUTH_MOUNT,OPENCLAW_VAULT_AUTH_ROLEiOPENCLAW_VAULT_JWT_FILEOPENCLAW_VAULT_AUTH_METHOD=kuberneteswraz zOPENCLAW_VAULT_AUTH_ROLE; opcjonalnie można zastąpić wartościOPENCLAW_VAULT_AUTH_MOUNTlubOPENCLAW_VAULT_JWT_FILE
- opcjonalnie
VAULT_NAMESPACE,OPENCLAW_VAULT_KV_MOUNTiOPENCLAW_VAULT_KV_VERSION
OPENCLAW_VAULT_AUTH_METHOD=kubernetes, gdy w Vault skonfigurowano uwierzytelnianie Kubernetes dla klastra. Używaj OPENCLAW_VAULT_AUTH_METHOD=jwt tylko wtedy, gdy Vault jest skonfigurowany tak, aby traktować klaster jako ogólnego wystawcę JWT/OIDC. Obie opcje są lepsze od długoterminowego tokenu Vault przechowywanego w sekrecie Kubernetes. Wdrożenia z kontenerem pomocniczym Vault Agent lub mechanizmem wstrzykiwania mogą zamiast tego używać token_file.
W wielodostępnych konfiguracjach Vault przechowuj reguły kierowania dzierżawców w polityce Vault i konfiguracji wdrożenia. OpenClaw nie wymaga stałego punktu montowania, roli ani ścieżki: każde środowisko Gateway może ustawić własne wartości OPENCLAW_VAULT_KV_MOUNT, OPENCLAW_VAULT_AUTH_ROLE i identyfikatory SecretRef. Jeśli jeden współdzielony Gateway musi jednocześnie rozpoznawać różnych użytkowników Vault, użyj ręcznie skonfigurowanych dostawców typu exec, które opakowują odrębne środowiska uwierzytelniania, albo rozdziel dzierżawców między środowiska Gateway z osobnymi zmiennymi środowiskowymi Vault.