Qual è la differenza rispetto a un servizio cloud?

La domanda "dove si trovano i documenti della mia pratica?" emerge spesso al momento della firma di un contratto o durante un audit. Task Manager lo installi sul tuo server - da solo oppure avvalendoti dell'installazione da remoto come servizio aggiuntivo - quindi il database e i file restano dove decidi tu. Il modo in cui viene caricata l'interfaccia non determina di per sé dove vengono conservati i dati. Permette però di verificare se il browser si collega a servizi esterni.

Il browser scarica l'interfaccia esclusivamente dal server dell'applicazione. Non utilizza CDN, Google Fonts né generatori esterni di avatar. Questo vale anche per le schermate di login, registrazione, reset password, promemoria password, attivazione account e installer. Gli avatar con le iniziali vengono disegnati da uno script incluso nell'applicazione. I font Roboto, Fira Code e Material Symbols e la libreria di formattazione del testo fanno parte del pacchetto del programma.

Le risorse dell'interfaccia sono disponibili dal server dell'applicazione anche in una rete senza internet. Con il pannello della licenza il server si collega da solo: al login, all'attivazione della chiave e al controllo degli aggiornamenti. Gli trasmette solo i dati della licenza, come chiave e dominio, e la versione del programma. Con altri servizi si collega solo quando li indichi o li attivi: con i server di posta, il fornitore AI, Google Calendar, i webhook n8n e i gateway delle notifiche push. Il browser va oltre il server dell'applicazione solo in quattro situazioni: con i video (ad es. da YouTube o Vimeo) o un'immagine da un altro sito incorporata nel contenuto, con i messaggi in Posta contenenti elementi scaricati dalla rete (immagini remote solo dopo aver cliccato Mostra immagini), all'attivazione delle notifiche push e al login su Google durante il collegamento del calendario.

Che cosa succede esattamente ai contenuti delle attività e dei messaggi?

Limitare le connessioni del browser non basta se qualcuno si procura un'istantanea del database. La cifratura dei contenuti funziona nella variante Pro ed è disattivata per impostazione predefinita. Dopo la generazione della chiave e l'attivazione della cifratura da parte dell'amministratore, Task Manager cifra con l'algoritmo AES-256-GCM i messaggi scritti dagli utenti e le descrizioni delle attività, mentre in Posta (Pro) anche il contenuto delle email. La chiave DATA_ENCRYPTION_KEY si trova nel file .env, al di fuori del database. Nel database finiscono il crittogramma e un suggerimento di otto caratteri della chiave, ma non la chiave stessa.

Un meccanismo separato, AES-256-CBC con chiave ENCRYPTION_KEY, è sempre attivo. Protegge la chiave API del fornitore AI, le password SMTP e delle caselle in Posta, i token di Google Calendar e il log_secret della licenza. Le chiavi API dell'integrazione n8n sono sottoposte a hash con bcrypt, non cifrate.

I dati esistenti possono essere migrati a pacchetti da 1 a 200. La lettura gestisce contemporaneamente righe in chiaro e cifrate, perché ognuna ha un flag is_encrypted. La chiave può essere ruotata successivamente in modalità avvio - pacchetti - conclusione. Durante la rotazione lo strumento legge le voci cifrate con la chiave nuova o con quella vecchia e le risalva con la nuova. Se la crittografia è disattivata o manca la chiave, l'applicazione salva il testo in chiaro. L'audit della crittografia viene registrato in logs/encryption-audit.log: registra chi, quando e da dove ha eseguito l'operazione registrata, senza chiavi grezze né testo in chiaro.

Task Manager: scheda Avanzate nelle impostazioni con la sezione di crittografia dei dati.
La crittografia dei contenuti viene attivata dall'amministratore nelle impostazioni. La chiave si trova in un file sul server, non nel database.

Cosa ci guadagni?

