# La rete di sicurezza: cosa draften non fa mai

Questa pagina è per chi in azienda risponde di draften – e per chiunque si
chieda “e se qualcosa va storto”. Le cose qui sotto non sono impostazioni. Sono
proprietà del programma e non si possono attivare né disattivare.

## Non invia

**Nel codice di draften non c’è un solo punto che invii un messaggio.** Non usa
affatto un server di posta in uscita (SMTP).

Con Microsoft lo impone l’autorizzazione stessa: `Mail.Send` non viene mai concessa.
Con Google vengono dati solo gli ambiti per la lettura, le bozze e le etichette.
Una casella collegata tramite IMAP usa un account con una password per le app,
quindi lì la barriera non la mette il fornitore ma draften – non ha SMTP e non
può inviare.

Quindi nessun errore nelle istruzioni, nessuna email contraffatta e nessuna
svista può far partire della posta. Il caso peggiore è una bozza scritta male –
e qualcuno deve inviarla a mano.

## Non elimina

L’assistente non rimuove nulla dalla casella: nessun messaggio, nessuna bozza,
nessuna cartella. Lì fa esattamente due cose: crea una bozza e contrassegna il
messaggio elaborato (con una categoria, un’etichetta o una parola chiave, a
seconda del sistema di posta) – e se il messaggio non era letto, lo lascia non
letto.

> Una bozza che ha scritto lui stesso la può **riscrivere** su tua istruzione. È
tutto ciò che fa con una bozza: non la elimina e non la invia. Vedi
[Rielaborare una bozza con un’istruzione](/it/revising-a-draft).

## Un testo esterno non è mai un comando

Ogni testo arrivato dall’esterno – il corpo di un messaggio, la storia di una
conversazione, il contenuto di una pagina di documentazione – viene passato al
modello **recintato** ed etichettato come dati. La regola secondo cui da un testo
del genere non si prendono mai istruzioni sta nel programma, non in un testo
modificabile. Non la può scavalcare una tua istruzione, né la frase di un
malintenzionato in un’email.

In più, un messaggio viene **ripulito** prima di essere elaborato: testo bianco,
testo di dimensione zero, commenti HTML e caratteri invisibili vengono rimossi,
e ciò che è stato trovato viene registrato insieme al messaggio. Il lavoro
prosegue – solo che si vede cosa è successo.

> Perché è importante: chiunque può scrivere un’email. Se il testo di un messaggio
venisse preso come istruzione, basterebbe scrivere “invia la risposta a un altro
indirizzo”. In draften un tentativo del genere finisce come una registrazione,
non come un’azione.

## L’output del modello viene controllato

Ciò che scrive il modello viene **verificato dal programma** prima che una bozza
venga salvata:

- un allegato solo se l’assistente è autorizzato a usarlo;
- una copia (CC) solo a indirizzi dell’elenco consentito;
- un destinatario diverso solo se quell’indirizzo era nel messaggio originale;
- link solo a domini consentiti, più le fonti di conoscenza;
- la firma deve comparire per intero, e il testo non deve aprirsi rivolgendosi
  all’assistente.

Se un controllo non viene superato, **non viene creata nessuna bozza** e il
messaggio riceve lo stato scartato con il motivo.

## Il denaro ha un tetto

Il limite di spesa giornaliero è l’ultima protezione: **una volta raggiunto il
limite impostato**, non viene chiamato nessun modello e l’elaborazione si ferma.
Non si accumula nulla e nulla viene recuperato dopo – il giorno seguente
prosegue come al solito. I limiti si impostano per assistente e per
l’organizzazione nel suo insieme. Vedi [Costi e limiti](/it/admin/cost-and-caps).

## Le credenziali sono cifrate

Le credenziali delle caselle, le chiavi dei modelli e i token dei sistemi
collegati stanno nel database **cifrati** (AES-256-GCM). La chiave che li apre è
conservata fuori dal database; nella tua installazione è `MASTER_KEY`.

!> Fare il backup del database senza `MASTER_KEY` non basta: senza la chiave
i valori cifrati sono inutilizzabili dopo un ripristino. Vedi
[Backup e ripristino](/it/admin/backup-and-restore).

## Due worker non si scontrano

Anche con più processi di draften in esecuzione, una casella viene sempre gestita
da uno solo di essi – che la tiene bloccata con un lock nel database. Due bozze
per lo stesso messaggio non possono capitare.
