Pośrednik poświadczeń
Państwa agenci wykonują wywołania API.
Nigdy nie powinni przechowywać kluczy.
Clavitor Proxy działa pomiędzy Państwa agentami AI a interfejsami API, do których się łączą. Poświadczenia są wstrzykiwane na poziomie sieci – agent nigdy nie widzi, nie przechowuje ani nie loguje rzeczywistego sekretu. Jeden plik binarny. Jedna zmienna środowiskowa. Zero zmian w kodzie.
Problem, który już Państwo mają
Sekrety w zmiennych środowiskowych
Państwa agenci odczytują OPENAI_API_KEY ze środowiska. Ten klucz jest widoczny w /proc, w zrzutach awaryjnych, w logach CI, w każdym narzędziu, które agent wywołuje. Jedna wyciekła linia logu i klucz staje się publiczny.
Sekrety w pamięci agenta
Nawet jeśli agent pobiera klucz w czasie wykonywania, przechowuje go w pamięci przez czas trwania procesu. Skompromitowany komponent, wstrzyknięcie podpowiedzi, zrzut debugowania – klucz jest tam do wzięcia.
Brak audytu użycia
Gdy klucz API jest udostępniany jako ciąg znaków, nie ma rejestru, który agent go użył, kiedy ani w jakim celu. Jeśli klucz wycieknie, dokonują Państwo jego rotacji i mają nadzieję. Nie ma śladu kryminalistycznego.
Problemy, których Państwo mamy nadzieję nie mieć
Klucze API w kodzie źródłowym
Zakodowane na stałe w pliku konfiguracyjnym, zatwierdzone w repozytorium git, sklonowane przez każdego programistę i proces CI w zespole. Jedno publiczne rozwidlenie i klucz trafia na pulpit nawigacyjny skanowania sekretów GitHub – lub co gorsza, nie trafia.
Poświadczenia w Slack
„Czy możesz mi wysłać klucz Stripe?" Wklejony w wiadomości prywatnej, możliwy do wyszukania na zawsze, wyeksportowany w każdym archiwum zgodności. Slack nie jest sejfem. Podobnie jak e-mail, Google Docs czy karteczka samoprzylepna na monitorze.
Pliki .env na każdym laptopie
Dwunastu programistów, dwanaście kopii poświadczeń produkcyjnych w plikach tekstowych, które nigdy nie są rotowane. Jeden skradziony laptop, jeden wyciek z ~/.bash_history, jedno nadmiernie pomocne narzędzie do tworzenia kopii zapasowych – i dokonują Państwo rotacji każdego klucza w firmie o 2 w nocy.
Usuń poświadczenia z agenta.
Pośrednik działa pomiędzy agentem a interfejsem API. Agent zapisuje odwołanie – clavitor://OpenAI/key – tam, gdzie powinien znajdować się sekret. Pośrednik rozwiązuje je lokalnie, wstrzykuje rzeczywiste poświadczenie do żądania HTTPS i przekazuje je dalej. Logi agenta pokazują symbol zastępczy. Interfejs API otrzymuje klucz. Nic pomiędzy nie przechowuje go.
Żadnych zmiennych środowiskowych. Żadnych sekretów w pamięci agenta. Żadnych poświadczeń w wierszu poleceń. Prawdziwy klucz nigdy nie trafia do środowiska, pamięci ani logów agenta, więc agent nie ma czego wkleić, wypisać ani ujawnić, nawet namówiony. Dotyczy to kluczy kierowanych przez proxy. Osoba kontrolująca maszynę nadal może korzystać z proxy albo odczytać klucz z pamięci proxy jako root, a skompromitowany agent nadal może nadużyć przyznanego mu dostępu. Zakres, limity częstości i audyt ograniczają to.
# proxy-auth is the proxy's access token, the file beside the binary
$ export HTTPS_PROXY="http://clavitor:$(cat proxy-auth)@127.0.0.1:1983"
$ curl -H "Authorization: Bearer clavitor://OpenAI/key" \
https://api.openai.com/v1/chat/completions
# The proxy resolved the placeholder. The agent never saw sk-EXAMPLE_not_a_real_key.
# Neither did the logs, the crash dump, or the conversation history.Działa z każdym agentem wykonującym wywołania HTTPS: Claude Code, Codex, OpenClaw, CrewAI, LangChain, niestandardowe skrypty. Ustaw jedną zmienną środowiskową, a wywołania API agenta będą przepływać przez pośrednika. Bez SDK, bez wtyczki, bez zmian w kodzie.
Co dzieje się pod maską
Deszyfrowanie lokalne, na żądanie
Pośrednik pobiera zaszyfrowane poświadczenie z sejfu i deszyfruje je na urządzeniu. Tekst jawny istnieje w pamięci procesu przez jedno żądanie HTTP, a następnie znika. Nic nie jest buforowane. Nic nie jest zapisywane na dysku. Każde żądanie jest deszyfrowane na nowo.
Mapuje pola na nagłówki
Tokeny Bearer, klucze API, uwierzytelnianie Basic – pośrednik automatycznie mapuje etykiety pól sejfu na odpowiednie nagłówki HTTP. Lub agent wybiera dokładne pole za pomocą odwołania clavitor://. W obu przypadkach poświadczenie trafia we właściwe miejsce, bez wiedzy agenta.
Zakresy, limity szybkości, audyt
Sejf egzekwuje granice zakresu i limity szybkości. Agent uzyskujący dostęp do zbyt wielu różnych poświadczeń jest automatycznie blokowany. Każdy dostęp jest rejestrowany. Dołącz identyfikator agenta do symbolu zastępczego – clavitor://agentid@Entry/field – aby uzyskać ścieżki audytu dla poszczególnych agentów i limity szybkości za pośrednictwem wspólnego pośrednika.
Wdrożenie
Jeden plik binarny. Jako sidecar dla agenta. Bez zmian w infrastrukturze sieciowej.
Host z jednym agentem
Proszę pobrać plik binarny, uruchomić clavitor-proxy init z blobem rejestracji i kluczem oraz ustawić HTTPS_PROXY na agencie. Gotowe. Proxy nasłuchuje na 127.0.0.1:1983 (sidecar jednego agenta). Z własnej inicjatywy nie nasłuchuje na żadnym innym adresie: port przenosi token dostępu w postaci jawnej, więc poza loopbackiem odmawia startu, chyba że ustawią Państwo CLAVITOR_PROXY_LISTEN na ten adres i utworzą obok pliku binarnego plik o nazwie proxy-allow-private z dostępem wyłącznie dla właściciela. Robią to Państwo tylko wtedy, gdy adres ten należy do zaufanej sieci prywatnej (VPN lub Tailscale).
Host z wieloma agentami
Każdy agent otrzymuje własną kopię pliku binarnego z własnym plikiem konfiguracyjnym sidecar. Każda kopia ma własny zakres, własne limity szybkości, własną ścieżkę audytu. Agent A nie może zobaczyć poświadczeń Agenta B. Izolacja z założenia.
Każdy pośrednik poświadczeń działający w chmurze – Państwa lub czyjś inny – jest celem. Naruszenie pośrednika, uzyskanie poświadczeń każdego klienta. To nie jest teoretyczne ryzyko. To model biznesowy każdego pośrednika poświadczeń jako usługi.
Proxy Clavitor działa w infrastrukturze Pana/Pani. Odszyfrowuje lokalnie. Poświadczenie istnieje w pamięci procesu przez czas jednego żądania. Żadna usługa chmurowa nie przechowuje kluczy Pana/Pani w postaci jawnej. Żaden endpoint API nie udostępnia sekretów Pana/Pani. Nie istnieje chmurowa kopia kluczy Pana/Pani, którą można by naruszyć.
Państwa agenci już wykonują wywołania API.
Niech pozostaną na swoim torze.
Państwa sejf, Państwa zakresy, Państwa ścieżka audytu. Pośrednik dodaje punkt egzekwowania na poziomie sieci bez żadnych zmian w kodzie agenta.