DATA PRIVACY,
REPRENEZ LE CONTROLE
Guillaume Sauthier, ForgeRock
@sauthieg
DATA PRIVACY, REPRENEZ LE CONTRÔLE
LA VIE PRIVÉE À L’ÈRE DU NUMÉRIQUE
▸ Combien de comptes en lignes pour chacun?
▸ Quelles infos personnelles « en liberté »?
▸ Que recouvre la notion de vie privée ou données personnelles?
▸ Noms, adresses, téléphones, …
▸ Relations, opinions (commentaires, …)
▸ Historiques de navigation, d’achat, …
▸ Addresses IP ou identifiants quelconques
DATA PRIVACY, REPRENEZ LE CONTRÔLE
UNE PRÉOCCUPATION GOUVERNEMENTALE
▸ En France
▸ Loi informatique et liberté (CNIL) depuis 1978
▸ En Europe
▸ Tracking cookies
▸ GDPR (General Data Protection Regulation)
▸ Ailleurs
▸ Safe Harbor, puis Privacy Shield aux USA
▸ PIPEDA au Canada
GDPR
FOCUS ON …
DATA PRIVACY, REPRENEZ LE CONTRÔLE
GENERAL DATA PROTECTION REGULATION (GDPR)
« redonner aux citoyens le contrôle de leurs données personnelles,
tout en simplifiant l’environnement réglementaire des entreprises »
DATA PRIVACY, REPRENEZ LE CONTRÔLE
GENERAL DATA PROTECTION REGULATION (GDPR)
▸ Projet né en 2012, ratifié en 2016, application au 25 mai 2018
▸ Take-away:
▸ Consentement explicite et positif
▸ Droit à l’effacement
▸ Portabilité des données
▸ Privacy by design
▸ Applicable aux entreprises non-européennes
▸ Data Protection Officer
▸ Amendes significatives (4% CA mondial ou 20 M€ max)
DATA PRIVACY, REPRENEZ LE CONTRÔLE
CONSENTEMENT ET NOTIFICATION
▸ Consentement actif
▸ Fin du opt-out
▸ Type abonnement à la newsletter pré-coché
▸ Accord explicite pour une finalité d’utilisation des données
▸ Notification en cas de fuites de données
▸ Pour que les utilisateurs puissent prendre des mesures
GDPR
FOR THE TECHIES
DATA PRIVACY, REPRENEZ LE CONTRÔLE
USER-DIRECTED CONSENT MANAGEMENT
▸ Interface de gestion de profil évoluée
▸ Gestion des données personnelles de l’utilisateur
▸ Gestion des connections/permissions
▸ Qu’est ce qui est partagé
▸ Avec qui ?
▸ Possibilité de changement ou révocation
▸ Suppression
▸ Portabilité
▸ Récupération des données dans un format non-propriétaire
Articles
5, 7, 12-23
DATA PRIVACY, REPRENEZ LE CONTRÔLE
SYNCHRONIZATION, API CONNECTIONS
▸ Données toujours à jour
▸ Ne pas copier les données localement (dé-synchronisation)
▸ Aller les chercher à la source
▸ Utilisation d’APIs externes
▸ Partage consenti
Article 5
DATA PRIVACY, REPRENEZ LE CONTRÔLE
SECURITY AND ACCESS CONTROLS TO PROTECT PERSONAL DATA
▸ Encryption et hash des données à tous les niveaux
▸ Fini le stockage en clair dans les bases de données
▸ Backend sécurisé
▸ Protection des APIs servant les données personnelles
▸ Authentification
▸ Autorisation (contextuelle, roles, …)
Articles
25, 32
DATA PRIVACY, REPRENEZ LE CONTRÔLE
DES SOLUTIONS
CLES EN MAIN ?
UMA 2.0
POUR SAUVER LE MONDE…
DATA PRIVACY, REPRENEZ LE CONTRÔLE
USER MANAGED ACCESS 2.0
▸ Protocol standardisant la notion de partage de ressources entres acteurs
▸ Basé sur OAuth 2.0, le consentement est au coeur de UMA
▸ Distinction entre le propriétaire des ressources et leur consommateur
▸ Le RO va consentir à donner à quelqu’un des permissions
▸ Avec OAuth 2.0 on donne des permissions à son application
▸ Contrôle des autorisations est donné à l’utilisateur
▸ Non plus juste à l’administrateur
DATA PRIVACY, REPRENEZ LE CONTRÔLE
DEMO
DATA PRIVACY, REPRENEZ LE CONTRÔLE
LES ACTEURS
RESOURCE
OWNER
RESOURCE
SERVER
CLIENT REQUESTING
PARTY
AUTHORIZATION
SERVER
DATA PRIVACY, REPRENEZ LE CONTRÔLE
PARTAGE DES RESSOURCES
▸ Etape préalable durant laquelle le RO partage ses ressources
▸ Identification des ressources
▸ Configuration des permissions (qui, quoi)
RESOURCE
OWNER
RESOURCE
SERVER
Controle les
permissions
AUTHORIZATION
SERVER
Gère les
partages
DATA PRIVACY, REPRENEZ LE CONTRÔLE
PARTAGE DES RESSOURCES 1/2
RESOURCE
OWNER
RESOURCE
SERVER
AUTHORIZATION
SERVER
OPENID CONNECT API
PROTECTION API TOKEN
‣ OPENID, UMA_PROTECTION
DATA PRIVACY, REPRENEZ LE CONTRÔLE
PARTAGE DES RESSOURCES 2/2
RESOURCE
OWNER
RESOURCE
SERVER
AUTHORIZATION
SERVER
PROTECTION APISHARE API*
Création du
partage
Configuration des
permissions
DATA PRIVACY, REPRENEZ LE CONTRÔLE
ACCÈS AUX RESSOURCES
▸ Enregistrement d’un ticket d’accès
▸ Authentification / Collecte des claims
▸ Validation
RESOURCE
SERVER
Identification
AUTHORIZATION
SERVER
Accede
REQUESTING
PARTY
Protège
CLIENT
DATA PRIVACY, REPRENEZ LE CONTRÔLE
ACCÈS AUX RESSOURCES (INITIALISATION)
RESOURCE
SERVER
AUTHORIZATION
SERVER
RESOURCES API
CLIENTREQUESTING
PARTY
PROTECTION API
Utilise son application
pour accéder aux resources
Tente l’accès
Enregistre une demande d’accès
DATA PRIVACY, REPRENEZ LE CONTRÔLE
ACCÈS AUX RESSOURCES (AUTHENTICATION)
AUTHORIZATION
SERVER *
OPENID CONNECT API
CLIENTREQUESTING
PARTY
ID_TOKEN
‣ CLAIMS
Log in
Authentification
DATA PRIVACY, REPRENEZ LE CONTRÔLE
ACCÈS AUX RESSOURCES (CLAIMS GATHERING), OPTIONNEL
AUTHORIZATION
SERVER
OAUTH 2.0 API
PERSISTED CLAIMS TOKEN
‣ INFO
CLIENTREQUESTING
PARTY
CLAIMS REDIRECT ENDPOINT
UMA Specific Grant Flow
CLAIMS
Need Info
REQUESTING PARTY TOKEN
‣ APP’S SCOPES
DATA PRIVACY, REPRENEZ LE CONTRÔLE
ACCÈS AUX RESSOURCES (AVEC TOKEN)
RESOURCE
SERVER
AUTHORIZATION
SERVER
RESOURCES API INTROSPECTION API
CLIENTREQUESTING
PARTY
DATA PRIVACY, REPRENEZ LE CONTRÔLE
WRAP UP
▸ Partage et accès sont des étapes clairement séparées
▸ AS du propriétaire, potentiellement différent de celui du consommateur
▸ Autorisation en fonction des claims fournis
▸ Le propriétaire a le contrôle a tout moment
DATA PRIVACY, REPRENEZ LE CONTRÔLE
EN CONCLUSION
▸ La protection de vos données personnelles et de leurs utilisation est en bonne
voie
▸ Les gouvernements légifèrent
▸ GDPR a un impact sérieux sur vos applications
▸ Si tant est que vous manipulez des données personnelles
▸ Des solutions existent pour remettre l’utilisateur au coeur de la mécanique
▸ Ce n’est pas aussi simple que de rajouter une brique dans votre SI
QUESTIONS ?
MERCI

