Centro sicurezza Cyril
Ci impegniamo per la sicurezza, la riservatezza e l’affidabilità dei tuoi dati. Questa pagina riassume la postura di sicurezza di Cyril, gli impegni di conformità e le pratiche operative.
Pratiche di sicurezza
Cifratura in transito
Tutto il traffico verso Cyril è cifrato con TLS 1.2 o superiore. HTTPS è imposto su ogni endpoint e le richieste HTTP vengono reindirizzate.
Cifratura a riposo
I segreti delle integrazioni per organizzazione, i token OAuth e i seed TOTP sono cifrati a livello applicativo con una chiave master conservata fuori dal database. I backup cifrati vengono scritti con age prima del caricamento nell’object storage. Il database principale si affida alla cifratura dei volumi del provider di hosting: AES-256 gestita dal provider.
Controlli di accesso
Controllo degli accessi basato sui ruoli, con impostazioni predefinite a privilegio minimo. L’autenticazione a più fattori è obbligatoria per gli amministratori di piattaforma e gli amministratori del cliente possono renderla obbligatoria per tutta l’organizzazione.
Gestione delle vulnerabilità
La scansione automatica delle dipendenze (Dependabot e pnpm audit), l’analisi statica (CodeQL) e la scansione dei container (Trivy) fanno da gate a ogni rilascio in produzione. La divulgazione coordinata passa dal nostro programma di bug bounty.
Risposta agli incidenti
Runbook di risposta agli incidenti documentato, con livelli di gravità e SLA dichiarati. Le violazioni di dati personali vengono notificate ai clienti interessati entro 72 ore dalla conferma, in linea con l’articolo 33 del GDPR.
Isolamento fra tenant
Un database condiviso con isolamento di riga tramite org_id, applicato nel livello di servizio. I test di isolamento fra tenant sono obbligatori per ogni tipo di entità, secondo la nostra Definition of Done. Non esiste alcuna condivisione di dati fra tenant.
L’AI e i tuoi dati
Cyril ha un livello AI integrato nel prodotto. Poiché quel livello legge i tuoi record aziendali per essere utile, lo teniamo alle stesse regole di accesso del resto della piattaforma e siamo espliciti su ciò che esce dalla nostra infrastruttura.
L’AI vede solo ciò che vedi tu
L’AI di Cyril risponde come il singolo utente, non come l’organizzazione. Il recupero delle informazioni è filtrato dalla stessa proprietà dei record, dagli stessi ruoli e dalle stesse autorizzazioni dell’area di lavoro che governano l’interfaccia: non può quindi far emergere un record che nell’interfaccia ti verrebbe negato. È imposto nel codice, non è un’istruzione data al modello, che si potrebbe aggirare a parole.
L’applicazione delle regole è testata, non dichiarata
Test automatici di isolamento fra ruoli girano a ogni modifica e bloccano il rilascio se un ruolo con meno privilegi riesce a recuperare tramite l’AI i record di un altro utente. Anche il recupero effettuato dall’AI viene scritto in un registro di accesso per l’audit.
Gli identificativi vengono rimossi prima di uscire
Prima che un prompt raggiunga un fornitore di modelli, gli identificativi diretti strutturati — indirizzi email, numeri di telefono, indirizzi IP, codici di previdenza e sicurezza sociale, IBAN e numeri di carta — vengono sostituiti con token reversibili e poi ripristinati nella risposta che vedi. Gli identificativi immersi nel testo libero, come il nome di una persona scritto a metà frase, non hanno uno schema affidabile e non vengono tokenizzati.
L’AI esterna la puoi spegnere
Un amministratore dell’organizzazione può disattivare del tutto l’elaborazione tramite LLM esterni per il proprio tenant. L’interruttore è applicato nell’unico punto da cui passa ogni chiamata AI e rifiuta la chiamata prima ancora che venga costruito un corpo di richiesta, non al livello dell’interfaccia.
Esiste un’opzione senza uscita di dati
Le organizzazioni che non possono in alcun modo inviare dati a un modello di terze parti possono essere instradate su inferenza self-hosted, gestita nella nostra infrastruttura o nella loro. Quel percorso non prevede alcun ripiego su fornitori pubblici: o la richiesta raggiunge l’endpoint privato, o fallisce.
L’isolamento fra tenant vale anche per l’AI
Ogni query dell’AI e ogni recupero sono circoscritti a una sola organizzazione. Due organizzazioni non condividono mai i risultati di un recupero, né un prefisso di prompt in cache presso un fornitore di modelli.
Addestramento dei modelli. Usiamo Anthropic e OpenAI tramite i loro piani API commerciali che, secondo le condizioni pubblicate da quei fornitori, non vengono usati per addestrare i loro modelli. Il comportamento di addestramento tipico delle chat per il grande pubblico, quello a cui di solito si pensa, non si applica al traffico API.
Che cosa è ancora in corso. Preferiamo dirtelo piuttosto che lasciartelo dare per scontato. Due impegni non sono ancora in vigore: gli accordi sul trattamento dei dati controfirmati con ciascun fornitore di modelli a nome della nostra entità operativa, e le condizioni di Zero Data Retention che eliminano la breve finestra di monitoraggio degli abusi durante la quale un fornitore può trattenere una richiesta. Finché entrambi non saranno in essere, i fornitori vengono usati secondo le loro condizioni standard pubblicate, il DPA che offriamo ai clienti è una bozza e non un accordo approvato da un legale, e non facciamo alcuna dichiarazione contrattuale sulla conservazione oltre a quanto quelle condizioni pubblicate ci concedono. Le organizzazioni che hanno bisogno di una garanzia prima possono usare l’interruttore AI del tenant o l’opzione senza uscita di dati descritta sopra. Aggiorneremo questa sezione, con le date, man mano che ciascun punto sarà completato.
I controlli tecnici descritti qui sopra vengono da un audit interno sulla postura di fiducia dell’AI, comprese le lacune che abbiamo trovato e ciò che abbiamo fatto per ciascuna. È disponibile su richiesta: scrivi a security@getcyril.com.
Conformità e certificazioni
SOC 2 Type 1
In preparazione al primo audit
SOC 2 Type 1 è un requisito per la disponibilità generale di Cyril. Il Type 2 segue sei mesi dopo l’attestazione del Type 1. Oggi non abbiamo alcuna certificazione e non è disponibile alcun report di audit.
GDPR
Conforme
Trattiamo i dati personali nel rispetto del GDPR. I diritti dell’interessato — accesso, cancellazione, rettifica e portabilità — sono supportati dalla piattaforma.
Accordo sul trattamento dei dati
Bozza — in attesa della revisione legale
Il nostro DPA è già leggibile, ma non ha ancora completato la revisione legale ed è pubblicato come bozza per una valutazione, non come accordo definitivo. I clienti che hanno bisogno di un DPA sottoscritto possono contattarci e confermeremo le tempistiche.
Disponibilità e stato del servizio
Cyril è software pre-lancio in sviluppo attivo, e i nostri Termini di servizio dicono chiaramente che non esiste alcun impegno di disponibilità né alcun accordo sui livelli di servizio. Qui non pubblichiamo percentuali di disponibilità e non sono previsti crediti di servizio. In concreto il servizio può essere interrotto per manutenzione, alcune funzionalità possono risultare brevemente non disponibili durante un rilascio e in produzione verranno trovati difetti, perché il prodotto è giovane.
Livelli di servizio e tempi di risposta dell’assistenza esistono solo dove un Ordine Enterprise li concorda. Valgono per quel cliente e prevalgono sulla posizione generale; nessuno si applica per impostazione predefinita. Se ti serve un livello di servizio garantito prima di poter adottare Cyril, è una conversazione da fare in sede di Ordine, non un’ipotesi da trarre da questa pagina.
Lo stato del servizio in tempo reale — incidenti in corso, manutenzioni programmate e storico della disponibilità — si trova su status.getcyril.com. La superficie di stato è in fase di allestimento nell’ambito dell’hardening pre-GA; finché non sarà attiva, i clienti possono ricevere gli avvisi di incidente tramite il contatto email della loro organizzazione.
Sub-responsabili
Alcuni soggetti terzi fanno parte del funzionamento di Cyril: l’hosting, il recapito delle email, i fornitori di modelli dietro il livello AI. Li usano tutte le organizzazioni sulla piattaforma e non c’è alcuna impostazione per disattivarli. Altri sono facoltativi: entrano in gioco solo quando qualcuno della tua organizzazione attiva un’integrazione da Impostazioni → Integrazioni. Se l’integrazione non viene mai configurata, a quel soggetto non arriva alcun dato.
Invece di tenerne qui una seconda copia, l’informativa ufficiale — ogni fornitore, che cosa gli viene inviato, la regione di trattamento e le condizioni sui dati a cui è vincolato — è pubblicata per intero su /legal/sub-processors/.
Notifica delle modifiche. È su quella pagina che una modifica compare per prima: quando un sub-responsabile viene aggiunto, rimosso o sostituito, la aggiorniamo insieme alla data che riporta. La sezione 3.2 dell’Accordo sul trattamento dei dati impegna a un preavviso scritto di 60 giorni prima del cambio di qualsiasi fornitore sempre attivo, con diritto di opposizione entro quella finestra. Il DPA è ancora una bozza in attesa di revisione legale, quindi quell’impegno è fermo quanto può esserlo una bozza — ma è nel documento che puoi scaricare oggi, e preferiamo esserne tenuti responsabili piuttosto che lasciarlo lì non letto. Per sapere quando l’elenco cambia, scrivi a legal@getcyril.com.
Bug bounty
Gestiamo un programma di divulgazione coordinata delle vulnerabilità e accogliamo le segnalazioni dei ricercatori di sicurezza che agiscono in buona fede. Le segnalazioni ammissibili ricevono un riconoscimento pubblico e ci impegniamo a non intraprendere mai azioni legali contro chi rispetta la policy.
Sii tra i primi a usare Cyril.
Iscriviti alla lista d’attesa per l’accesso anticipato. Ti scriviamo solo quando c’è qualcosa di concreto da raccontare.