Przejdź do głównej treści
Gdy klucz wycieka, kontraktor odchodzi lub token po prostu się starzeje, musisz wymienić poświadczenie na zarejestrowanym serwerze MCP bez zburzenia rekordu serwera, ponownego autorowania jego reguł firewalla czy przerywania agentów już połączonych przez bramę. Tym właśnie jest rotacja: zaktualizuj auth na istniejącym serwerze, a brama MCP zaczyna wstrzykiwać nowy sekret przy najbliższym tools/call, które zdyspozytuje. Auth każdego serwera jest szyfrowany w spoczynku i maskowany przy odczycie, więc tekst jawny tokenu nigdy nie wraca do twojej konsoli, twoich agentów ani modelu. Rotacja to aktualizacja jednego pola przez konsolę przestrzeni roboczej.

1. Dlaczego rotacja sekretu MCP to osobna akcja

Zarejestrowany serwer MCP trzyma trzy rzeczy, których nie chcesz stracić, gdy poświadczenie się zmienia: unikalną name przestrzeni roboczej (przestrzeń nazw <server>.<tool>, wobec której twoje reguły globują), endpoint i jego odkryty zestaw narzędzi. Usunięcie i ponowne utworzenie serwera, by zmienić token, osierociłoby każdą regułę zawężoną do <server>.* i wymusiłoby świeże sondowanie. Rotacja omija to wszystko. Robisz PUT na tym samym rekordzie serwera z nowym auth_json; wszystko inne — nazwa, reguły, odkryte narzędzia — zostaje na miejscu.
Brama wstrzykuje poświadczenia w czasie dyspozycji, odszyfrowując je tylko po to, by wykonać wywołanie upstream. Zrotowany sekret wchodzi w życie przy następnym połączeniu — OrcaRouter unieważnia per-przestrzeń-roboczą cache narzędzi przy każdej zmianie serwera, więc nie ma TTL, na który trzeba czekać.

2. Jedna konkretna rotacja

Powiedzmy, że zarejestrowałeś serwer MCP o nazwie github z tokenem bearer, i ten token musi się zmienić. Najpierw odczytaj bieżący rekord — odpowiedź maskuje sekret, więc nigdy nie obsługujesz starego tekstu jawnego:
# Konfiguruj z sesji konsoli (UserAuth), nie kluczem relay.
curl https://api.orcarouter.ai/api/workspace/firewall/mcp_servers/42 \
  -H "Authorization: Bearer <your console access token>"
Następnie zrób PUT na tym samym rekordzie z tylko nowym poświadczeniem. Wyślij id w ciele i świeży auth_json; brama ponownie zaszyfruje go, zanim dotknie bazy danych:
curl -X PUT https://api.orcarouter.ai/api/workspace/firewall/mcp_servers \
  -H "Authorization: Bearer <your console access token>" \
  -H "Content-Type: application/json" \
  -d '{
    "id": 42,
    "auth_json": "{\"token\":\"ghp_NEW_token\"}"
  }'
Pola, które pominiesz, pozostają nietknięte — name, endpoint, auth_mode i enabled zachowują swoje przechowywane wartości. Nowy token jest żywy przy następnym tools/call.
Odeślij maskę, by zachować sekret; wyślij prawdziwą wartość, by go zmienić. Jeśli odczytasz rekord i zrobisz PUT z powrotem dosłownie, zamaskowany placeholder w auth_json jest rozpoznawany jako „zachowaj to, co przechowane” — sekret nie jest nadpisywany maską. Tylko prawdziwie nowy auth_json rotuje poświadczenie.

3. Zmiana trybu auth, nie tylko sekretu

