DataSunrise Consegue la Certificazione AWS DevOps Competency per AWS DevSecOps e Monitoraggio, Logging e Performance

Crittografia a Livello di Campo

Crittografia a Livello di Campo

Immagine del contenuto sulla Crittografia a Livello di Campo

Introduzione

Nell’attuale mondo digitale, proteggere i dati sensibili è più critico che mai. Le aziende affrontano l’arduo compito di mantenere sicure le informazioni private come informazioni di identificazione personale (PII), informazioni sanitarie protette (PHI), registri finanziari e proprietà intellettuale. La mancata protezione adeguata di questi dati può portare a conseguenze disastrose, dai danni alla reputazione a pesanti multe normative. Fortunatamente, la Crittografia a Livello di Campo (Field Level Encryption – FLE) è emersa come uno strumento potente per aiutare le aziende a soddisfare i loro obblighi di sicurezza dei dati. Questo articolo discute la Crittografia a Livello di Campo.

Spiega come funziona e i suoi vantaggi. Copre anche come implementarla correttamente. Inoltre, spiega come la FLE aiuta nel seguire le normative.

Che Cos’è la Crittografia a Livello di Campo?

La FLE è un metodo complesso per proteggere i dati. Crittografa i campi di dati sensibili per impedire l’accesso non autorizzato. Applicazioni e sistemi elaborano i dati mentre ciò accade. La Crittografia a Livello di Campo consente di crittografare specifici elementi di dati invece di crittografare l’intero database o disco.

I tipi comuni di dati protetti con la Crittografia a Livello di Campo includono:

  • PII come nomi, indirizzi email, numeri di telefono
  • PHI come numeri di cartelle cliniche, diagnosi, farmaci
  • Informazioni finanziarie come numeri di carte di credito e di conti bancari
  • Dati aziendali riservati come cifre di vendita, roadmap di prodotti, contratti

Mirando precisamente i dati più sensibili per la crittografia, la Crittografia a Livello di Campo fornisce una sicurezza robusta riducendo al minimo gli impatti sulle prestazioni e preservando la funzionalità delle applicazioni. Aziende leader come MongoDB e Amazon hanno implementato capacità di Crittografia a Livello di Campo nelle loro offerte.

Come Funziona la Crittografia a Livello di Campo

La Crittografia a Livello di Campo lato client (CSFLE) crittografa i dati sul dispositivo client. Lo fa prima di inviare i dati sulla rete e memorizzarli in un database. Il server invia i dati crittografati nuovamente al client per la decodifica locale quando necessario.

Il client utilizza una chiave di crittografia per eseguire la crittografia e la decodifica. Negli ambienti di produzione, memorizza questa chiave separatamente in un servizio di gestione delle chiavi sicuro. Qualsiasi client che può accedere al database sottostante vedrà solo il testo cifrato nei campi crittografati. La decodifica richiede il possesso della chiave di crittografia.

I metodi deterministici crittografano i campi permettendo comunque di indicizzarli e cercarli. Gli sviluppatori possono creare indici sui campi crittografati proprio come farebbero per i dati in chiaro. Il sistema aggiungerà automaticamente i documenti recentemente inseriti negli indici.

Per interrogare il database, il client crittografa i termini di ricerca prima di inviare la richiesta. Il database elabora la query e restituisce i risultati crittografati, che il client poi decifra. Questo processo è trasparente per l’utente finale.

Vantaggi della Crittografia a Livello di Campo

Rispetto ad approcci alternativi come la crittografia dell’intero database o del disco, la Crittografia a Livello di Campo offre diversi vantaggi chiave:

  1. Protezione Mirata: La Crittografia a Livello di Campo dà controllo su chi può accedere ai dati sensibili crittografando a livello di campo e di documento. Anche se un attaccante compromette il server del database, il sistema operativo o la memoria del server, non sarà comunque in grado di leggere i dati crittografati.
  2. Separazione dei Compiti: Le architetture di Crittografia a Livello di Campo separano chiaramente le responsabilità e gli accessi. Gli amministratori del server/database possono svolgere i loro compiti senza poter vedere i dati sensibili. I client mantengono il controllo su chi può accedere alle informazioni protette.
  3. Conformità Normativa: La crittografia granulare aiuta a soddisfare i requisiti nelle normative sulla privacy come GDPR e HIPAA.

Questi benefici di sicurezza vengono con un sovraccarico di prestazioni minimo, tipicamente meno del 5-10% nei carichi di lavoro orientati alla lettura. E per i client/applicazioni non autorizzati ad accedere ai dati crittografati, non c’è alcun impatto percettibile sulle prestazioni.

