Ti trovi qui:
Archiviare Apex: diritto all'oblio (RTBF)
I regolamenti sulla privacy dei dati concedono alle persone il diritto all'oblio (RTBF), che richiede alle organizzazioni di cancellare in modo sicuro i dati personali su richiesta. Archivia Apex consente la conformità identificando ed eliminando dati specifici dall'app Archivia, garantendo una rimozione accurata pur preservando l'integrità degli altri dati archiviati.
Criteri di filtro per l'RTBF
Per elaborare una richiesta di diritto all'oblio, specificare i criteri di filtro appropriati. Ad esempio:
| Criteri | Esempio |
|---|---|
| Nome campo | ID dipendente |
| Oggetto | Referente |
| Valore | ID 123456789011121314 |
Considerazioni importanti
- Gli invii sono limitati a 10.000 richieste al giorno con un limite di 10.000 ricerche di record radice.
- Il processo di eliminazione del diritto all'oblio si estende ai record controllati correlati direttamente e indirettamente all'interno di una gerarchia.
- La sovrapposizione dei risultati di ricerca può contrassegnare alcuni record come già eliminati nel file di controllo.
- Se viene raggiunto il limite dei risultati della ricerca, lo stato attività Apex visualizza un codice di stato
200con questo errore.Request processed. Maximum search results reached. Refine your search or submit a new request. - La maggior parte delle richieste standard di diritto all'oblio vengono completate entro 30 minuti.
- Per risultati ottimali, utilizzare l'oggetto radice come destinazione.
- I filtri Nome oggetto e Nome campo non fanno distinzione tra maiuscole e minuscole.
- Archivia non supporta l'eliminazione parziale.
Comportamento del RTBF per i record controllati in una gerarchia archiviata
Quando si esegue una richiesta di diritto all'oblio per un record secondario, la richiesta rimuove l'intera gerarchia archiviata associata.
Ad esempio, se si cerca un record Caso specifico e si invia una richiesta di diritto all'oblio Archivia, la richiesta rimuove il caso, le operazioni associate e il record radice Account correlato. Poiché questi record sono stati archiviati insieme, la gerarchia dei record eliminati elimina l'intera gerarchia archiviata.
Tuttavia, se l'Account è stato archiviato separatamente, l'esecuzione del diritto di opzione sul record Caso rimuove solo il Caso e le relative Operazioni, ma non il record Account.
Funzionamento dell'RTBF
Il processo RTBF viene eseguito come processo asincrono e segue queste chiamate API sequenziali.
- Identificazione dei dati: Apex esegue query su Archivia per individuare tutti i record che corrispondono ai criteri di filtro specificati.
- Eliminazione dati: Apex invia una richiesta di eliminazione ad Archivia, rimuovendo tutti i record corrispondenti.
Al termine del processo, viene visualizzata un'icona attività di diritto all'oblio sotto la scheda Attività nella console Archivia.
Esempio di richiesta RTBF
Un ex dipendente, Maria Johnson, invia una richiesta di diritto all'oblio per eliminare tutti i dati personali dal sistema. L'azienda archivia i record dei dipendenti insieme alla corrispondenza email, alle interazioni con i clienti e alle assegnazioni dei progetti. Per seguire la richiesta di diritto all'oblio, utilizzare questo criterio di filtro.
| Oggetto | Nome campo | Valore |
|---|---|---|
| Referente | Maria@own.com | |
| Caso | ID dipendente | 987654321 |
| Operazione | Assegnato a | Maria Johnson |
| Mittente | Maria@own.com | |
| Documento | Titolare | Maria Johnson |
Questa richiesta garantisce la rimozione completa dei dati di Maria, incluse le informazioni di contatto, i casi in cui è stata coinvolta, le operazioni assegnate e tutti i record email e documenti a lei collegati. Questo processo aiuta a mantenere la conformità ai regolamenti sulla privacy dei dati garantendo al contempo un'eliminazione accurata e accurata delle informazioni sensibili.
Metodi API e gestione delle risposte
Si consiglia di convalidare i criteri eseguendo la query sulle query sui dati Apex prima di inviare la richiesta di diritto all'oblio.
| Input | Output | Definizione |
|---|---|---|
ArchiverAccessorResponse |
|
Risposta della chiamata API Dimentica. Restituisce un requestId per tenere traccia dello stato della richiesta utilizzando il metodo getRTBFStatus. |
Criteria(sObjectName stringa, fieldName stringa, value stringa) |
||
forgetArchivedRecords(list<Criteria>
inputFilters) |
ArchiverAccessorResponse |
Metodo pubblico che crea una richiesta Dimentica di archiviare e un elenco di criteri da eliminare. |
getRTBFStatus(string requestId) |
Rapporto CSV contenente tutti i dettagli delle informazioni eliminate. | Metodo pubblico che consente di dare seguito alla richiesta di diritto all'oblio. |
- Archiviazione Apex: esecuzione di una richiesta RTBF
Testare manualmente Archivia Apex ed eseguire una richiesta RTBF nell'app Archivia. - Archiviazione di scenari di casi d'uso Apex — RTF
Scenari di casi d'uso per l'RTBF nell'app Archivia. - Archivia Apex: anonimizzazione delle informazioni personali nell'app Archivia
Rendere anonime le informazioni personali nei record archiviati senza eliminare il record stesso. L'anonimizzazione sostituisce i valori sensibili con segnaposto irreversibili per facilitare la conformità ai regolamenti sulla privacy mantenendo la struttura dei record dell'app Archivia.
Archiviazione Apex: esecuzione di una richiesta RTBF
Testare manualmente Archivia Apex ed eseguire una richiesta RTBF nell'app Archivia.
- Fare clic sull'icona Impostazioni.
- Selezionare Developer Console.
-
Per aprire la console, premere
F12oCtrl+Shift+Isu Windows oCmd+Esu Mac. -
Nella console, eseguire questo codice per creare un elenco di criteri, inviare una richiesta di diritto all'oblio e ottenere i
requestIdda Archivia.SF_Archive.Criteria criteria1 = new SF_Archive.Criteria('Account', 'Name', 'example name'); list<SF_Archive.Criteria> lst = new list<SF_Archive.Criteria>(); lst.add(criteria1); SF_Archive.ArchiverAccessorResponse response = SF_Archive.ArchiverAccessor.forgetArchivedRecords(lst); Map<String, String> values = (Map<String, String>)JSON.deserialize(response.getBody(), Map<String, String>.class); String requestId = values.get('request_id'); system.debug(requestId); -
Fare clic su Execute (Esegui).
La richiesta ha inizio. Al termine, il
requestIdviene memorizzato nel registro esecuzioni.
Visualizzazione dello stato della richiesta di diritto all'oblio
Dopo aver inviato una richiesta di diritto all'oblio, è possibile visualizzare lo stato della richiesta.
- In alto a destra della pagina, fare clic sull'icona Impostazioni.
- Selezionare Developer Console.
-
Premere
Command + E. -
Utilizzando il
requestIdper la richiesta RTBF, eseguire questo codice.SF_Archive.ArchiverAccessorResponse reportResponse = SF_Archive.ArchiverAccessor.getRTBFStatus(requestId); system.debug(reportResponse.getBody()); -
Fare clic su Execute (Esegui).
La richiesta di stato ha inizio. Al termine, uno di questi stati viene visualizzato nel registro esecuzioni.
Request failed, please contact support.La richiesta non è riuscita e non è riuscita.
Request handled, no matching results were found.:Non sono stati trovati record che corrispondono ai criteri specificati.
Request is open. Scan is still in progress.La richiesta è ancora in corso.
Al termine della richiesta, si riceve un rapporto CSV contenente tutti i dettagli delle informazioni eliminate.
Il rapporto CSV contiene queste informazioni.
| Campo | Descrizione |
|---|---|
| Record criteri | Il campo record che corrisponde ai criteri di eliminazione della richiesta. |
| Tipo di record criterio | I criteri della richiesta. |
| ID Salesforce correlato che ha provocato l'eliminazione | Riga a cui fa riferimento un altro record della tabella che corrisponde anch'esso ai criteri. |
| ID Salesforce | ID del record contenuto nella riga del rapporto. |
| Stato | Indica se il record è stato eliminato o meno. |
Errori comuni di RTBF
Criteri non validi
- Il campo deve corrispondere a un oggetto.
- Non è consentito più di un criterio con lo stesso oggetto.
- È possibile inviare fino a 10 criteri per richiesta.
Nessun risultato
- Il valore non può essere parziale.
- I criteri devono essere di tipo record archiviato.
Ad esempio, se si dispone di un Account con X ID e sono stati archiviati i casi che appartengono a tale ID, è necessario escludere i casi che appartengono a tale Account. A questo scopo, creare questo criterio di filtro.
Object type: Case, field: AccountId, value: XObject type: Account, field: Id, value: XQuesto criterio non elimina nulla perché Archivia non ha l'account pertinente.Archiviazione di scenari di casi d'uso Apex — RTF
Scenari di casi d'uso per l'RTBF nell'app Archivia.
Scenario 1: RTBF con più oggetti
Jane Doe è cliente di XYZ Bank, dove ha un conto negli ultimi 2 anni. Recentemente, ha deciso di voler esercitare il suo diritto di proprietà intellettuale ai sensi del Regolamento generale sulla protezione dei dati (GDPR). Jane crede che la banca detenga dati personali non necessari su di lei e vuole che vengano cancellati dai loro registri.
Jane invia la sua richiesta di diritto all'oblio a XYZ Bank e specifica i dati personali che desidera cancellare, che possono includere informazioni sul conto, cronologia delle transazioni e qualsiasi altro dato personale in possesso della banca. La banca procede all'identificazione e alla localizzazione dei dati personali di Jane.
| Criteri | Filtro/filtrare | Filtro/filtrare | Filtro/filtrare | Filtro/filtrare |
|---|---|---|---|---|
| Oggetto | Account | Transaction_c | Caso | |
| Nome campo | Nome | Utente transazione | Nome cliente | Da |
| Valore | Sconosciuta | Sconosciuta | Sconosciuta | Sconosciuta |
La richiesta RTBF può contenere fino a 10 oggetti separati.
Risultati:
L'archivio trova 1 account, 2.000 transazioni, 15 casi come root e 30 email.
Scenario 2: Oggetto singolo RTBF
Un'azienda farmaceutica ha rilasciato un farmaco sperimentale, Eddy's Elixirs, per trattare l'artrite. Tuttavia, ha provocato gravi reazioni avverse tra i pazienti. Dopo aver richiamato il farmaco, la società ha presentato una richiesta di RTBF per rimuovere tutti i record pubblici e il contenuto digitale relativi a Eddy's Elixirs.
| Criteri | Filtro/filtrare |
|---|---|
| Oggetto | Caso |
| Nome campo | Nome farmaco |
| Valore | Elisir di Eddy |
Risultati:
L'archivio trova 1.000 casi come radice e 1.000 record di pazienti archiviati sotto la radice come record secondari. Li rimuove tutti.
Viene creata un'attività nella scheda Archivia attività della console, che mostra l'icona del diritto di voto.
Scenario 3: RTBF Oltre 10.000 record radice trovati
Emily Jones, utente abituale di una popolare piattaforma di social media chiamata ConnectWorld, disattiva il suo account e chiede di esercitare il suo diritto di voto ai sensi delle normative sulla protezione dei dati.
| Oggetto | Filtro/filtrare | Filtro/filtrare | Filtro/filtrare |
|---|---|---|---|
| Oggetto | Account utente | Referente | Caso |
| Nome campo | Nome | Telefono | ID correlato |
| Valore | ID account per Emily Jones | Numero di telefono di Emily | ID account di Emily Jones |
Risultati:
Archivia trova 20.000 record Caso radice, 300.000 Referenti e 10.000 Casi come radice e 150.000 Referenti archiviati sotto la radice quando i record secondari vengono rimossi.
Viene creata un'attività nella scheda Archivia attività della console, che mostra l'icona del diritto di voto.
getRTBFStatus restituisce un codice di stato 200 con il messaggio di errore "Richiesta elaborata. Numero massimo di risultati di ricerca raggiunti. Perfezionare la ricerca o inviare una nuova richiesta per visualizzare più record".
Archivia può elaborare solo fino a 10.000 record radice per richiesta Apex RTBF. Per risolvere questo errore, eseguire di nuovo la query per recuperare i record rimanenti.
Archivia Apex: anonimizzazione delle informazioni personali nell'app Archivia
Rendere anonime le informazioni personali nei record archiviati senza eliminare il record stesso. L'anonimizzazione sostituisce i valori sensibili con segnaposto irreversibili per facilitare la conformità ai regolamenti sulla privacy mantenendo la struttura dei record dell'app Archivia.
L'anonimizzazione, nota anche come mascheramento, consente di rispettare le richieste di privacy, ad esempio il diritto all'oblio (RTBF). Questo processo esegue un aggiornamento sul posto sui record archiviati. A differenza di un'azione di eliminazione, che elimina in modo permanente i dati, l'anonimizzazione sostituisce valori sensibili specifici con testo generico, ad esempio redacted@example.com.
Come funziona l'anonimizzazione
Il sistema rileva i campi delle informazioni personali, ad esempio Nome, Email, Telefono e Indirizzo, utilizzando i metadati degli oggetti. Quando si invia una richiesta, il sistema maschera i valori delle informazioni personali originali con segnaposto irreversibili. I dati non personali, ad esempio ID record e indicazioni orarie, rimangono invariati e ricercabili.
L'anonimizzazione è completa. Quando si rende anonimo un record radice, il processo di anonimizzazione si applica automaticamente a tutti i record secondari correlati all'interno della stessa gerarchia archiviata. Ad esempio, l'anonimizzazione di un record Referente rende anonime anche le informazioni personali nelle operazioni e negli eventi correlati di quel record.
Considerazioni importanti
- Il processo di anonimizzazione è permanente. Non è possibile recuperare o visualizzare i valori delle informazioni personali originali dopo l'anonimizzazione.
- È possibile rendere anonimo un record una sola volta. Se si invia una richiesta di duplicato per un record anonimo, il sistema la ignora.
- L'anonimizzazione condivide il limite standard di traffico RTF Archiviazione di 10.000 richieste per organizzazione al giorno.
- Non è possibile selezionare manualmente i campi da rendere anonimi. Il sistema identifica automaticamente i campi delle informazioni personali in base all'algoritmo Recover.
- Non è possibile rendere anonimi i record legalmente detenuti. Il sistema esclude automaticamente i record attualmente detenuti legalmente o bloccati dalla conservazione.
Invio di una richiesta di anonimizzazione
Definire i criteri di destinazione e inviare un processo di anonimizzazione utilizzando la classe Apex SF_Archive.ArchiverAccessor.
Assicurarsi che siano soddisfatti i seguenti requisiti.
- L'utente che esegue l'Apex Code è autorizzato ad accedere allo spazio dei nomi
SF_Archive. - Accesso alla Developer Console o a un'IDE per eseguire Execute Anonymous Apex.
- Aprire la Developer Console o lo strumento di esecuzione Apex preferito.
- Aprire una finestra Esegui anonimo.
-
Per definire i criteri e inviare la richiesta, eseguire questo codice. Questo blocco di codice rende anonimo il campo indirizzo email in un record Referente.
// 1. Define the criteria for the records to anonymize. // Syntax: new Criteria('ObjectAPIName', 'FieldAPIName', 'ValueToMatch'); List<SF_Archive.Criteria> criteriaList = new List<SF_Archive.Criteria>(); // Example: Anonymize a specific Contact by Email criteriaList.add(new SF_Archive.Criteria( 'Contact', 'Email', 'mickey.mouse@example.com' )); // 2. Submit the anonymization request. SF_Archive.ArchiverAccessorResponse response = SF_Archive.ArchiverAccessor.maskArchivedRecords(criteriaList); // 3. Process the response to get the request ID. Map<String, String> values = (Map<String, String>)JSON.deserialize(response.getBody(), Map<String, String>.class); String requestId = values.get('request_id'); // Output the request ID for tracking. System.debug('Anonymization Job Submitted. Request ID: ' + requestId);
Verifica dello stato di anonimizzazione
Controllare lo stato del processo di anonimizzazione e generare un rapporto di controllo utilizzando l'ID richiesta generato durante l'invio.
L'anonimizzazione è un processo asincrono. Dopo aver inviato una richiesta, utilizzare l'ID richiesta restituito per monitorarne l'avanzamento e verificare i risultati.
-
Per verificare lo stato del processo di anonimizzazione, eseguire questo codice nella finestra Esegui anonimo.
// Paste the Request ID found in the Debug Log from the anonymization request. // Example: String requestId = '0Qn5e000000abcD'; String requestId = 'YOUR_REQUEST_ID_HERE'; // Check the status. String statusResponse = SF_Archive.ArchiverAccessor.getMaskingStatus(requestId); System.debug('Anonymization Job Status: ' + statusResponse); -
Per generare un rapporto di controllo al termine del processo di anonimizzazione, eseguire questo codice nella finestra Esegui anonimo.
String requestId = 'YOUR_REQUEST_ID_HERE'; String report = SF_Archive.ArchiverAccessor.getMaskingReport(requestId); System.debug('Anonymization Audit Report: ' + report);
Risultati dell'anonimizzazione
Rivedere come vengono visualizzati i campi delle informazioni personali al termine del processo di anonimizzazione. Quando lo stato del processo è HANDLED, il sistema aggiorna immediatamente i dati archiviati.
- Le ricerche che utilizzano le informazioni personali originali come un indirizzo email non restituiscono alcun risultato.
- Le ricerche che utilizzano identificatori non sensibili come un ID record restituiscono il record reso anonimo.
- Quando si visualizza il record tramite Ricerca, Esporta o Annulla archiviazione, i campi delle informazioni personali mostrano valori segnaposto.
| Campo | Valore originale | Valore anonimizzato |
|---|---|---|
| Nome | Topolino | redacted_first_name |
| mickey.mouse@example.com | redacted@example.com | |
| Telefono | +1-415-555-1234 | 000-000-0000 |
| ContactId | 003XX0000123AbC | 003XX0000123AbC |

