Skip to main content

openclaw secrets

Управляйте SecretRef и поддерживайте активный снимок среды выполнения в исправном состоянии. Рекомендуемый рабочий цикл оператора:
Если план включает SecretRef/провайдеры exec, передайте --allow-exec обеим командам apply: для пробного запуска и записи. Коды завершения для CI/шлюзов проверки:
  • audit --check возвращает 1 при обнаружении проблем.
  • Неразрешённые ссылки возвращают 2 (независимо от --check).
См. также: Управление секретами · Поверхность учётных данных SecretRef · Безопасность

Перезагрузка снимка среды выполнения

Использует метод RPC Gateway secrets.reload. Если разрешение завершается ошибкой, Gateway сохраняет последний заведомо исправный снимок и возвращает ошибку (частичной активации не происходит). Ответ JSON включает warningCount. Параметры: --url <url>, --token <token>, --timeout <ms>, --json.

Аудит

Сканирует состояние OpenClaw на наличие:
  • хранения секретов в открытом виде
  • неразрешённых ссылок
  • расхождений приоритетов (учётные данные auth-profiles.json, перекрывающие ссылки openclaw.json)
  • остатков сгенерированных agents/*/agent/models.json (значения apiKey провайдера и конфиденциальные заголовки провайдера)
  • устаревших остатков (записи устаревшего хранилища аутентификации, напоминания OAuth)
Обнаружение конфиденциальных заголовков провайдеров основано на эвристике имён: отмечаются заголовки, имена которых соответствуют распространённым фрагментам, связанным с аутентификацией или учётными данными (authorization, x-api-key, token, secret, password, credential).
Структура отчёта:
  • status: clean | findings | unresolved
  • resolution: refsChecked, skippedExecRefs, resolvabilityComplete
  • summary: plaintextCount, unresolvedRefCount, shadowedRefCount, legacyResidueCount
  • коды обнаруженных проблем: PLAINTEXT_FOUND, REF_UNRESOLVED, REF_SHADOWED, LEGACY_RESIDUE

Настройка (интерактивный помощник)

Интерактивно сформируйте изменения провайдеров и SecretRef, выполните предварительную проверку и при необходимости примените их:
Порядок: сначала настройка провайдеров (добавление, изменение и удаление псевдонимов secrets.providers), затем сопоставление учётных данных (выбор полей и назначение ссылок {source, provider, id}), после этого предварительная проверка и необязательное применение. Флаги:
  • --providers-only: настроить только secrets.providers, пропустив сопоставление учётных данных
  • --skip-provider-setup: пропустить настройку провайдеров и сопоставить учётные данные с существующими провайдерами
  • --agent <id>: ограничить обнаружение целей auth-profiles.json и запись одним хранилищем агента
  • --allow-exec: разрешить проверки exec SecretRef во время предварительной проверки и применения (могут выполняться команды провайдера)
--providers-only и --skip-provider-setup нельзя использовать вместе. Примечания:
  • Требуется интерактивный TTY.
  • Обрабатывает содержащие секреты поля в openclaw.json, а также auth-profiles.json для выбранной области агента; каноническая поддерживаемая поверхность: Поверхность учётных данных SecretRef.
  • Поддерживает создание новых сопоставлений auth-profiles.json непосредственно в процессе выбора.
  • Перед применением выполняет предварительное разрешение.
  • В создаваемых планах параметры очистки включены по умолчанию (scrubEnv, scrubAuthProfilesForProviderTargets, scrubLegacyAuthJson). Для очищенных значений открытого текста применение необратимо.
  • Без --apply CLI всё равно запрашивает Apply this plan now? после предварительной проверки.
  • С --apply (и без --yes) CLI запрашивает дополнительное подтверждение необратимой миграции.
  • --json выводит план и отчёт предварительной проверки, но по-прежнему требует интерактивный TTY.

Безопасность exec-провайдеров

Установки Homebrew часто предоставляют двоичные файлы через символические ссылки в /opt/homebrew/bin/*. Задавайте allowSymlinkCommand: true только при необходимости для доверенных путей менеджера пакетов и вместе с trustedDirs (например, ["/opt/homebrew"]). В Windows, если для пути провайдера недоступна проверка ACL, OpenClaw применяет запрет по умолчанию; только для доверенных путей задайте allowInsecurePath: true для этого провайдера, чтобы обойти проверку безопасности пути.

Применение сохранённого плана

--dry-run выполняет предварительную проверку без записи файлов; при пробном запуске проверки exec SecretRef по умолчанию пропускаются. Режим записи отклоняет планы, содержащие exec SecretRef/провайдеры, без --allow-exec. Используйте --allow-exec, чтобы явно разрешить проверки и выполнение exec-провайдеров в любом режиме. Что может обновлять apply:
  • openclaw.json (цели SecretRef, а также добавление, обновление и удаление провайдеров)
  • auth-profiles.json (очистка целей провайдеров)
  • устаревшие остатки auth.json
  • известные секретные ключи ~/.openclaw/.env, значения которых были перенесены
Подробности контракта плана (разрешённые пути целей, правила проверки, семантика ошибок): Контракт плана применения секретов.

Почему резервные копии для отката не создаются

secrets apply намеренно не создаёт резервные копии для отката, содержащие старые значения в открытом виде. Безопасность обеспечивается строгой предварительной проверкой и условно атомарным применением с попыткой восстановления в памяти при ошибке.

Пример

Если audit --check по-прежнему сообщает о значениях в открытом виде, обновите остальные указанные пути целей и повторно запустите аудит.

См. также