Data Privacy, reprenez le contrôle

  • 1.
    DATA PRIVACY, REPRENEZ LECONTROLE Guillaume Sauthier, ForgeRock @sauthieg
  • 2.
    DATA PRIVACY, REPRENEZLE CONTRÔLE LA VIE PRIVÉE À L’ÈRE DU NUMÉRIQUE ▸ Combien de comptes en lignes pour chacun? ▸ Quelles infos personnelles « en liberté »? ▸ Que recouvre la notion de vie privée ou données personnelles? ▸ Noms, adresses, téléphones, … ▸ Relations, opinions (commentaires, …) ▸ Historiques de navigation, d’achat, … ▸ Addresses IP ou identifiants quelconques
  • 3.
    DATA PRIVACY, REPRENEZLE CONTRÔLE UNE PRÉOCCUPATION GOUVERNEMENTALE ▸ En France ▸ Loi informatique et liberté (CNIL) depuis 1978 ▸ En Europe ▸ Tracking cookies ▸ GDPR (General Data Protection Regulation) ▸ Ailleurs ▸ Safe Harbor, puis Privacy Shield aux USA ▸ PIPEDA au Canada
  • 4.
  • 5.
    DATA PRIVACY, REPRENEZLE CONTRÔLE GENERAL DATA PROTECTION REGULATION (GDPR) « redonner aux citoyens le contrôle de leurs données personnelles, tout en simplifiant l’environnement réglementaire des entreprises »
  • 6.
    DATA PRIVACY, REPRENEZLE CONTRÔLE GENERAL DATA PROTECTION REGULATION (GDPR) ▸ Projet né en 2012, ratifié en 2016, application au 25 mai 2018 ▸ Take-away: ▸ Consentement explicite et positif ▸ Droit à l’effacement ▸ Portabilité des données ▸ Privacy by design ▸ Applicable aux entreprises non-européennes ▸ Data Protection Officer ▸ Amendes significatives (4% CA mondial ou 20 M€ max)
  • 7.
    DATA PRIVACY, REPRENEZLE CONTRÔLE CONSENTEMENT ET NOTIFICATION ▸ Consentement actif ▸ Fin du opt-out ▸ Type abonnement à la newsletter pré-coché ▸ Accord explicite pour une finalité d’utilisation des données ▸ Notification en cas de fuites de données ▸ Pour que les utilisateurs puissent prendre des mesures
  • 8.
  • 9.
    DATA PRIVACY, REPRENEZLE CONTRÔLE USER-DIRECTED CONSENT MANAGEMENT ▸ Interface de gestion de profil évoluée ▸ Gestion des données personnelles de l’utilisateur ▸ Gestion des connections/permissions ▸ Qu’est ce qui est partagé ▸ Avec qui ? ▸ Possibilité de changement ou révocation ▸ Suppression ▸ Portabilité ▸ Récupération des données dans un format non-propriétaire Articles 5, 7, 12-23
  • 10.
    DATA PRIVACY, REPRENEZLE CONTRÔLE SYNCHRONIZATION, API CONNECTIONS ▸ Données toujours à jour ▸ Ne pas copier les données localement (dé-synchronisation) ▸ Aller les chercher à la source ▸ Utilisation d’APIs externes ▸ Partage consenti Article 5
  • 11.
    DATA PRIVACY, REPRENEZLE CONTRÔLE SECURITY AND ACCESS CONTROLS TO PROTECT PERSONAL DATA ▸ Encryption et hash des données à tous les niveaux ▸ Fini le stockage en clair dans les bases de données ▸ Backend sécurisé ▸ Protection des APIs servant les données personnelles ▸ Authentification ▸ Autorisation (contextuelle, roles, …) Articles 25, 32
  • 12.
    DATA PRIVACY, REPRENEZLE CONTRÔLE DES SOLUTIONS CLES EN MAIN ?
  • 13.
  • 14.
    DATA PRIVACY, REPRENEZLE CONTRÔLE USER MANAGED ACCESS 2.0 ▸ Protocol standardisant la notion de partage de ressources entres acteurs ▸ Basé sur OAuth 2.0, le consentement est au coeur de UMA ▸ Distinction entre le propriétaire des ressources et leur consommateur ▸ Le RO va consentir à donner à quelqu’un des permissions ▸ Avec OAuth 2.0 on donne des permissions à son application ▸ Contrôle des autorisations est donné à l’utilisateur ▸ Non plus juste à l’administrateur
  • 15.
    DATA PRIVACY, REPRENEZLE CONTRÔLE DEMO
  • 16.
    DATA PRIVACY, REPRENEZLE CONTRÔLE LES ACTEURS RESOURCE OWNER RESOURCE SERVER CLIENT REQUESTING PARTY AUTHORIZATION SERVER
  • 17.
    DATA PRIVACY, REPRENEZLE CONTRÔLE PARTAGE DES RESSOURCES ▸ Etape préalable durant laquelle le RO partage ses ressources ▸ Identification des ressources ▸ Configuration des permissions (qui, quoi) RESOURCE OWNER RESOURCE SERVER Controle les permissions AUTHORIZATION SERVER Gère les partages
  • 18.
    DATA PRIVACY, REPRENEZLE CONTRÔLE PARTAGE DES RESSOURCES 1/2 RESOURCE OWNER RESOURCE SERVER AUTHORIZATION SERVER OPENID CONNECT API PROTECTION API TOKEN ‣ OPENID, UMA_PROTECTION
  • 19.
    DATA PRIVACY, REPRENEZLE CONTRÔLE PARTAGE DES RESSOURCES 2/2 RESOURCE OWNER RESOURCE SERVER AUTHORIZATION SERVER PROTECTION APISHARE API* Création du partage Configuration des permissions
  • 20.
    DATA PRIVACY, REPRENEZLE CONTRÔLE ACCÈS AUX RESSOURCES ▸ Enregistrement d’un ticket d’accès ▸ Authentification / Collecte des claims ▸ Validation RESOURCE SERVER Identification AUTHORIZATION SERVER Accede REQUESTING PARTY Protège CLIENT
  • 21.
    DATA PRIVACY, REPRENEZLE CONTRÔLE ACCÈS AUX RESSOURCES (INITIALISATION) RESOURCE SERVER AUTHORIZATION SERVER RESOURCES API CLIENTREQUESTING PARTY PROTECTION API Utilise son application pour accéder aux resources Tente l’accès Enregistre une demande d’accès
  • 22.
    DATA PRIVACY, REPRENEZLE CONTRÔLE ACCÈS AUX RESSOURCES (AUTHENTICATION) AUTHORIZATION SERVER * OPENID CONNECT API CLIENTREQUESTING PARTY ID_TOKEN ‣ CLAIMS Log in Authentification
  • 23.
    DATA PRIVACY, REPRENEZLE CONTRÔLE ACCÈS AUX RESSOURCES (CLAIMS GATHERING), OPTIONNEL AUTHORIZATION SERVER OAUTH 2.0 API PERSISTED CLAIMS TOKEN ‣ INFO CLIENTREQUESTING PARTY CLAIMS REDIRECT ENDPOINT UMA Specific Grant Flow CLAIMS Need Info REQUESTING PARTY TOKEN ‣ APP’S SCOPES
  • 24.
    DATA PRIVACY, REPRENEZLE CONTRÔLE ACCÈS AUX RESSOURCES (AVEC TOKEN) RESOURCE SERVER AUTHORIZATION SERVER RESOURCES API INTROSPECTION API CLIENTREQUESTING PARTY
  • 25.
    DATA PRIVACY, REPRENEZLE CONTRÔLE WRAP UP ▸ Partage et accès sont des étapes clairement séparées ▸ AS du propriétaire, potentiellement différent de celui du consommateur ▸ Autorisation en fonction des claims fournis ▸ Le propriétaire a le contrôle a tout moment
  • 26.
    DATA PRIVACY, REPRENEZLE CONTRÔLE EN CONCLUSION ▸ La protection de vos données personnelles et de leurs utilisation est en bonne voie ▸ Les gouvernements légifèrent ▸ GDPR a un impact sérieux sur vos applications ▸ Si tant est que vous manipulez des données personnelles ▸ Des solutions existent pour remettre l’utilisateur au coeur de la mécanique ▸ Ce n’est pas aussi simple que de rajouter une brique dans votre SI
  • 27.
  • 28.