Rotacja pokrywa również przeniesienie serwera między schematami auth. Zamknięty zestaw wartości auth_mode to:
Brak poświadczenia. auth_json jest pusty. Użyj dla publicznych lub zaufanych-po-sieci serwerów MCP.
{ "token": "…" } — wysyłany jako nagłówek Authorization: Bearer.
{ "client_id": "…", "client_secret": "…", "token_url": "…" }. Jeśli przechowasz statyczny access_token w JSON, brama wysyła go jako token bearer; sama wymiana client-credentials nie jest jeszcze uruchamiana, więc serwer, który potrzebuje żywej wymiany, zawiedzie, dopóki nie dostarczysz tokenu.
{ "username": "…", "password": "…" } — HTTP basic auth.
Przełączanie między dwoma trybami z poświadczeniami (np. bearerbasic) wymaga wysłania świeżego auth_json w tym samym żądaniu. Przechowywany szyfrogram jest związany ze swoim oryginalnym trybem, więc stary sekret nie może być reinterpretowany pod nowym kształtem — dostarcz nowe poświadczenie, albo aktualizacja jest odrzucana.

4. Po rotacji: zasonduj ponownie

Zrotowane poświadczenie zmienia, które narzędzia możesz dosięgnąć, jeśli stary token został unieważniony. Zasonduj serwer, by potwierdzić, że nowy auth działa, i odświeżyć jego status osiągalności:
curl -X POST \
  https://api.orcarouter.ai/api/workspace/firewall/mcp_servers/42/probe \
  -H "Authorization: Bearer <your console access token>"
Sondowanie uruchamia uścisk dłoni MCP z nowym odszyfrowanym poświadczeniem i raportuje ok, degraded lub down. Niepowodzenie auth wypływa tutaj, zamiast jako mylący błąd narzędzia w środku uruchomienia.

5. Role i co zostaje zamaskowane

Każda akcja na tej stronie to wywołanie konsoli w zakresie przestrzeni roboczej (/api/workspace/firewall/mcp_servers, UserAuth) i jest bramkowana rolami:
AkcjaMinimalna rola
Odczyt serwera (sekret zamaskowany)Member
Rotacja / aktualizacja / rejestracjaDeveloper+
UsunięcieDeveloper+
Tekst jawny nigdy nie jest zwracany do twojej konsoli. Odczyty maskują sekret i redagują endpoint; brama jest jedyną rzeczą, która odszyfrowuje poświadczenie, i tylko w chwili, gdy dzwoni do serwera upstream. Model i twoje agenty nie widzą ani starego, ani nowego tokenu.

6. Gdzie to pasuje

Rotacja to jedna operacja w szerszej powierzchni zaufania MCP. Gdy twoje serwery są połączone i uwierzytelnione, ta sama brama ewaluuje każde tools/call wobec twojej polityki firewalla, zanim się uruchomi, nakłada na wierzch kwarantannę skilla i zarządza wychodzącym zasięgiem.

Połącz serwer

Zarejestruj serwer MCP i zasonduj jego narzędzia.

Uwierzytelnij

Wybierz właściwy tryb auth dla każdego serwera.

Lista dozwolonych narzędzi MCP

Zawęź, które narzędzia każdy serwer może wystawiać.

Limity egress

Zarządzaj, dokąd wywołania narzędzi mogą sięgać.
Zobacz Firewall: serwery MCP po pełny cykl życia serwera i Listę kontrolną zaufania MCP po przejście utwardzające od początku do końca. Rotacja jest też stałą pozycją przeciwko zatruwaniu narzędzi MCP i eksfiltracji danych: poświadczenie, które możesz szybko wymienić, to poświadczenie, na którym wyciek nie może osiąść.

FAQ

Nie. Rotacja zmienia tylko poświadczenie. Serwer zachowuje swoją name, więc każda reguła zawężona do <server>.* — i każda lista dozwolonych — pozostaje dołączona.
Nowy sekret jest wstrzykiwany przy następnym zdyspozytowanym tools/call. Nie ma TTL cache, na który trzeba czekać — OrcaRouter unieważnia cache narzędzi przestrzeni roboczej przy każdej zmianie serwera.
Nie — i o to chodzi. Odczyty zwracają zamaskowany sekret; tekst jawny jest odszyfrowywany tylko przez bramę przy dyspozycji. Rotuj, wysyłając nową wartość, potem zasonduj, by potwierdzić, że działa.