Nuclos DSGVO: GDPR, UserProvider delete, PRIVACY_DELETE_SESSIONLOG_AFTER_PERIOD, T_AD_SESSIONS, T_UD_HISTORY, Historisierung, 4.2022.7. |
Sprache: Deutsch · English
DSGVO-Funktionen im Nuclos-Core – Benutzer per API löschen, Sitzungslog aufräumen und Historisierung steuern.
Auf dieser Seite |
Zur einfacheren Umsetzung von DSGVO-Anforderungen wurden im Nuclos-Core ab Version 4.2022.7 mehrere Erweiterungen geschaffen.
Benutzer können über org.nuclos.api.provider.UserProvider#delete gelöscht werden – z.B. per Job, der lange gesperrte Benutzer entfernt:
import java.util.ArrayList;
import java.util.Calendar;
import java.util.List;
import org.nuclos.api.context.JobContext;
import org.nuclos.api.exception.BusinessException;
import org.nuclos.api.provider.QueryProvider;
import org.nuclos.api.provider.UserProvider;
import org.nuclos.api.rule.JobRule;
import org.nuclos.api.rule.TransactionalJobRule;
import org.nuclos.system.User;
public class DSGVOGesperrteUserLoeschen implements JobRule, TransactionalJobRule {
@Override
public void execute(final JobContext context) throws BusinessException {
User user = (User) context.getTransactionalObject();
context.joblog("delete user " + user.getUsername());
UserProvider.delete(user);
}
@Override
public List<Object> getTransactionalObjects(final JobContext context) {
Calendar calendar = Calendar.getInstance();
calendar.add(Calendar.DAY_OF_YEAR, -90); // Letzte Änderung am User ist 90 Tage her
return new ArrayList<>(QueryProvider.execute(QueryProvider.create(User.class)
.where(User.Locked.eq(true))
.and(User.ChangedAt.Lt(calendar.getTime()))));
}
} |
T_AD_SESSIONS) werden über den Systemparameter PRIVACY_DELETE_SESSIONLOG_AFTER_PERIOD (Tage) automatisch um 0 Uhr gelöscht.T_UD_HISTORY): Änderungen werden historisiert; die Aufbewahrung lässt sich pro Attribut im BO-Wizard konfigurieren.