Pour obtenir une présentation générale de la gestion de la protection des données, consultez cette section.
Ces informations s'appliquent au RGPD, au CCPA, au PDPA et au LGPD. Pour plus d'informations sur ces règlementations, consultez cette section.
Le droit d’opposition (opt-out) à la vente des informations personnelles, spécifique au CCPA, est expliqué dans cette section.
Les procédures d’installation décrites dans ce document s’appliquent à partir de Campaign Classic 18.4 (build 8931+). Si vous exécutez une version antérieure, consultez cette note technique.
Pour faciliter la préparation à la protection des données, Adobe Campaign permet désormais de gérer les demandes d’Accès et de Suppression. Le droit d’accès et le droit à l’oubli (demande de suppression) sont décrits dans cette section.
Découvrez comment créer des demandes d’Accès et de Suppression, et comment elles sont traitées par Adobe Campaign.
Adobe Campaign offre aux contrôleurs de données deux moyens d’effectuer les demandes d’accès à des informations personnelles et de suppression :
Pour plus d’informations sur les données personnelles et sur les différentes entités qui gèrent les données (Contrôleur de données, Responsable du traitement des données et Titulaire de données), consultez Données personnelles et acteurs impliqués.
Adobe Campaign met à la disposition des contrôleurs de données des outils afin de créer et traiter des demandes d'accès à des informations personnelles pour les données stockées dans Adobe Campaign. Il incombe toutefois au contrôleur de données de gérer la relation avec le titulaire de données (email, assistance clientèle ou portail web).
Par conséquent, il est de votre responsabilité, en tant que contrôleur de données, de vérifier l'identité du titulaire de données à l'origine de la demande et de confirmer que les données renvoyées au demandeur concernent le titulaire de données.
Pour utiliser cette fonctionnalité, vous devez installer le package Règlement sur la protection des informations personnelles via le menu Outils > Avancé > Import de package > Package Adobe Campaign. Pour plus d’informations sur l’installation des packages, consultez la documentation détaillée.
Deux nouveaux dossiers spécifiques à la confidentialité sont créés sous Administration > Plateforme :
Dans Administration > Exploitation > Workflows techniques, trois workflows techniques sont exécutés tous les jours pour traiter les demandes d’accès aux données personnelles.
Le droit nommé Droit relatif aux données personnelles a été ajouté dans Administration > Gestion des accès > Droits nommés. Les contrôleurs de données ont besoin de ce droit nommé pour utiliser les outils d'accès à des informations personnelles et pour ainsi créer de nouvelles demandes, suivre leur évolution, utiliser l'API, etc.
Avant de créer des demandes d’accès à des informations personnelles, vous devez définir l’espace de noms que vous utiliserez. Il s’agit de la clé qui sera utilisée pour identifier le titulaire de données dans la base de données Adobe Campaign.
Trois espaces de noms d’usine sont disponibles : email, téléphone et téléphone mobile. Si vous avez besoin d’un autre espace de noms (un champ personnalisé de destinataire, par exemple), vous pouvez le créer dans Administration > Plateforme > Espaces de noms.
L’interface d’Adobe Campaign permet de créer des demandes d’accès à des informations personnelles et de suivre leur évolution. Pour créer une demande d’accès à des informations personnelles, procédez comme suit :
Accédez au dossier de demandes d'accès aux informations personnelles sous Administration > Plateforme > Demandes d'accès aux informations personnelles.
Cet écran affiche toutes les demandes d’accès à des informations personnelles en cours, leur statut et leurs logs. Cliquez sur Nouveau pour créer une demande d’accès à des informations personnelles.
Sélectionnez le Règlement (RGPD, CCPA, PDPA ou LGPD), le type de demande (Accès ou Suppression), sélectionnez un Espace de noms et entrez la valeur de réconciliation. Si vous utilisez l’email comme espace de noms, saisissez l’adresse email du titulaire de données.
Les workflows techniques d’accès à des informations personnelles s’exécutent une fois par jour et traitent chaque nouvelle demande :
Lors de l’exécution d’une demande d’accès ou de suppression de données personnelles, Adobe Campaign recherche toutes les données du titulaire des données en fonction de la Valeur de réconciliation dans toutes les tables ayant un lien avec la table du destinataire (type own).
Voici la liste des tables d’usine qui sont prises en compte lors de l’exécution des demandes d’accès à des données personnelles :
Si vous avez créé des tables personnalisées ayant un lien avec la table du destinataire (type own), celles-ci sont également prises en compte. Par exemple, si une table de transaction est liée à la table du destinataire et si une table de détails de transaction est liée à la table de transaction, elles sont toutes deux prises en compte.
Si vous effectuez des demandes d’accès à des informations personnelles par lots à l’aide des workflows de suppression de profil, tenez compte des remarques suivantes :
Voici les différents états des demandes d'accès à des informations personnelles :
Le processus en 2 étapes est activé par défaut. Lorsque vous créez une demande de suppression à l’aide de ce mode, Adobe Campaign effectue toujours en premier une demande d’accès. Vous pouvez ainsi vérifier les données avant de confirmer la suppression.
Vous pouvez modifier ce mode dans l’écran d’édition des demandes d’accès à des informations personnelles. Cliquez sur Paramètres avancés.
Lorsque le mode en 2 étapes est activé, une nouvelle demande de suppression passe en statut Confirmation de suppression en attente. Téléchargez le fichier XML généré depuis l’écran des demandes d’accès à des informations personnelles et vérifiez les données. Pour confirmer l’effacement des données, cliquez sur le bouton Confirmer la suppression des données.
Lors du traitement des demandes d'accès, Adobe Campaign génère une JSSP qui récupère les données du destinataire dans la base de données et les exporte vers un fichier XML stocké sur la machine locale. L'URL JSSP est définie ci-dessous :
"$(serverUrl)+'/nms/gdpr.jssp?id='+@id"
Où @id correspond à l'identifiant de demande d'accès aux informations personnelles.
Cette URL est stockée dans le champ "Emplacement du fichier" (@urlFile) du schéma Demandes d’accès aux informations personnelles (gdprRequest).
L'information est disponible dans la base de données pendant 90 jours. Une fois la demande nettoyée par le workflow technique, l'information est supprimée de la base de données et l'URL devient obsolète. Vérifiez que l'URL est encore valide avant de télécharger les données depuis une page web.
Voici un exemple de fichier de données d'un titulaire de données :
Les contrôleurs de données peuvent facilement créer une application web comprenant l'URL JSSP correspondante pour que le fichier de données du titulaire des données soit disponible sur une page web.
Voici un élément de code que vous pouvez utiliser comme exemple dans l'activité Page de l'application web.
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Language" content="en"> <meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> <link rel="stylesheet" type="text/css" href="/nl/webForms/landingPage.css"/> <title>Clickthrough</title> <style type="text/css" media="all"> /* override formulary area */ .formulary { top: 200px; position: absolute; left: 0; } </style> </head> <body style="" class="">
<center>
<div id="wrap">
<div id="header"><img class="nlui-widget" alt="placeholder_header" src="/nms/img/contentModels/placeholder_header.png" unselectable="on" />
<div class="header-title center-title">DOWNLOAD GDPR DATA</div>
<div class="formulary center-formulary"><form>
<div class="button large-button"><a href=[SERVER_URL]/nms/gdpr.jssp?id=13000" data-nl-type="externalLink">CLICK TO DOWNLOAD</a></div>
</form></div>
</div>
<div id="content">
<div class="row">
<div class="info">
<div class="desc">
<div class="title">EFFICIENCY</div>
<div class="desc">Our service is guaranteed to improve your efficiency. Increase performance and use our high-technology service to implement even the most ambitious of projects.</div>
</div>
</div>
</div>
</div>
<div id="footer">
<div style="text-align: center;">
<div style="float: left;"><a href="#">Contact us</a></div>
<div style="float: right;">© Copyrights</div>
<div><a href="#"><img title="facebook" class="nlui-widget" alt="facebook" src="/xtk/img/facebook.png" unselectable="on" /></a> <a href="#"><img title="Twitter" class="nlui-widget" alt="twitter" src="/xtk/img/twitter.png" unselectable="on" /></a> <a href="#"><img title="Google" class="nlui-widget" alt="google_plus" src="/xtk/img/google_plus.png" unselectable="on" /></a> <a href="#"><img title="Linkedin" class="nlui-widget" alt="Linkedin" src="/xtk/img/linkedin.png" unselectable="on" /></a></div>
</div>
</div>
</div>
</center>
</body> </html>
En raison des restrictions d'accès au fichier de données du titulaire de données, l'accès anonyme à une page web doit être désactivé. Seul un opérateur avec le droit nommé Droit relatif aux données personnelles peut se connecter à la page et télécharger les données.
Adobe Campaign fournit une API qui permet de configurer un processus automatique de demande d’accès à des informations personnelles.
Avec l’API, le processus général d’accès à des informations personnelles est identique à celui de l’interface. La seule différence est la création de la demande d’accès à des informations personnelles. Au lieu de créer la demande dans Adobe Campaign, une instruction POST contenant les informations de la demande est envoyée à Campaign. Pour chaque demande, une nouvelle entrée est ajoutée dans l’écran Demandes d’accès à des informations personnelles. Les workflows techniques d’accès à des informations personnelles traitent ensuite la demande, de la même manière que pour une demande ajoutée à l’aide de l’interface.
Si vous utilisez l’API pour soumettre des demandes d’accès à des informations personnelles, il est recommandé de conserver l’option Processus en 2 étapes activée pour les premières demandes de suppression, afin de tester les données renvoyées. Une fois vos tests terminés, vous pouvez désactiver le processus en 2 étapes de façon à ce que le processus de demande de suppression puisse s’exécuter automatiquement.
L'API JS CreateRequestByName est définie comme suit.
Si vous utilisiez l’API gdprRequest, vous pouvez la conserver, mais il est recommandé d’utiliser la nouvelle API privacyRequest.
Le droit nommé Droit relatif aux données personnelles est nécessaire pour utiliser l’API.
<method library="nms:gdpr.js" name="CreateRequestByName" static="true">
<help>Create a new GDPR Request using namespace internal name</help>
<parameters>
<param name="namespaceName" type="string" desc="Namespace internal name"/>
<param name="reconciliationValue" type="string" desc="Reconciliation value"/>
<param name="type" type="long" desc="Reconciliation value"/>
<param name="confirmDeletePending" type="boolean" desc="Request confirm before deleting data"/>
<param name="regulation" type="long" desc="regulation of newly created request"/>
<param name="id" type="long" inout="out" desc="ID of newly created request"/>
</parameters>
</method>
Le champ "règlement" n’est disponible que si vous utilisez Campaign Classic 20.2 (build 9178+).
Si vous effectuez une migration vers la version 20.2 et que vous utilisiez déjà l’API, vous devez ajouter ce champ comme illustré ci-dessus. Si vous avez recours à un build précédent, vous pouvez continuer à utiliser l’API sans le champ «règlement».
Voici un exemple d’appel externe de l’API (authentification via l’API et détails spécifiques sur l’API de protection des données). Pour en savoir plus sur l’API de protection des données, consultez la documentation de l’API. Vous pouvez également consulter la documentation sur les appels Web Service.
Tout d'abord, vous devez effectuer l'authentification par le biais de l'API :
Téléchargez le WSDL xtk:session depuis cette URL : <server url>
/nl/jsp/schemawsdl.jsp?schema=xtk:session.
Utilisez la méthode "Logon" et transmettez un nom d'utilisateur et un mot de passe en tant que paramètres dans la demande. Vous obtiendrez une réponse contenant un jeton de session. Voici un exemple utilisant SoapUI.
Utilisez le jeton de session retourné comme authentification pour tous les appels d'API suivants. Il arrive à expiration au bout de 24 heures.
Vous pouvez ensuite appeler l’API de protection des données :
Téléchargez le WSDL depuis cette URL : <server url>
/nl/jsp/schemawsdl.jsp?schema=nms:privacyRequest.
Utilisez CreateRequestByName pour créer une demande d’accès à des informations personnelles spécifique.
Voici un exemple utilisant CreateRequestByName. Remarquez comment nous utilisons le jeton de session fourni ci-dessus pour l’authentification. La réponse est l’identifiant de la demande créée.
Pour vous aider à effectuer les étapes ci-dessus, tenez compte des points suivants :
Vous trouverez ci-dessous un exemple d'appel de l'API depuis un script JS dans Campaign Classic.
Le champ 'regulation' n’est disponible que si vous utilisez Campaign Classic 20.2 (build 9178+).
Si vous effectuez une migration vers la version 20.2 et que vous utilisiez déjà l’API, vous devez ajouter ce champ. Si vous avez recours à un build précédent, vous pouvez continuer à utiliser l’API sans le champ 'regulation'.
Si vous utilisez une version précédente (avec le package RGPD), vous pouvez continuer à utiliser l’API sans le champ 'regulation' comme illustré ci-dessous :
loadLibrary("nms:gdpr.js");
/****************************
This code calls an API to create new Privay request on the DB.
It requires 4 parameters below.
Feel free to change parameter values.
****************************/
// 1. Namespace internal name
var namespaceName = "defaultNamespace1";
// 2. Reconciliation value for privacy request
var reconciliationValue = "example@adobe.com";
// 3. Privacy request type
// GDPR_REQUEST_TYPE_ACCESS = 1;
// GDPR_REQUEST_TYPE_DELETE = 2;
var requestType = GDPR_REQUEST_TYPE_ACCESS;
// 4. Confirm deleting data required.
// value : true or false
var ConfirmDeletePending = true;
// BEGIN
var requestId = nms.privacyRequest.CreateRequestByName(namespaceName, reconciliationValue, requestType, ConfirmDeletePending);
// User can use a simple queryDef with requestID as a parameter to check request status.
Si vous effectuez une migration vers la version 20.2 et que vous utilisiez déjà l’API, vous devez ajouter ce champ comme illustré ci-dessous :
loadLibrary("nms:gdpr.js");
/****************************
This code calls an API to create new Privay request on the DB.
It requires 5 parameters below.
Feel free to change parameter values.
****************************/
// 1. Namespace internal name
var namespaceName = "defaultNamespace1";
// 2. Reconciliation value for privacy request
var reconciliationValue = "example@adobe.com";
// 3. Privacy request type
// PRIVACY_REQUEST_TYPE_ACCESS = 1;
// PRIVACY_REQUEST_TYPE_DELETE = 2;
var requestType = PRIVACY_REQUEST_TYPE_ACCESS;
// 4. Confirm deleting data required.
// value : true or false
var ConfirmDeletePending = true;
// 5. Specify which regulation applies to newly created request. This is mandatory parameter.
// GDPR = 1
// CCPA = 2
// PDPA = 3
// LGPD = 4
var regulation = 1;
// BEGIN
var requestId = nms.privacyRequest.CreateRequestByName(namespaceName, reconciliationValue, requestType, ConfirmDeletePending, regulation);
// User can use a simple queryDef with requestID as a parameter to check request status.
Si vous utilisez Campaign Classic 20.2 (version 9178+) ou une version ultérieure, le champ 'regulation' est facultatif, comme illustré ci-dessous :
loadLibrary("nms:gdpr.js");
/****************************
This code calls an API to create new Privay request on the DB.
It requires 5 parameters below.
Feel free to change parameter values
****************************/
// 1. Namespace internal name
var namespaceName = "defaultNamespace1";
// 2. Reconciliation value for privacy request
var reconciliationValue = "example@adobe.com";
// 3. Privacy request type
// PRIVACY_REQUEST_TYPE_ACCESS = 1;
// PRIVACY_REQUEST_TYPE_DELETE = 2;
var requestType = PRIVACY_REQUEST_TYPE_ACCESS;
// 4. Confirm deleting data required.
// value : true or false
var ConfirmDeletePending = true;
// 5. Specify which regulation applies to newly created request. This is optional parameter.
// GDPR = 1
// CCPA = 2
// PDPA = 3
// LGPD = 4
var regulation = 1;
// BEGIN
var requestId = nms.privacyRequest.CreateRequestByName(namespaceName, reconciliationValue, requestType, ConfirmDeletePending, regulation);
// User can use a simple queryDef with requestID as a parameter to check request status.
Le CCPA (California Consumer Privacy Act) fournit aux résidents de la Californie de nouveaux droits relatifs aux informations personnelles et impose des responsabilités en matière de protection des données à certaines entités qui exercent des activités en Californie.
La configuration et l'usage des demandes d'accès et de suppression sont identiques pour le RGPD et le CCPA. Cette section présente le droit d'opposition à la vente des données personnelles, qui est spécifique au CCPA.
Outre les outils de gestion du consentement fournis par Adobe Campaign, vous pouvez suivre si un client s’est opposé à la vente de ses informations personnelles.
Un consommateur décide, par l’intermédiaire de votre système, qu’il n’autorise pas la vente de ses informations personnelles à un tiers. Avec Adobe Campaign, vous pourrez stocker et suivre ces informations.
Pour que cela fonctionne, vous devez étendre la table Profils et ajouter un champ Opt-out pour le CCPA.
En tant que contrôleur des données, il vous incombe de recevoir la demande du titulaire des données et de suivre les dates de la demande pour le CCPA. En tant que fournisseur de technologie, nous offrons uniquement une option d'opt-out. Pour plus d’informations sur votre rôle en tant que contrôleur de données, voir la section Données personnelles et acteurs impliqués.
Pour exploiter ces informations, vous devez créer ce champ dans Adobe Campaign Classic. Pour ce faire, vous allez ajouter un champ booléen à la table Destinataire. Lorsqu’un champ est créé, il est automatiquement pris en charge par l’API Campaign.
Si vous utilisez une table de destinataires personnalisée, vous devez également effectuer cette opération.
Pour plus d’informations sur la création d’un champ, reportez-vous à la documentation sur l’édition de schémas.
La modification des schémas est une opération sensible qui ne doit être effectuée que par des utilisateurs experts.
Cliquez sur Outils > Avancé > Ajout de champs, sélectionnez Destinataires comme Type de document et cliquez sur Suivant. Pour plus d’informations sur l’ajout de champs à une table, consultez cette section.
Pour le Type de champ, sélectionnez Champ SQL. Pour le Libellé, utilisez Opt-out pour le CCPA. Sélectionnez le type Nombre entier 8 bits (boolean) et définissez le Chemin relatif unique suivant : @OPTOUTCCPA. Cliquez sur Terminer.
Cette opération va étendre ou créer le schéma Destinataire (cus). Cliquez dessus pour vérifier que le champ a été correctement ajouté.
Cliquez sur le nœud Configuration > Formulaires de saisie de l’explorateur. Dans Destinataire (nms), sous "Package général", ajoutez un élément <input>
et utilisez, pour la valeur xpath, le chemin relatif défini à l’étape 2. Pour plus d’informations sur l’identification d’un formulaire, consultez cette section.
<input colspan="2" type="checkbox" xpath="@OPTOUTCCPA"/>
Déconnectez-vous et reconnectez-vous. Suivez les étapes décrites dans la prochaine section afin de vérifier que le champ est disponible dans les détails d’un destinataire.
Il est de la responsabilité du contrôleur de données d'indiquer la valeur du champ et de suivre les règles et les directives du CCPA relatives à la vente des données.
Pour indiquer les valeurs, plusieurs méthodes peuvent être utilisées :
Vous devez ensuite vous assurer de ne jamais vendre à une quelconque tierce partie les informations personnelles des profils qui s'y sont opposés.
Pour modifier le statut d’opt-out, accédez à Profils et cible > Destinataires et sélectionnez un destinataire. Sous l’onglet Général, vous trouverez le champ configuré dans la section précédente.
Configurez la liste des destinataires pour qu’elle affiche la colonne d’opt-out. Pour savoir comment configurer des listes, consultez la documentation détaillée.
Vous pouvez cliquer sur la colonne pour trier les destinataires en fonction des informations d’opt-out. Vous pouvez également créer un filtre en vue d’afficher uniquement les destinataires qui ont exercé leur droit d’opposition. Pour plus d’informations sur la création de filtres, consultez cette section.