openclaw secrets
Zarządzaj odwołaniami SecretRef i utrzymuj aktywną migawkę środowiska uruchomieniowego w prawidłowym stanie.
Zalecany cykl pracy operatora:
exec, przekaż --allow-exec zarówno do polecenia próbnego, jak i zapisującego apply.
Kody wyjścia dla CI/bramek:
audit --checkzwraca1, gdy wykryto problemy.- Nierozwiązane odwołania powodują zwrócenie
2(niezależnie od--check).
Ponowne wczytywanie migawki środowiska uruchomieniowego
secrets.reload. Jeśli rozwiązanie odwołań się nie powiedzie, Gateway zachowuje ostatnią poprawną migawkę i zwraca błąd (bez częściowej aktywacji). Odpowiedź JSON zawiera warningCount.
Opcje: --url <url>, --token <token>, --timeout <ms>, --json.
Audyt
Skanuje stan OpenClaw pod kątem:- przechowywania sekretów w postaci tekstu jawnego
- nierozwiązanych odwołań
- rozbieżności priorytetów (poświadczenia z
auth-profiles.jsonprzesłaniające odwołania zopenclaw.json) - pozostałości w wygenerowanych plikach
agents/*/agent/models.json(wartościapiKeydostawców i poufne nagłówki dostawców) - pozostałości po starszych wersjach (wpisy w starszym magazynie uwierzytelniania, przypomnienia OAuth)
authorization, x-api-key, token, secret, password, credential).
status:clean | findings | unresolvedresolution:refsChecked,skippedExecRefs,resolvabilityCompletesummary:plaintextCount,unresolvedRefCount,shadowedRefCount,legacyResidueCount- kody wykrytych problemów:
PLAINTEXT_FOUND,REF_UNRESOLVED,REF_SHADOWED,LEGACY_RESIDUE
Konfiguracja (interaktywny kreator)
Interaktywnie utwórz zmiany dostawców i SecretRef, przeprowadź kontrolę wstępną i opcjonalnie je zastosuj:secrets.providers), następnie mapowanie poświadczeń (wybór pól i przypisywanie odwołań {source, provider, id}), a potem kontrola wstępna i opcjonalne zastosowanie zmian.
Flagi:
--providers-only: konfiguruje tylkosecrets.providers, pomijając mapowanie poświadczeń--skip-provider-setup: pomija konfigurację dostawców i mapuje poświadczenia na istniejących dostawców--agent <id>: ogranicza wykrywanie celów i zapisywanie wauth-profiles.jsondo magazynu jednego agenta--allow-exec: zezwala na kontrole exec SecretRef podczas kontroli wstępnej i stosowania zmian (może wykonywać polecenia dostawców)
--providers-only z --skip-provider-setup.
Uwagi:
- Wymaga interaktywnego TTY.
- Obejmuje pola zawierające sekrety w
openclaw.jsonorazauth-profiles.jsonw wybranym zakresie agenta; kanoniczny obsługiwany zakres: Zakres poświadczeń SecretRef. - Umożliwia tworzenie nowych mapowań
auth-profiles.jsonbezpośrednio w procesie wyboru. - Przed zastosowaniem zmian przeprowadza wstępne rozwiązanie odwołań.
- W generowanych planach opcje usuwania pozostałości są domyślnie włączone (
scrubEnv,scrubAuthProfilesForProviderTargets,scrubLegacyAuthJson). Zastosowanie zmian jest nieodwracalne w przypadku usuniętych wartości tekstu jawnego. - Bez
--applyCLI po kontroli wstępnej nadal wyświetla pytanieApply this plan now?. - Z
--apply(i bez--yes) CLI wyświetla dodatkowe potwierdzenie nieodwracalnej migracji. --jsonwyświetla plan i raport kontroli wstępnej, ale nadal wymaga interaktywnego TTY.
Bezpieczeństwo dostawcy exec
Instalacje Homebrew często udostępniają pliki wykonywalne za pośrednictwem dowiązań symbolicznych w/opt/homebrew/bin/*. Ustaw allowSymlinkCommand: true tylko wtedy, gdy jest to konieczne dla zaufanych ścieżek menedżera pakietów, w połączeniu z trustedDirs (na przykład ["/opt/homebrew"]). W systemie Windows, jeśli weryfikacja list ACL nie jest dostępna dla ścieżki dostawcy, OpenClaw domyślnie odmawia działania; wyłącznie dla zaufanych ścieżek ustaw allowInsecurePath: true dla tego dostawcy, aby pominąć kontrolę bezpieczeństwa ścieżki.
Stosowanie zapisanego planu
--dry-run przeprowadza kontrolę wstępną bez zapisywania plików; kontrole exec SecretRef są domyślnie pomijane w trybie próbnym. Tryb zapisu odrzuca plany zawierające odwołania SecretRef lub dostawców typu exec bez --allow-exec. Użyj --allow-exec, aby zezwolić na kontrole lub wykonywanie dostawców exec w dowolnym z tych trybów.
Elementy, które apply może zaktualizować:
openclaw.json(cele SecretRef oraz wstawianie, aktualizowanie i usuwanie dostawców)auth-profiles.json(usuwanie danych dostawców docelowych)- pozostałości w starszym pliku
auth.json - znane klucze sekretów w
~/.openclaw/.env, których wartości zostały zmigrowane
Dlaczego nie ma kopii zapasowych do wycofywania zmian
secrets apply celowo nie zapisuje kopii zapasowych do wycofywania zmian, które zawierałyby stare wartości tekstu jawnego. Bezpieczeństwo zapewniają rygorystyczna kontrola wstępna i niemal atomowe zastosowanie zmian, z podejmowaną w miarę możliwości próbą przywrócenia stanu w pamięci w przypadku błędu.
Przykład
audit --check nadal zgłasza tekst jawny, zaktualizuj pozostałe wskazane ścieżki docelowe i ponownie uruchom audyt.