Migliori Pratiche

Sebbene la FLE sia uno strumento potente, introduce alcune limitazioni che richiedono un’attenta considerazione:

  • Gli utenti non possono utilizzare campi crittografati in report, strumenti di business intelligence o funzioni regolari dell’applicazione senza decrittarli. Questo significa che gli utenti non possono cercarli, visualizzarli o convalidarli. Per utilizzare campi crittografati, è necessario prima decodificarli.
  • I campi crittografati hanno una configurabilità limitata (nessun valore predefinito, elenchi a discesa, ecc.)
  • I campi di testo hanno una dimensione massima di 255 caratteri
  • La crittografia è unidirezionale – non c’è modo di riportare permanentemente un campo crittografato al testo in chiaro

Per avere successo con la FLE, segua queste migliori pratiche:

  1. Esegua un backup del database prima di crittografare i campi in caso di problemi
  2. Utilizzi una chiave di crittografia unica per ogni oggetto e ambiente (dev, staging, prod)
  3. Esegua backup sicuri delle chiavi di crittografia
  4. Utilizzi nuovi campi personalizzati per i dati crittografati per evitare conflitti con la logica esistente dell’applicazione
  5. Testi accuratamente la funzionalità con campi crittografati

Esempi Ecco un semplice esempio di interrogazione di un campo crittografato “ssn” in MongoDB con il client ufficiale Node.js:

javascript


// Importare il MongoClient
const { MongoClient } = require('mongodb');
// Definire la chiave master per la crittografia
const masterKey = 'my-secret-key';
// Collegarsi a MongoDB con il client abilitato alla crittografia
const secureClient = new MongoClient('mongodb://localhost:27017', {
  useNewUrlParser: true,
  useUnifiedTopology: true,
  autoEncryption: {
    keyVaultNamespace: 'encryption.__keyVault',
    kmsProviders: {
      local: { key: masterKey },
    },
  },
});
// Stabilire la connessione al database
await secureClient.connect();
// Definire l'oggetto query con il campo crittografato
const query = { ssn: '123-45-6789' };
// Eseguire la query sulla collezione 'people' del database 'myDb'
const result = await secureClient.db('myDb').collection('people').find(query);
// Stampare il risultato della query
console.log(result);

In questo esempio:

  1. Importare il MongoClient dal driver di MongoDB.
  2. Definire la masterKey utilizzata per la crittografia.
  3. Creare una nuova istanza di MongoClient con la crittografia abilitata impostando le opzioni autoEncryption. Il keyVaultNamespace indica la posizione delle chiavi di crittografia. I kmsProviders indicano il servizio di gestione delle chiavi in uso, che in questo caso è una chiave locale.
  4. Connettersi al database MongoDB utilizzando il client abilitato alla crittografia.
  5. Definire l’oggetto query con il campo crittografato ssn.
  6. Eseguire la query sulla collezione people del database myDb utilizzando il metodo find.
  7. Infine, stampare il risultato della query.

Il client crittografa automaticamente l’oggetto query prima di inviarlo a MongoDB. Abilitare la crittografia richiede solo la configurazione del client con un provider di gestione delle chiavi e l’abilitazione dell’opzione autoEncryption.

Conclusione

La sicurezza dei dati è una priorità critica per le aziende moderne. La Crittografia a Livello di Campo dà alle aziende la capacità di controllare la crittografia dei dati sensibili a livello di campo. Questo aiuta a migliorare la sicurezza delle informazioni private senza causare interruzioni alla funzionalità delle applicazioni o all’esperienza degli utenti. La FLE è importante per proteggere i dati quando eseguita correttamente e in linea con gli obiettivi di sicurezza.

DataSunrise fornisce una gamma completa di strumenti per le aziende che cercano di proteggere i loro dati e conformarsi alle normative. La suite include funzionalità di sicurezza, audit, mascheramento e gestione. Le nostre soluzioni potenti si integrano perfettamente per proteggere i tuoi asset informativi più preziosi. Per saperne di più, ti invitiamo a contattare il team di esperti di DataSunrise per una demo online personalizzata sulle tue esigenze.

Successivo

Controlli di Sicurezza

Controlli di Sicurezza

Scopri di più

Ha bisogno del nostro team di supporto?

I nostri esperti saranno lieti di rispondere alle Sue domande.

Informazioni generali:
[email protected]
Servizio clienti e supporto tecnico:
support.datasunrise.com
Richieste di collaborazione e alleanza:
[email protected]