Datenlöschung (framework-data-erasure)

Löschmethoden

Es können eigene Löschmethoden integriert werden. Dazu muss ein Manager eines Pakets das Interface Brandbox\FrameworkDataErasure\Erasure\Job\Lib\Service\EraserServiceInterface implementieren.

Automatisierung

Eine automatische Erstellung von Löschaufträgen ist mittels Cronjob möglich, der einmal täglich, vorzugsweise nachts, laufen sollte. Dieser muss wie folgt definiert sein:

-package=Erasure/Action -host=domain.brandbox.de

Die Abarbeitung der Löschungen erfolgt in Paketen zu 5000 Datensätzen über einen weiteren Cronjob, der alle 15 Minuten laufen sollte, jedoch aus Performancegründen nur zu Randzeiten:

-package=Erasure/Job -host=domain.brandbox.de



Versionshinweise

Bis Version 2.0 der App framework-data-erasure existiert nur der Cron-Job für Erasure/Job, der sowohl die Erstellung als auch die Abarbeitung der Löschaufträge behandelt.

Events

Erasure/Action

Event

Beschreibung

Event

Beschreibung

\Brandbox\FrameworkDataErasure\Erasure\Action\Lib\Event\OnExecuteCron

Das Event wird nach Ausführung des Cron Erasure/Action gefeuert. So können mit Cron-Ausführung eigene nachgelagerte Aktionen ausgeführt werden. Eigene Ergebnisse können in das Property $results geschrieben werden.

Erasure/Job

Event

Beschreibung

Event

Beschreibung

\Brandbox\FrameworkDataErasure\Erasure\Job\Lib\Event\OnAfterCreateErasureJob

Das Event wird nach Anlage eines Löschauftrags gefeuert. Standard-Implementation ist das Speichern und Verknüpfen der Löschungen in Erasure/Job mit Priorität 1000.

\Brandbox\FrameworkDataErasure\Erasure\Job\Lib\Event\OnAfterCreateErasureLog

Das Event wird nach Anlage einer Löschung gefeuert.

\Brandbox\FrameworkDataErasure\Erasure\Job\Lib\Event\OnEraseEntity

Das Event wird zum Ausführen der Löschung pro gelöschtem Datensatz gefeuert. Standard-Implementation ist das Löschen der betroffenen Entity mit Priorität 1000. Da mit der Standardimplementation das Entity selbst gelöscht wird und damit die ID danach nicht mehr zur Verfügung steht, werden für nachträgliche Operationen die Properties $id und $identifier der gelöschten Entity im Event separat zur Verfügung gestellt.

\Brandbox\FrameworkDataErasure\Erasure\Job\Lib\Event\OnProcessErasureJob

Das Event wird beim Verarbeiten eines Löschauftrags gefeuert. Standard-Implementation ist die Löschung selbst in Erasure/Job mit Priorität 1000.

\Brandbox\FrameworkDataErasure\Erasure\Job\Lib\Event\OnSendInformationMail

Das Event wird vor dem Versenden der Informations-Mails gefeuert und enthält im Property $builder den Mail-Builder, der angereichert oder verändert werden kann.