Processo automatico di richiesta di accesso a dati personali automatic-privacy-request-api
Adobe Campaign fornisce un’API che consente di impostare un processo automatico di richiesta di accesso a dati personali.
Con l’API, il processo generale di accesso a dati personali è uguale al processo che si segue quando si utilizza l’interfaccia. L’unica differenza consiste nella creazione della richiesta di accesso a dati personali. Invece di creare la richiesta in Adobe Campaign, viene inviato a Campaign un POST contenente le informazioni sulla richiesta. Per ogni richiesta, viene aggiunta una nuova voce nella schermata Privacy Requests. I flussi di lavoro tecnici per la privacy elaborano quindi la richiesta, come per una richiesta aggiunta utilizzando l’interfaccia.
Se utilizzi l’API per inviare richieste di accesso a dati personali, ti consigliamo di lasciare attivato il processo in 2 fasi per le prime richieste di eliminazione, per poter verificare i dati restituiti. Al termine dei test, puoi disattivare il processo in due fasi in modo che il processo di richiesta di eliminazione possa essere eseguito automaticamente.
L’API JS CreateRequestByName è definita come segue.
<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>
Richiamare l’API esternamente invoking-api-externally
Ecco un esempio di come richiamare l’API esternamente (autenticazione tramite l’API e dettagli specifici sull’API Privacy). Per ulteriori informazioni sull'API Privacy, consulta la documentazione API. È inoltre possibile consultare la documentazione sulle chiamate al servizio web.
Innanzitutto, devi eseguire l’autenticazione tramite l’API:
-
Scarica il file WSDL xtk:session tramite questo URL:
<server url>
/nl/jsp/schemawsdl.jsp?schema=xtk:session. -
Utilizza il metodo “Logon” e passa un nome utente e una password come parametri nella richiesta. Riceverai una risposta contenente un token di sessione. Ecco un esempio che utilizza SoapUI.
-
Utilizza il Token di sessione restituito come autenticazione per tutte le chiamate API successive. Scade dopo 24 ore.
Quindi invoca l’API Privacy:
-
Scarica il file WSDL da questo URL:
<server url>
/nl/jsp/schemawsdl.jsp?schema=nms:privacyRequest. -
Utilizza CreateRequestByName per creare una richiesta di accesso a dati personali specifica.
Di seguito è riportato un esempio che utilizza CreateRequestByName. Osserva come viene utilizzato il token di sessione fornito in precedenza come autenticazione. La risposta è l’ID della richiesta creata.
Per aiutarti a eseguire i passaggi precedenti, considera quanto segue:
- È possibile utilizzare queryDef nello schema nms:gdprRequest per controllare lo stato della richiesta di accesso.
- È possibile utilizzare queryDef nello schema nms:gdprRequestData per ottenere il risultato della richiesta di accesso.
- Per scaricare il file XML da “$(serverUrl)'/nms/gdpr.jssp?id='@id”, è necessario aver effettuato l’accesso e accedervi da un IP inserito nell’elenco Consentiti. A questo scopo, crea un’applicazione web che ti consenta di accedere al file generato da JSSP.
Richiamare l’API da un JS invoking-api-from-js
Ecco un esempio di come richiamare l’API da un JS all’interno di Campaign Classic.
-
Se utilizzi una build precedente (con pacchetto GDPR), puoi continuare a utilizzare l’API senza il campo “regulation” come mostrato di seguito:
code language-none loadLibrary("nms:gdpr.js"); /**************************** This code calls an API to create new Privacy 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.
-
Se stai eseguendo la migrazione a 20.2 e stavi già utilizzando l’API, devi aggiungere il campo “regulation” come mostrato di seguito:
code language-none loadLibrary("nms:gdpr.js"); /**************************** This code calls an API to create new Privacy 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.
-
Se utilizzi Campaign Classic 20.2 (build 9178+) o versione successiva, il campo “regulation” è facoltativo, come illustrato di seguito:
code language-none loadLibrary("nms:gdpr.js"); /**************************** This code calls an API to create new Privacy 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.