Le RGPD est entré en vigueur le 25 mai 2018 avec les implications que nous connaissons tous (droit à l'oubli, consentement explicite, sécurité par défaut, etc.)
En parallèle, nous développons de plus en plus d'architectures autour de l'Event Sourcing, qui par définition sauvegarde les données de manière immutable.
Mais alors, comment faire pour concilier une architecture autour de l'Event Sourcing, immutable, avec les restrictions imposées par le RGPD ?
C'est ce que nous allons explorer durant cette session !
Par Charles Dufour, Développeur Back-End chez Xebia
Toutes les informations sur xebicon.fr
5. @Xebiconfr #Xebicon18 @_cdufour
Cette conférence ne sera pas
1. Un rapide rappel sur l’event sourcing ainsi que les
points essentiels du RGPD
2. Axée sur les impacts en termes de développement et
d’architecture
3. Une exploration de deux idées pour marier RGPD et
event sourcing
4. Un premier pas vers toutes les questions qu’amène le
RGPD
Mais sera
1. Un décorticage point par point du RGPD
2. À destination exclusive des décideurs
3. Une réponse clé en main à la problématique de
compatibilité entre le RGPD et l’event sourcing
4. Une réponse au défi RGPD tout court...
5
7. @Xebiconfr #Xebicon18 @_cdufour
Event sourcing - Qu’est-ce que c’est ?
● Architecture orientée sur la séquence des évènements qui ont modifié l’état de l’application. C’est donc :
○ Une architecture orientée évènements
○ Qui se concentre sur la persistence des données
○ Qui ne persiste pas (nécessairement) l’état de l’application
○ Qui stocke la suite d'évènements qui mène à cet état
● Ne dépend d’aucun framework / outil
● Cette séquence d'événements est votre source de vérité
7
8. @Xebiconfr #Xebicon18 @_cdufour
Event sourcing - Avantages
● Audit de l’application
○ Pouvoir lire avec précision le passé
● Reprise de données
○ En cas d’erreur, pouvoir reconstruire facilement l’état de l’application
● N’est cependant pas la réponse absolue
○ Peut avoir un coût important
8
9. @Xebiconfr #Xebicon18 @_cdufour
Event sourcing - Exemple du compte bancaire
Je souhaite créer une application qui me permet de gérer le compte
bancaire de mes clients
1. Un utilisateur crée un compte
2. Il crédite son compte de 100 euros
3. Puis débit son compte de 80 euros
9
13. @Xebiconfr #Xebicon18 @_cdufour
RGPD - Résumé
● Règlement général sur la protection des données
● Applicable depuis le 25 mai 2018
● Concerne tous les clients européens
● Peut engendrer de lourds impacts financiers en cas de non respect
● Accentuation de la responsabilité des sous-traitants
13
14. @Xebiconfr #Xebicon18 @_cdufour
RGPD - Points clés pour le développement
● Le droit d'être informé (sur l’utilisation des données personnelles)
○ La fameuse popup lors de la première visite sur un site
● Le droit à la rectification (Modification des données personnelles)
● Le droit à la portabilité des données (export des données personnelles)
● Le droit d'accès (affichage humainement lisible des données personnelles)
● Le droit à l'effacement (des données personnelles)
○ Y compris chez les tiers à qui les données sont transmises
● Le droit à la restriction du traitement (des données personnelles)
14
16. @Xebiconfr #Xebicon18 @_cdufour
Donnée personnelle - Qu’est-ce que c’est ?
● Donnée qui peut-être
○ Fournie directement par l’utilisateur
○ Récupérée par le biais d’un tiers
○ Basée sur son activité sur l’application
16
17. @Xebiconfr #Xebicon18 @_cdufour
Donnée personnelle - Qu’est-ce que c’est ?
● Toute donnée pouvant être croisée avec d’autres données pour identifier de manière unique une personne
physique
○ Prénom
○ Date de naissance
○ Géolocalisation (via Google maps par exemple)
17
18. @Xebiconfr #Xebicon18 @_cdufour
Donnée personnelle - Qu’est-ce que c’est ?
● Toute donnée identifiant directement une personne physique
○ Numéro de téléphone
○ Numéro de sécurité sociale
18
19. @Xebiconfr #Xebicon18 @_cdufour
RGPD - Points concernant l’event sourcing
● Le droit d'être informé
○ La fameuse popup lors de la première visite sur un site
● Le droit à la rectification
● Le droit à la portabilité des données
● Le droit d'accès
● Le droit à l'effacement
○ Y compris chez les tiers à qui les données sont transmises
● Le droit à la restriction du traitement
19
20. @Xebiconfr #Xebicon18 @_cdufour
RGPD - Points concernant l’event sourcing
● Le droit d'être informé
○ La fameuse popup lors de la première visite sur un site
● Le droit à la rectification
● Le droit à la portabilité des données
● Le droit d'accès
● Le droit à l'effacement
○ Y compris chez les tiers à qui les données sont transmises
● Le droit à la restriction du traitement
20
21. @Xebiconfr #Xebicon18 @_cdufour
RGPD - Points concernant l’event sourcing
● Le droit d'être informé
○ La fameuse popup lors de la première visite sur un site
● Le droit à la rectification
● Le droit à la portabilité des données
● Le droit d'accès
● Le droit à l'effacement
○ Y compris chez les tiers à qui les données sont transmises
● Le droit à la restriction du traitement
21
23. @Xebiconfr #Xebicon18 @_cdufour
Event sourcing
● Le RGPD demande de pouvoir effacer les données
d’un utilisateur
RGPD
● La source donnée est une suite d’évènements
immutables
23
28. @Xebiconfr #Xebicon18 @_cdufour
Oui !
● L’algorithme de chiffrement est-il suffisamment
robuste ?
○ Nécessité rechiffrer toutes les données
toutes les X années
● Le chiffrement a un coût en termes de ressources
● Doit-on chiffrer la donnée intégrale ? Ou champ par
champ ?
Mais...
● On est maintenant en mesure de rendre les données
personnelles inaccessibles !
28
32. @Xebiconfr #Xebicon18 @_cdufour
Oui !
● On ne peut plus vraiment parler d’event sourcing…
● Comment bien discriminer les données ?
● Comment gérer le versionning des évènements ?
Mais...
● On a supprimé le surcoût lié au chiffrement !
32
34. @Xebiconfr #Xebicon18 @_cdufour
Il existe des solutions
● Attention à bien étudier son use case, car le choix de
l’event sourcing, ainsi que la gestion du RGPD seront
critiques
● L’immutabilité n’existe pas que dans l’event sourcing.
Comment être en totale conformité avec
○ Les backups de données
○ Les logs
○ etc.
À prendre avec des pincettes
● Le RGPD complexifie l’implémentation de l’event
sourcing mais ne la rend pas impossible
● Le plus simple reste peut-être de n’implémenter
l’event sourcing que si on ne manipule pas de
données personnelles...
34
35. @Xebiconfr #Xebicon18 @_cdufour
Remerciements
● Vincent Segouin
● Clément Héliou
● Aurore de Amaral
● Jonathan Raffre
Ressources :
● https://danlebrero.com/2018/04/11/kafka-gdpr-event-sourcing/
● https://bohzo.developpez.com/rgpd-guide-pratique-developpeurs/
● https://blog.xebia.fr/2017/01/16/event-sourcing-comprendre-les-bases-dun-systeme-e
venementiel/
35