.env do
promptu „pomocy w debugowaniu”. Pobrany dokument niesie osadzony klucz API.
Model, poproszony o „pokazanie konfiguracji”, odsyła klucz dostępu AWS prosto
z powrotem do klienta. Agent konstruuje wywołanie narzędzia z żywym tokenem
wpieczonym w argumenty. Każde z tych zjawisk to ścieżka ucieczki
poświadczenia — do logów dostawcy nadrzędnego, do transkryptu klienta lub do
narzędzia innej firmy.
Ta strona omawia, jak Guardrails i
Agent Firewall w OrcaRouter pozwalają ci bronić się
przed wyciekiem sekretów przez LLM — bez zmiany kodu twojej aplikacji.
Wykrywanie odbywa się w bramie, przed każdym powiązanym kluczem — więc
pojedyncza polityka pokrywa każdego dostawcę, każdy model i każdego agenta
bez zmiany SDK.
1. Gdzie wyciekają sekrety
Poświadczenie może uciec w trzech odrębnych punktach żądania:W promptcie (wejście)
W promptcie (wejście)
Poświadczenie jest w żądaniu zanim model w ogóle się uruchomi —
wklejony klucz, fragment
.env, token wewnątrz pobranego fragmentu RAG.
Niesprawdzone dociera do dostawcy nadrzędnego i może wylądować w jego
logach. Zatrzymaj je guardrailem wejściowym Secrets Blocker
(§2).W odpowiedzi (wyjście)
W odpowiedzi (wyjście)
Model emituje sekret z powrotem do twojego klienta — przeżuwa klucz ze
swojego kontekstu lub halucynuje łańcuch w kształcie poświadczenia.
Wychwyć je regułą sekretów na wyjściu
(§3).
W argumencie wywołania narzędzia
W argumencie wywołania narzędzia
Twój agent buduje wywołanie narzędzia z tokenem w argumentach. Werdykt
sanitize Firewalla redaguje dopasowane podłańcuchy z argumentów,
zanim wywołanie zostanie dyspozytowane
(§4).
2. Secrets Blocker — zatrzymaj poświadczenia w promptcie
Secrets Blocker to preset guardraila w kategorii secrets, który działa na etapie wejścia. Skanuje żądanie pod kątem kształtów poświadczeń — kluczy dostępu AWS, kluczy w stylu OpenAI i tokenów GitHub — i blokuje wywołanie, zanim opuści bramę. Poświadczenie nigdy nie dociera do modelu. Napisz go raz w konsoli, dołącz klucz, a każde żądanie przez ten klucz jest prześwietlane:Utwórz guardrail
W konsoli otwórz
/console/guardrails, kliknij New guardrail i
zastosuj preset Secrets & API-Key Blocker z kategorii secrets.
Zasiewa guardrail z regułami block na etapie wejścia dla powszechnych
kształtów poświadczeń — edytuj swobodnie od tego miejsca.Dołącz klucz
Otwórz
/console/token, edytuj klucz API i wybierz guardrail z rozwijanej
listy Guardrail — lub ustaw go jako domyślny dla przestrzeni roboczej,
aby każdy niepowiązany klucz go dziedziczył.[JWT] / [AWS_ACCESS_KEY]), reguła pii
pokrywająca jwt, aws_access_key oraz api_key_openai jest alternatywą
napędzaną encjami; zobacz
Referencję Guardrails.
3. Blokuj sekrety w wyjściu modelu
Sekret może też wyjść w odpowiedzi — model powtarza klucz ze swojego kontekstu lub emituje łańcuch w kształcie poświadczenia. Dodaj regułę na etapie wyjścia, aby prześwietlić odpowiedź modelu, zanim wróci do klienta. Kategoria secrets dostarcza preset Code Secret in Output dokładnie do tego: reguły block na etapie wyjścia dla kluczy prywatnych PEM, kluczy dostępu AWS i tokenów sekretów w stylu OpenAI.Maskowanie na wyjściu (zastąpienie dopasowania typowanym tagiem zamiast
odrzucenia całej odpowiedzi) obecnie dotyczy tylko odpowiedzi
niestrumieniowanych. Dla poświadczeń w wyjściu akcja block jest
niezawodnym wyborem na ruchu strumieniowanym. Udowodnij swoją kombinację
etap/strumień w zakładce Test guardraila, zanim na niej polegniesz.
4. Oczyść sekrety z argumentów wywołań narzędzi
Gdy twój agent konstruuje wywołanie narzędzia, poświadczenie może jechać razem w argumentach. Werdykt sanitize Firewalla redaguje dopasowane podłańcuchy z argumentów wywołania narzędzia i przesyła oczyszczone wywołanie — na powierzchniachresponse i mcp, gdzie są żywe argumenty czasu wywołania do
przepisania.
Reguła sanitize nazywa, które detektory redagować w swojej konfiguracji
sanitize_json — zestaw wbudowanych presetów plus opcjonalne
niestandardowe regexy. Dopasowany materiał jest zastępowany przez
[redacted:<preset>] (dopasowania niestandardowe przez [redacted:custom]):
aws_access_key,
aws_secret_key, openai_key, anthropic_key oraz bearer_token (plus
email, ssn_us i credit_card dla PII). Reguła sanitize musi nazwać co
najmniej jeden preset lub wzorzec niestandardowy — pusty sanityzator jest
odrzucany przy zapisie.
Guardrail Secrets Blocker (§2)
pozostaje twoją podstawową obroną dla poświadczeń w ciele żądania —
sanityzator firewalla to uzupełnienie na warstwie akcji dla sekretów, które
pojawiają się konkretnie wewnątrz argumentów wywołań narzędzi.
5. Warstwowanie trzech obron
| Gdzie jest sekret | Warstwa, która go zatrzymuje | Akcja |
|---|---|---|
| W promptcie | Secrets Blocker (guardrail wejściowy) | block |
| W odpowiedzi modelu | Reguła sekretów na wyjściu (guardrail wyjściowy) | block |
| W argumencie wywołania narzędzia | Sanityzator firewalla | sanitize |
6. Obserwuj, co odpaliło
Każda reguła guardraila, która odpala, rejestruje dopasowanie — typ reguły, akcję, etap i łańcuch szczegółów — do strumienia Matches przestrzeni roboczej (GET /api/guardrail/match, Member). Dopasowany podłańcuch jest
rejestrowany tylko gdy „Log raw content” jest włączone, co jest domyślnie
wyłączone — postawa konserwatywna wobec prywatności, aby strumień Matches
sam nie stał się miejscem, gdzie sekrety się gromadzą. Zostaw wyłączone dla
reguł poświadczeń, chyba że konkretnie potrzebujesz podłańcucha do triage.
Decyzje sanitize firewalla lądują w strumieniu Firewall Events
(GET /api/workspace/firewall/events, Developer+), bez logowania sekretów i
blobów reguł.
7. Dokąd dalej
Referencja Guardrails
Typy reguł, encje PII, presety, piaskownica testowa oraz eval harness w
całości.
Referencja reguł firewalla
Język dopasowania — globy narzędzi, klauzule argumentów i sanityzatory.
Ujawnienie PII
Bratnie zagrożenie treści: dane osobowe w promptach i odpowiedziach.
Eksfiltracja danych
Gdy wyciekłe poświadczenie staje się ładunkiem wychodzącego wywołania
eksfiltracji.
Guardrails vs Firewall
Która płaszczyzna zatrzymuje którą klasę wycieku i jak się komponują.
Baza Secure Agents
Postawa startowa, która włącza te obrony razem.
