Usted está aquí:
Archive Apex: Derecho al olvido (RTBF)
Las leyes de privacidad de datos otorgan a las personas el Derecho al olvido (RTBF), requiriendo a las organizaciones eliminar datos personales de forma segura bajo solicitud. Archive Apex permite el cumplimiento identificando y eliminando datos específicos de la aplicación Archive, garantizando la eliminación exhaustiva preservando la integridad de otros datos archivados.
Criterios de filtro RTBF
Para procesar una solicitud RTBF, especifique los criterios de filtro apropiados. Por ejemplo:
| Criterios | Ejemplo |
|---|---|
| Nombre del campo | Id. de empleado |
| Objeto | Contacto |
| Valor | ID. 123456789011121314 |
Consideraciones importantes
- Los envíos están limitados a 10.000 solicitudes al día con un límite de búsqueda de 10.000 registros raíz.
- El proceso de eliminación de RTBF se extiende a registros secundarios relacionados directa e indirectamente dentro de una jerarquía.
- La superposición de resultados de búsqueda puede marcar algunos registros como ya eliminados en el archivo de auditoría.
- Si se alcanza el límite de resultados de búsqueda, el estado de actividad Apex muestra un código de estado de
200con este error.Request processed. Maximum search results reached. Refine your search or submit a new request. - La mayoría de las solicitudes RTBF estándar se completan en 30 minutos.
- Para obtener resultados óptimos, apunte al objeto raíz.
- Los filtros Objeto y Nombre de campo no distinguen entre mayúsculas y minúsculas.
- Archive no admite la eliminación parcial.
Comportamiento de RTBF para registros secundarios en una jerarquía archivada
Al ejecutar una solicitud RTBF en un registro secundario, la solicitud elimina toda la jerarquía archivada asociada con ella.
Por ejemplo, si busca un registro de Caso específico y envía una solicitud de RTBF Archivar, la solicitud elimina el Caso, sus Tareas asociadas y su registro raíz Cuenta relacionado. Como estos registros se archivaron juntos, RTBF elimina toda la jerarquía archivada.
Sin embargo, si la Cuenta se archivó por separado, la ejecución de RTBF en el registro Caso elimina solo el Caso y sus Tareas, pero no el registro Cuenta.
Cómo funciona RTBF
El proceso RTBF se ejecuta como un proceso asíncrono y sigue estas llamadas de API secuenciales.
- Identificación de datos: Apex consulta Archive para localizar todos los registros que coinciden con los criterios de filtro especificados.
- Eliminación de datos: Apex envía una solicitud de eliminación a Archivar, eliminando todos los registros coincidentes.
Cuando el proceso está completo, aparece un icono de actividad de RTBF bajo la ficha Actividades en Archive Console.
Ejemplo de solicitud RTBF
Una antigua empleada, Maria Johnson, envía una solicitud RTBF para eliminar todos los datos personales de su sistema. Su empresa archiva registros de empleados junto con su correspondencia de correo electrónico, interacciones de clientes y asignaciones de proyectos. Para seguir la solicitud RTBF, utilice estos criterios de filtro.
| Objeto | Nombre del campo | Valor |
|---|---|---|
| Contacto | Correo electrónico | Maria@own.com |
| Caso | Id. de empleado | 987654321 |
| Tarea | Asignado a | María Johnson |
| Correo electrónico | Remitente | Maria@own.com |
| Documento | Propietario | María Johnson |
Esta solicitud garantiza la eliminación completa de los datos de María, incluyendo su información de contacto, casos en los que estuvo involucrada, tareas asignadas a ella y todos los registros de correo electrónico y documentos vinculados a ella. Este proceso ayuda a mantener el cumplimiento de las leyes de privacidad de datos mientras garantiza una eliminación exhaustiva y precisa de la información confidencial.
Métodos de API y gestión de respuestas
Recomendamos validar sus criterios ejecutando la consulta en Consultas de datos Apex antes de enviar la solicitud RTBF.
| Entrada | Resultado | Definición |
|---|---|---|
ArchiverAccessorResponse |
|
La respuesta de la llamada Olvidar API. Devuelve un requestId para realizar un seguimiento del estado de la solicitud utilizando el método getRTBFStatus. |
Criteria(sObjectName de cadena, fieldName de cadena, value de cadena) |
||
forgetArchivedRecords(list<Criteria>
inputFilters) |
ArchiverAccessorResponse |
Método público que crea una solicitud Olvidar para archivar y una lista de criterios para eliminar. |
getRTBFStatus(string requestId) |
Un informe CSV que contiene todos los detalles de la información que se eliminó. | Método público que le proporciona la capacidad de realizar un seguimiento con su solicitud RTBF. |
- Archive Apex: Ejecutar una solicitud RTBF
Pruebe manualmente Archive Apex y ejecute una solicitud RTBF en la aplicación Archive. - Archivar Apex: Escenarios de casos de uso de RTBF
Utilice escenarios de casos para RTBF en la aplicación Archivar. - Archive Apex: Anonimizar la PII en la aplicación Archive
Anonimice información de identificación personal (PII) en registros archivados sin eliminar el registro en sí. La anonimización sustituye valores confidenciales por marcadores irreversibles para ayudarle a cumplir con las leyes de privacidad mientras mantiene la estructura de registros de la aplicación Archivar.
Archive Apex: Ejecutar una solicitud RTBF
Pruebe manualmente Archive Apex y ejecute una solicitud RTBF en la aplicación Archive.
- Haga clic en el icono Configuración.
- Seleccione Developer Console.
-
Para abrir la consola, pulse
F12oCtrl+Shift+Ien Windows oCmd+Een Mac. -
En la consola, ejecute este código para crear una lista de criterios, enviar una solicitud RTBF y obtener el
requestIddesde Archivar.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); -
Haga clic en Ejecutar.
Comienza la solicitud. Cuando se completa, el
requestIdse almacena en el Registro de ejecución.
Ver el estado de la solicitud RTBF
Después de enviar una solicitud RTBF, puede ver el estado de la solicitud.
- En la parte superior derecha de la página, haga clic en el icono Configuración.
- Seleccione Developer Console.
-
Pulse
Command + E. -
Utilizando el
requestIdpara su solicitud RTBF, ejecute este código.SF_Archive.ArchiverAccessorResponse reportResponse = SF_Archive.ArchiverAccessor.getRTBFStatus(requestId); system.debug(reportResponse.getBody()); -
Haga clic en Ejecutar.
Comienza la solicitud de estado. Cuando se completa, uno de estos estados se muestra en el Registro de ejecución.
Request failed, please contact support.La solicitud no se realizó correctamente y falló.
Request handled, no matching results were found.:No se encontraron registros que coincidan con los criterios especificados.
Request is open. Scan is still in progress.La solicitud aún está en curso.
Cuando la solicitud finaliza correctamente, recibe un informe CSV que contiene todos los detalles de la información que se eliminó.
El informe CSV contiene esta información.
| Campo | Descripción |
|---|---|
| Registro de criterios | El campo de registro que coincide con los criterios de eliminación de la solicitud. |
| Tipo de registro Criterios | Los criterios de la solicitud. |
| Id. de Salesforce relacionado que provocó la eliminación | La fila a la que hace referencia otro registro en la tabla que también coincide con los criterios. |
| Id. de Salesforce | El Id. del registro incluido en la fila del informe. |
| Estado | Indica si el registro se eliminó o no. |
Errores comunes de RTBF
Criterios no válidos
- El campo debe coincidir con un objeto.
- No se permite más de un criterio con el mismo objeto.
- Puede enviar hasta 10 criterios por solicitud.
Sin resultados
- El valor no puede ser parcial.
- Los criterios deben ser del tipo de registro archivado.
Por ejemplo, si tiene una cuenta con X de Id. y ha archivado los casos que pertenecen a ese Id., debe excluir los casos que pertenecen a esa cuenta. Para ello, cree estos criterios de filtro.
Object type: Case, field: AccountId, value: XObject type: Account, field: Id, value: XEste criterio no elimina nada porque Archivar no tiene la cuenta relevante.Archivar Apex: Escenarios de casos de uso de RTBF
Utilice escenarios de casos para RTBF en la aplicación Archivar.
Escenario 1: RTBF con múltiples objetos
Jane Doe es cliente de XYZ Bank, donde ha tenido una cuenta durante los últimos 2 años. Recientemente, decidió que desea ejercer su RTBF bajo el Reglamento General de Protección de Datos (RGPD). Jane cree que el banco tiene datos personales innecesarios sobre ella y desea que se borren de sus registros.
Jane envía su solicitud de RTBF a XYZ Bank y especifica los datos personales que desea eliminar, que pueden incluir información de cuenta, historial de transacciones y cualquier otro dato personal en poder del banco. El banco procede a identificar y localizar los datos personales de Jane.
| Criterios | Filtro | Filtro | Filtro | Filtro |
|---|---|---|---|---|
| Objeto | Cuenta | Transacción_c | Caso | Correo electrónico |
| Nombre del campo | Nombre | Usuario de transacción | Nombre de cliente | Desde |
| Valor | Fulano | Fulano | Fulano | Fulano |
La solicitud RTBF puede contener hasta 10 objetos separados.
Resultados:
Archive encuentra 1 Cuenta, 2.000 Transacciones, 15 Casos como raíz y 30 correos electrónicos.
Escenario 2: Objeto único RTBF
Una compañía farmacéutica lanzó un medicamento experimental, Eddy's Elixirs, para tratar la artritis. Sin embargo, produjo reacciones adversas graves entre los pacientes. Tras recuperar el medicamento, la empresa envió una solicitud de RTBF para eliminar todos los registros públicos y contenido digital relacionado con Eddy's Elixirs.
| Criterios | Filtro |
|---|---|
| Objeto | Caso |
| Nombre del campo | Nombre de fármaco |
| Valor | Elixires de Eddy |
Resultados:
Archive encuentra 1.000 casos como raíz y 1.000 registros de pacientes archivados bajo la raíz como registros secundarios. Los elimina a todos.
Se crea una actividad en la ficha Archivar actividades de la consola, mostrando el icono RTBF.
Escenario 3: RTBF Más de 10.000 registros raíz encontrados
Emily Jones, una usuaria habitual de una popular plataforma de redes sociales llamada ConnectWorld, desactiva su cuenta y solicita ejercer su RTBF bajo leyes de protección de datos.
| Objeto | Filtro | Filtro | Filtro |
|---|---|---|---|
| Objeto | Cuenta de usuario | Contacto | Caso |
| Nombre del campo | Nombre | Teléfono | Id. relacionado |
| Valor | Id. de cuenta para Emily Jones | El número de teléfono de Emily | Id. de cuenta para Emily Jones |
Resultados:
Archive encuentra 20.000 registros de casos raíz, 300.000 contactos y 10.000 casos como raíz, y 150.000 contactos archivados bajo la raíz cuando se eliminan registros secundarios.
Se crea una actividad en la ficha Archivar actividades de la consola, mostrando el icono RTBF.
getRTBFStatus devuelve un código de estado 200 con el mensaje de error "Solicitud procesada. Máximo de resultados de búsqueda alcanzados. Restrinja su búsqueda o envíe una nueva solicitud para ver más registros".
Archive solo puede procesar hasta 10.000 registros raíz por solicitud Apex RTBF. Para resolver este error, ejecute la consulta de nuevo para recuperar los registros restantes.
Archive Apex: Anonimizar la PII en la aplicación Archive
Anonimice información de identificación personal (PII) en registros archivados sin eliminar el registro en sí. La anonimización sustituye valores confidenciales por marcadores irreversibles para ayudarle a cumplir con las leyes de privacidad mientras mantiene la estructura de registros de la aplicación Archivar.
La anonimización, también conocida como enmascaramiento, le ayuda a cumplir con solicitudes de privacidad, como el Derecho al olvido (RTBF). Este proceso realiza una actualización in situ en registros archivados. A diferencia de una acción de purga, que elimina datos de forma permanente, la anonimización sustituye valores confidenciales específicos por texto genérico, como redacted@example.com.
Cómo funciona la anonimización
El sistema detecta campos de PII, como Nombre, Correo electrónico, Teléfono y Dirección, utilizando metadatos de objetos. Cuando envía una solicitud, el sistema enmascara valores de PII originales con marcadores de posición irreversibles. Los datos que no son de PII, como los Id. de registro y las marcas de tiempo, permanecen sin cambios y se pueden buscar.
La anonimización es integral. Cuando anonimiza un registro raíz, el proceso de anonimización cae automáticamente en cascada en todos los registros secundarios relacionados dentro de la misma jerarquía archivada. Por ejemplo, la anonimización de un registro Contacto también anonimiza la PII en Tareas y eventos relacionados de ese registro.
Consideraciones importantes
- El proceso de anonimización es permanente. No puede recuperar o ver valores de PII originales después de la anonimización.
- Puede anonimizar un registro solo una vez. Si envía una solicitud duplicada para un registro anónimo, el sistema la ignora.
- La anonimización comparte el límite de frecuencia estándar Archive RTBF de 10.000 solicitudes por organización al día.
- No puede seleccionar manualmente campos para anonimizar. El sistema identifica campos de PII automáticamente basándose en el algoritmo Recuperar.
- No puede anonimizar registros que se mantienen legalmente. El sistema excluye automáticamente registros actualmente bajo retención legal o bloqueo de retención.
Enviar una solicitud de anonimización
Defina sus criterios de destino y envíe un trabajo de anonimización utilizando la clase Apex SF_Archive.ArchiverAccessor.
Asegúrese de que cumple los requisitos que se indican a continuación.
- El usuario que ejecuta el código Apex tiene permiso para acceder al espacio de nombres
SF_Archive. - Acceso a Developer Console o un IDE para ejecutar Execute Anonymous Apex.
- Abra Developer Console o la herramienta de ejecución Apex que prefiera.
- Abra una ventana Ejecutar anónima.
-
Para definir los criterios y enviar la solicitud, ejecute este código. Este bloque de código anonimiza el campo de dirección de correo electrónico en un registro Contacto.
// 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);
Verificar estado de anonimización
Compruebe el estado de su trabajo de anonimización y genere un informe de auditoría utilizando el Id. de solicitud generado durante el envío.
La anonimización es un proceso asíncrono. Después de enviar una solicitud, utilice el Id. de solicitud devuelto para realizar un seguimiento de su progreso y verificar los resultados.
-
Para comprobar el estado del trabajo de anonimización, ejecute este código en la ventana Ejecutar anónimo.
// 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); -
Para generar un informe de auditoría tras completar el trabajo de anonimización, ejecute este código en la ventana Ejecutar anónimo.
String requestId = 'YOUR_REQUEST_ID_HERE'; String report = SF_Archive.ArchiverAccessor.getMaskingReport(requestId); System.debug('Anonymization Audit Report: ' + report);
Resultados de anonimización
Revise cómo aparecen los campos de PII tras completar el proceso de anonimización. Cuando el estado del trabajo es HANDLED, el sistema actualiza los datos archivados inmediatamente.
- Las búsquedas que utilizan la PII original como una dirección de correo electrónico no devuelven resultados.
- Las búsquedas que utilizan identificadores no confidenciales como un Id. de registro devuelven el registro anónimo.
- Cuando visualiza el registro a través de Búsqueda, Exportación o Desarchivar, los campos PII muestran valores de marcador de posición.
| Campo | Valor original | Valor anónimo |
|---|---|---|
| Nombre | Mickey Mouse | nombre_redactado |
| Correo electrónico | mickey.mouse@ejemplo.com | redactado@ejemplo.com |
| Teléfono | +1-415-555-1234 | 000-000-0000 |
| ContactId | 003XX0000123AbC | 003XX0000123AbC |

