Come gestire le e-mail come nomi utente in GDPR?

10

Utilizzare le e-mail come username per le applicazioni web è un modo conveniente per evitare il problema "ancora un altro nome utente online". Pertanto, utilizzando questo approccio, le e-mail dovrebbero essere facilmente disponibili nel back-end per effettuare controlli utente / pass.

Tuttavia, nel contesto di GDPR, e poiché le e-mail sono considerate informazioni personali, questi dati dovrebbero essere protetti mentre si trovano sul database o su altro supporto di memorizzazione.

Sarebbe meraviglioso avere la tua opinione sul seguente approccio per gestirlo con pseudonimizzazione:

  1. Memorizza uno pseudonimo (hash) dell'e-mail invece della e-mail in testo semplice;
  2. Ogni volta che si tenta un accesso, cerca l'hash dell'email e fai i controlli delle credenziali;
  3. Quando è necessario che l'e-mail venga visualizzata nel frontend o in altro modo, mantenere una "tabella pseudonimo" con una struttura chiave / valore, dove la chiave è l'hash e il valore è il valore crittografato dell'e-mail . Questa colonna di testo normale potrebbe essere cifrata con qualsiasi strategia di crittografia a colonne disponibile nella maggior parte dei DB relazionali;
  4. La password per decrittografare la colonna verrebbe utilizzata in memoria per decrittografare i valori delle colonne ma i dati verrebbero archiviati in forma crittografata;
  5. Fai questo per tutti i dati personali che la webapp deve memorizzare;

Cosa ne pensate di questo approccio?

Pensi che questo avrà una grossa penalizzazione delle prestazioni, anche con una colonna chiave indicizzata?

Esiste un altro semplice approccio per offrire ancora la possibilità di gestire le e-mail come nomi utente, ma rispettare comunque GDPR?

    
posta João Dias Amaro 24.04.2018 - 22:41
fonte

2 risposte

4

IANAL, ma GDPR non rende la crittografia obbligatoria per i dati personali. Leggi questo articolo per comprendere meglio la complessità della crittografia e del GDPR.

In the GDPR encryption is explicitly mentioned as one of the security and personal data protection measures in a few Articles. Although under the GDPR encryption is not mandatory, it is certainly important to see where and why encryption is advised.

...

GDPR encryption: the what you should know part Before doing so let’s be clear: GDPR compliance, as we wrote before is a business strategy challenge and encrypting personal data STRICTLY SPEAKING is not mandatory.

Read more at https://www.i-scoop.eu/gdpr-encryption/

Preferibilmente esegui una valutazione dell'impatto sulla privacy . Successivamente prendi una decisione su come gestirai i dati personali. Se concludi che la crittografia dei nomi utente delle email è una buona decisione, fallo. Ad esempio se la tua applicazione web è chiamata peoplewhoarechristians.com i nomi utente saranno classificati come dati sensibili perché creano una relazione tra l'utente e la loro religione. Ma quanto sono sensibili i dati personali dipende dalla base del caso e così pure le azioni per mitigare i rischi. Anche la legge parla di " implementare misure tecniche e organizzative adeguate per garantire un livello di sicurezza adeguato al rischio ", ciò che è appropriato sarà diverso a seconda del caso.

Il tuo approccio è positivo per i dati personali sensibili. Penso che sarà eccessivo per i dati personali a basso rischio. Tuttavia, vorrei documentare la tua decisione. Gli indirizzi email non sono attualmente dati sensibili per impostazione predefinita. Leggi questo articolo sulla differenza tra sensibile e non sensibile .

Potremmo sostenere che fornire un indirizzo email come nome utente significa che l'utente dà il consenso per l'elaborazione e consapevole che potrebbe perdere in combinazione con il nome della tua app. Ma meglio prevenire che curare e quindi chiederei un consenso chiaro per l'utilizzo. In questo esempio lo scopo della raccolta e dell'elaborazione dei dati personali è autenticazione e probabilmente controllo dell'accesso , ma non dimenticare analytics e cose come registrazione errori . Se prevedi di utilizzare l'e-mail per scopi di marketing, assicurati di raccogliere un ulteriore consenso.

    
risposta data 25.04.2018 - 11:16
fonte
0

Consiglierei un approccio diverso. Il GDPR, tra le altre cose, richiede che alcune informazioni sensibili vengano archiviate in server separati rispetto ai dati operativi. In questo modo, le JOIN saranno difficili o impossibili senza permessi adeguati. Questo è particolarmente vero nei sistemi sanitari e finanziari.

Nel tuo caso, il tuo problema è che l'email è considerata un dato personale. Senza discutere se sei eccessivo o no, ti posso suggerire un approccio di pseudonimizzazione che ti aiuta ad andare al passo precedente con facilità rispetto alla riprogettazione e alla migrazione dell'intero database.

Puoi associare ogni utente a un identificatore principale che è agnostico all'indirizzo email o al nome utente, ad esempio una chiave di incremento automatico del database o un GUID. Quindi, tutto ciò che è relativo a quell'utente può essere referenziato usando quella chiave.

Ora puoi facilmente memorizzare le credenziali di accesso in una tabella separata. In futuro, tale tabella può essere spostata su un altro database, se richiesto dall'azienda.

CREATE TABLE users(
    userid VARCHAR(64) PRIMARY KEY, --uuid generated
    language VARCHAR(2) NULL,
    theme VARCHAR(30) NULL,
    ....
    ......  -- any information that is not strictly protected by GDPR
);

CREATE TABLE accounts(
    userid VARCHAR(64) NOT NULL PRIMARY KEY,
    email VARCHAR(256) NULL,
    password_hash VARCHAR(64) NULL,
    failed_logins INT NOT NULL DEFAULT 0,
    last_login DATETIME NULL,
    -----
);

Quando un utente richiede la rimozione delle informazioni personali o quando l'orologio di ritenzione dei dati fa tic tac, l'ID agnostico aiuta a mantenere le informazioni non personali in altre tabelle (ad esempio, la lista di viaggi storica diventa anonima).

Puoi spostare l'approccio sopra in avanti al livello successivo.

Considera la tabella degli account. Se si desidera consentire agli utenti di eliminare il proprio account ma tenere traccia dell'unicità dell'indirizzo e-mail (ad esempio per impedire che la gente reimpostasse la propria cronologia), è possibile annullare l'indirizzo e-mail mantenendo una colonna aggiuntiva con un hash dell'indirizzo e-mail , così mentre l'indirizzo email è annullato l'hash non lo è.

Dopodiché, quando un utente tenta di registrarsi con un vecchio indirizzo email, hai la prova che l'utente ha cancellato il suo account: sei in grado di decidere cosa fare.

    
risposta data 26.11.2018 - 18:03
fonte

Leggi altre domande sui tag