Non devi spiegare al cliente perché anche solo visualizzare la pagina di accesso collega il suo browser a un fornitore di font. Il browser carica le risorse dal server dell'applicazione.

Il tuo team non rivela ai fornitori esterni di font o avatar chi apre l'interfaccia e quando. Non comunica loro nemmeno i nomi e i cognomi contenuti negli URL delle immagini.

Se una copia del database finisce nelle mani sbagliate a causa di un backup o di un vecchio disco, la cifratura attiva protegge i contenuti indicati dall'accesso senza chiave. Sai anche che l'uso dell'AI comporta una connessione esterna separata e non è necessario per visualizzare l'interfaccia.

Uno studio legale che deve specificarlo nel contratto

Lo studio legale gestisce le pratiche tramite le attività: ne registra le descrizioni, la corrispondenza e gli allegati. Un cliente aziendale chiede di inserire nel contratto una clausola sul luogo in cui vengono trattati i documenti e l'elenco dei sub-responsabili. Prima di rispondere, l'avvocato deve capire dove vengono inviati i dati.

Nella variante Pro le descrizioni delle attività e il contenuto dei messaggi possono essere cifrati con una chiave conservata fuori dal database, e il browser dell'avvocato scarica l'interfaccia solo dal server dell'applicazione. Lo studio legale deve considerare separatamente i servizi a cui si collega il server: AI, posta, Google Calendar o n8n. La cifratura nel database non limita ciò che arriva al fornitore AI, perché prima dell'invio il programma decifra il contenuto. L'implementazione del programma di per sé non sostituisce la definizione di cosa inserire nel contratto.

Domande frequenti

I dati lasciano il mio server?

I contenuti della tua base di conoscenza escono dal server solo tramite le funzioni che indichi o attivi: AI, posta, Google Calendar, webhook n8n e notifiche push. Con il pannello della licenza il server si collega da solo, ma gli trasmette solo i dati della licenza, come chiave e dominio, e la versione del programma. Il browser scarica l'interfaccia dal server dell'applicazione, senza CDN, Google Fonts e generatori esterni di avatar.

Cosa viene cifrato esattamente nel database?

La cifratura dei contenuti funziona nella variante Pro ed è disattivata per impostazione predefinita. Dopo la generazione della chiave e l'attivazione della cifratura da parte dell'amministratore, Task Manager cifra con l'algoritmo AES-256-GCM i nuovi messaggi scritti dagli utenti e le descrizioni delle attività, mentre in Posta (Pro) anche il contenuto delle email. Le voci precedenti le cifri con il pulsante "Cifra i dati esistenti". Restano in chiaro, tra l'altro, i titoli delle attività, le note, le risposte e le conversazioni con l'Assistente AI, nonché gli allegati. Un meccanismo separato protegge sempre le password SMTP e delle caselle di posta, la chiave API del fornitore AI, i token di Google Calendar e log_secret della licenza.

Dove viene conservata la chiave di cifratura?

La chiave DATA_ENCRYPTION_KEY per i contenuti utente si trova nel file .env sul server, fuori dal database. Nel database vengono salvati il crittogramma e un suggerimento di otto caratteri della chiave attuale, ma non la chiave stessa. Dal suggerimento riconoscerai il backup corretto della chiave.

Task Manager funziona in una rete senza accesso a Internet?

L'interfaccia non ha bisogno di internet per scaricare i font, la libreria Markdown né lo script che disegna le iniziali degli utenti - queste risorse fanno parte dell'applicazione. Internet serve solo alle funzioni che lo utilizzano: AI, posta, Google Calendar, webhook n8n, notifiche push e verifica degli aggiornamenti.

Posso cambiare la chiave di cifratura dopo un po' di tempo?

Sì. Task Manager esegue la rotazione della chiave a pacchetti: legge messaggi cifrati, descrizioni delle attività, assenze e contenuti delle email con la chiave nuova o con quella vecchia e li risalva con la nuova. La normale migrazione in quel momento è bloccata.