SecretRef у Vault
Вбудований Plugin Vault дає змогу OpenClaw розв’язувати SecretRef типуexec із HashiCorp Vault під час запуску та перезавантаження Gateway. OpenClaw зберігає посилання на Vault у конфігурації, утримує розв’язані значення у знімку секретів у пам’яті та не записує розв’язані ключі API назад до openclaw.json.
Використовуйте це рішення, якщо ви вже використовуєте Vault або хочете зберігати ключі постачальників моделей поза файлами конфігурації OpenClaw. Опис моделі виконання SecretRef див. у розділі Керування секретами.
Перед початком
Вам потрібні:- OpenClaw із доступним вбудованим плагіном
vault - доступний сервер Vault
- автентифікація Vault, яка може надати клієнтський токен із доступом на читання шляхів секретів, які має розв’язувати OpenClaw
- середовище, що запускає Gateway, повинно містити
VAULT_ADDRі один із таких варіантів:VAULT_TOKEN,OPENCLAW_VAULT_AUTH_METHOD=token_fileразом ізVAULT_TOKEN_FILEабо налаштований вхід через JWT/Kubernetes
openclaw vault:
Збереження ключа постачальника у Vault
За замовчуванням OpenClaw використовує KV v2, змонтований уsecret, відповідно до прикладів сервера розробки Vault. Для робочого середовища Vault установіть OPENCLAW_VAULT_KV_MOUNT відповідно до фактичного шляху монтування KV перед створенням ідентифікаторів SecretRef. За стандартних налаштувань OpenClaw цей ідентифікатор SecretRef:
Надання Gateway доступу до Vault
Для локального Gateway без контейнеризації експортуйте налаштування Vault у тій самій оболонці, у якій запускається OpenClaw. Стандартний метод автентифікації зчитує клієнтський токен Vault ізVAULT_TOKEN:
jwt:
kubernetes. Він призначений для Gateway, що працюють як поди; стандартна точка монтування — kubernetes, а стандартний файл JWT — це типовий шлях токена облікового запису служби:
OPENCLAW_VAULT_AUTH_MOUNT, лише якщо автентифікацію Kubernetes у Vault змонтовано не в auth/kubernetes. Установлюйте OPENCLAW_VAULT_JWT_FILE, лише якщо токен облікового запису служби проєктується за нестандартним шляхом.
Необов’язкові налаштування:
openclaw vault status ніколи не виводить VAULT_TOKEN; команда повідомляє лише про те, чи задано токен, файл токена та файл JWT.
Створення та застосування плану SecretRef
Створіть план, який зіставляє ключ API постачальника моделей OpenRouter із Vault:--allow-exec, оскільки Plugin Vault виконує розв’язання через керованого OpenClaw постачальника SecretRef типу exec.
Якщо Gateway ще не запущено, після застосування плану запустіть його звичайним способом замість виконання openclaw secrets reload.
Налаштування додаткових ключів постачальників
Вбудовані скорочення:--provider-key:
--provider-key <provider=id> записує SecretRef до models.providers.<provider>.apiKey. Для спеціалізованих постачальників він не створює налаштування baseUrl, api або models; спочатку налаштуйте їх.
Використовуйте --target <path=id> для будь-якого відомого цільового шляху SecretRef:
openclaw.json. Для наявних цільових шляхів у auth-profiles.json використовуйте auth-profiles:<agentId>:<path>.
Цільовий шлях має бути зареєстрованим у OpenClaw цільовим шляхом SecretRef. Команда налаштування не створює довільні іменовані секрети в OpenClaw; Vault залишається сховищем секретів, а OpenClaw зберігає SecretRef лише в підтримуваних полях конфігурації.
Формат ідентифікатора SecretRef
Ідентифікатори SecretRef у Vault використовують таку угоду:
Поле, повернуте Vault, має бути рядком.
Для KV v1 установіть:
providers/openrouter/apiKey читає:
Що зберігає OpenClaw
Застосування плану налаштування Vault зберігає керованого плагіном постачальника:Контейнери та керовані розгортання
Контейнеризовані Gateway використовують той самий Plugin і ту саму конфігурацію SecretRef. Контейнер повинен отримати:VAULT_ADDR- одне джерело автентифікації:
VAULT_TOKENOPENCLAW_VAULT_AUTH_METHOD=token_fileразом ізVAULT_TOKEN_FILEOPENCLAW_VAULT_AUTH_METHOD=jwtразом ізOPENCLAW_VAULT_AUTH_MOUNT,OPENCLAW_VAULT_AUTH_ROLEіOPENCLAW_VAULT_JWT_FILEOPENCLAW_VAULT_AUTH_METHOD=kubernetesразом ізOPENCLAW_VAULT_AUTH_ROLE; за потреби можна перевизначитиOPENCLAW_VAULT_AUTH_MOUNTабоOPENCLAW_VAULT_JWT_FILE
- необов’язкові
VAULT_NAMESPACE,OPENCLAW_VAULT_KV_MOUNTіOPENCLAW_VAULT_KV_VERSION
OPENCLAW_VAULT_AUTH_METHOD=kubernetes, якщо у Vault для кластера налаштовано автентифікацію Kubernetes. Використовуйте OPENCLAW_VAULT_AUTH_METHOD=jwt, лише якщо Vault налаштовано розглядати кластер як універсального видавця JWT/OIDC. Обидва варіанти кращі за довготривалий токен Vault у секреті Kubernetes. Розгортання із допоміжним контейнером або інжектором Vault Agent натомість можуть використовувати token_file.
Для багатокористувацьких конфігурацій Vault зберігайте маршрутизацію орендарів у політиках Vault і конфігурації розгортання. OpenClaw не вимагає фіксованої точки монтування, ролі чи шляху: кожне середовище Gateway може задавати власні OPENCLAW_VAULT_KV_MOUNT, OPENCLAW_VAULT_AUTH_ROLE та ідентифікатори SecretRef. Якщо один спільний Gateway має одночасно розв’язувати секрети різних користувачів Vault, використовуйте налаштованих вручну постачальників exec, які обгортають окремі середовища автентифікації, або розділіть орендарів між середовищами Gateway з окремими змінними середовища Vault.