Tutta la gestione delle policy avviene nella console (o nelle rotte di gestione
/api/workspace/firewall/*, che si autenticano con la tua sessione / token di
accesso — non una chiave di relay sk-orca-…). Solo le chiamate /v1/* del tuo
agent usano la chiave di relay. Creare, modificare e impostare come default una
policy sono azioni Developer+; leggere l’elenco delle policy e la sua version è
aperto a ogni Member.1. Dirama la tua postura in una seconda policy
Non c’è alcun verdetto “fork” o pulsante di copia — un nome di policy è univoco per workspace, quindi il pattern è allestire una seconda policy versionata indipendentemente e farla divergere liberamente senza toccare l’originale. Due modi per seminarla:Crea la nuova policy, poi scrivi le sue regole
Apri Security → Firewall → Policies → New policy. Una nuova policy viene
creata con nessuna regola e il tuo
default_verdict scelto — scrivi le sue
regole nell’editor (o copiane alcune dalla policy sorgente a mano). Dalle un
nome univoco nel workspace (es. prod-firewall accanto a staging-firewall).O applica un template di caso d'uso
La galleria Templates (
POST /api/workspace/firewall/templates/apply) crea
una nuova policy più tutte le sue regole in una singola transazione — Coding,
Support, RAG, Data, DevOps, Browser o Baseline. Più veloce della scrittura a mano
quando un template corrisponde.2. La version che si incrementa a ogni update
Ogni policy del firewall ha un interoversion. Parte da 1 quando la policy è
creata e si incrementa di uno a ogni update — una modifica di regola, un cambio
di verdetto di default, un toggle di abilita/disabilita, un cambio di shadow-mode. È
monotono e non si resetta mai.
version non guida la cache; è un contatore di
modifiche monotono che rileggi. Quando salvi una policy e vuoi confermare che la
modifica è live, rileggi la policy e controlla che version sia avanzato.
La
version della policy è un contatore di modifiche, non un punto di ripristino.
Ti dice che la policy è cambiata e permette al gateway di propagare la modifica —
non è un diff o un rollback per versione. Per una storia versionata completa con
diff e revert a un clic, quella capability vive sui
Guardrails: GET /api/guardrail/:id/history,
…/history/diff e POST /api/guardrail/:id/revert (il revert è
Developer+). Per le policy del firewall, la tua traccia di audit e il mantenere una
policy known-good declassata nell’elenco sono come preservi un punto di ripristino —
vedi §5.3. Imposta e sposta il default del workspace
Un workspace può marcare una policy come default. Ogni chiave senza il propriofirewall_policy_id si risolve su di essa
(ordine di risoluzione).
- Modifica una policy e impostala come default del workspace. Promuovere un nuovo default declassa il vecchio nella stessa transazione — non c’è mai una finestra con due default, e mai una finestra con nessuno a metà scambio.
- Allestire una seconda policy è un modo pulito per far avanzare il default: costruisci la nuova policy, regola, valida sotto shadow mode, poi promuovila. Il vecchio default rimane nell’elenco, declassato, come tuo fallback.
4. Abilita, disabilita ed elimina
Disabilita una policy
Disabilita una policy
Disattivare Enabled impedisce a una policy di risolversi. Ma ricorda il
fall-through del firewall: una chiave la cui policy collegata è disabilitata
ricade sul default del workspace — disabilitare non toglie la chiave dallo
scope del firewall. Per rimuovere una chiave dall’applicazione, scollegala
(imposta
firewall_policy_id a 0), non limitarti a disabilitare la sua policy.
(Questo differisce dai guardrails, dove un collegamento disabilitato si risolve
in nessuno.)Elimina una policy
Elimina una policy
DELETE /api/workspace/firewall/policies/:id (Developer+) rimuove una policy —
ma restituisce 409 se una qualsiasi chiave la referenzia ancora. Scollega o
ri-punta quelle chiavi prima, poi elimina. Questa guardia è il motivo per cui
allestire una seconda policy, anziché riscrivere sul posto, è il modo più sicuro
per evolvere una policy da cui dipendono chiavi live.I nomi sono univoci per workspace
I nomi sono univoci per workspace
Un nome di policy è univoco all’interno di un workspace, quindi una seconda
policy ha bisogno di un nuovo nome. Usa una convenzione che sopravvive al ciclo
di vita —
staging-firewall / prod-firewall, o un suffisso di data — anziché
policy-copy-2.5. Traccia di audit
Ogni creazione, update (che include una promozione a default o un cambio di shadow-mode) ed eliminazione di policy scrive una riga di audit — sia una riga del workspace sia una riga admin centrale — dopo il commit della modifica. Un salvataggio fallito (nome duplicato, verdetto invalido) non scrive nulla. I blob delle regole e i segreti non vengono mai scritti nel log di audit. Quindi, anche se le policy del firewall non portano una storia di diff-e-revert propria, la traccia di audit ti dice chi ha cambiato quale policy, quando, e laversion monotona ti dice quante volte è cambiata. Abbinalo al mantenere una
policy known-good declassata nell’elenco, e hai un percorso di ripristino pratico.
6. Ciclo di vita in breve
| Azione | Rotta | Ruolo |
|---|---|---|
| Elencare le policy (+ version, conteggi) | GET /api/workspace/firewall/policies | Member |
| Leggere una policy | GET /api/workspace/firewall/policies/:id | Member |
| Creare una policy (senza regole) | POST /api/workspace/firewall/policies | Developer+ |
| Applicare un template (policy + regole) | POST /api/workspace/firewall/templates/apply | Developer+ |
Update (incrementa version) | PUT /api/workspace/firewall/policies | Developer+ |
| Eliminare (409 se ci sono chiavi collegate) | DELETE /api/workspace/firewall/policies/:id | Developer+ |
Dove andare dopo
Crea e collega
Il percorso di configurazione iniziale — crea una policy e puntale una chiave.
Shadow mode
Fai il rollout di una policy nuova o ri-defaultata senza modificare il traffico live.
Firewall + Guardrails
Come le policy di azione si compongono con i guardrail di testo — e dove vive il
revert versionato.
Scope: chiavi, policy, workspace
Come si risolvono il collegamento e il default del workspace.
