tools/call immediatamente successivo che fa il dispatch.
L’auth di ogni server è cifrata a riposo e mascherata in lettura, così il
token in chiaro non fa mai il round-trip di ritorno alla tua console, ai tuoi
agent o al modello. La rotazione è un update di un singolo campo attraverso la
console del workspace.
1. Perché la rotazione dei segreti MCP è un’azione a sé
Un MCP server registrato detiene tre cose che non vuoi perdere quando una credenziale cambia: unname unico per workspace (il namespace
<server>.<tool> contro cui le tue regole fanno glob), un endpoint, e il suo
insieme di tool scoperti. Eliminare e ri-creare il server per cambiare un token
orfanerebbe ogni regola con scope <server>.* e forzerebbe un nuovo
probe.
La rotazione aggira tutto questo. Fai PUT dello stesso record di server con
nuovo auth_json; tutto il resto — name, regole, tool scoperti — resta al suo
posto.
Il gateway inietta le credenziali al momento del dispatch, decifrandole
solo per fare la chiamata upstream. Un segreto ruotato ha effetto alla
connessione successiva — OrcaRouter invalida la cache dei tool per-workspace a
ogni modifica di server, quindi non c’è alcun TTL da attendere.
2. Una rotazione concreta
Diciamo che hai registrato un MCP server chiamatogithub con un bearer token,
e quel token deve ruotare. Leggi prima il record corrente — la risposta
maschera il segreto, così non stai mai maneggiando il vecchio testo in chiaro:
PUT dello stesso record con solo la nuova credenziale. Invia
l’id nel body e il nuovo auth_json; il gateway lo ri-cifra prima che tocchi
il database:
name, endpoint, auth_mode e
enabled mantengono tutti i loro valori memorizzati. Il nuovo token è live sul
prossimo tools/call.
3. Cambiare la modalità di auth, non solo il segreto
La rotazione copre anche lo spostamento di un server tra schemi di auth. L’insieme chiuso di valoriauth_mode è:
none
none
Nessuna credenziale.
auth_json è vuoto. Usalo per server MCP pubblici o
fidati per rete.bearer
bearer
{ "token": "…" } — inviato come header Authorization: Bearer.oauth
oauth
{ "client_id": "…", "client_secret": "…", "token_url": "…" }. Se
memorizzi un access_token statico nel JSON, il gateway lo invia come
bearer token; lo scambio client-credentials in sé non è ancora eseguito,
quindi un server che ha bisogno di uno scambio live fallirà finché non
fornisci un token.basic
basic
{ "username": "…", "password": "…" } — HTTP basic auth.4. Dopo aver ruotato: rifai il probe
Una credenziale ruotata cambia quali tool puoi raggiungere se il vecchio token era stato revocato. Fai il probe del server per confermare che la nuova auth funziona e rinfrescare il suostatus di
raggiungibilità:
ok, degraded o down. Un fallimento di auth emerge qui anziché
come un errore di tool confuso a metà run.
5. Ruoli e cosa resta mascherato
Ogni azione su questa pagina è una chiamata di console con scope a livello di workspace (/api/workspace/firewall/mcp_servers, UserAuth) ed è role-gated:
| Azione | Ruolo minimo |
|---|---|
| Leggere un server (segreto mascherato) | Member |
| Ruotare / aggiornare / registrare | Developer+ |
| Eliminare | Developer+ |
Il testo in chiaro non viene mai restituito alla tua console. Le letture
mascherano il segreto e redigono l’endpoint; il gateway è l’unica cosa che
decifra una credenziale, e solo nel momento in cui contatta il server upstream.
Il modello e i tuoi agent non vedono né il vecchio né il nuovo token.
6. Dove si colloca
La rotazione è un’operazione nella superficie di fiducia MCP più ampia. Una volta che i tuoi server sono connessi e autenticati, lo stesso gateway valuta ognitools/call contro la tua policy del firewall
prima che giri, applica la quarantena delle
skill sopra, e governa il raggio d’azione in
uscita.
Connetti un server
Registra un MCP server e fai il probe dei suoi tool.
Autentica
Scegli la modalità di auth giusta per ogni server.
Allow-list dei tool MCP
Dai scope a quali tool ogni server può esporre.
Limiti di egress
Governa dove le chiamate a tool possono arrivare.
FAQ
Devo ri-scrivere le mie regole del firewall dopo aver ruotato?
Devo ri-scrivere le mie regole del firewall dopo aver ruotato?
No. La rotazione cambia solo la credenziale. Il server mantiene il suo
name, quindi ogni regola con scope <server>.* — e qualsiasi
allow-list — resta attaccata.Gli agent in volo si romperanno quando ruoto?
Gli agent in volo si romperanno quando ruoto?
Il nuovo segreto viene iniettato sul prossimo
tools/call dispacciato. Non
c’è alcun TTL di cache da attendere — OrcaRouter invalida la cache dei tool
del workspace a ogni modifica di server.Posso vedere il vecchio token per confermare cosa sto sostituendo?
Posso vedere il vecchio token per confermare cosa sto sostituendo?
No — ed è proprio il punto. Le letture restituiscono un segreto mascherato;
il testo in chiaro è decifrato solo dal gateway al dispatch. Ruota inviando
un nuovo valore, poi fai il probe per confermare
che funziona.
