Encode Labs · Privacy Guard Privacy & retention for C·CURE 9000

Privacy
Guard.

Anonymizer for C·CURE 9000

Automated, configurable data-retention and anonymization for access-control deployments – built for security teams who need to prove compliance, not just claim it.

Encode Labs · 2026 For Security, IT & compliance teams
The landscape 02 / 21

The privacy mandate.

Wherever your customers operate, personnel data in an access-control system is regulated personal data.

European Union
GDPR
  • Storage limitation – kept no longer than necessary
  • Right to erasure (Article 17)
  • Demonstrable accountability for processing
California
CCPA / CPRA
  • Disclosed retention period per category
  • Right to delete on request
  • Data minimization as default
Canada
PIPEDA
  • Personal information retention only as needed
  • Right of access and correction
  • Accountability for organizational practices
Also covered
UK GDPR
United Kingdom
HIPAA
US · Health
LGPD
Brazil
PDPA
Singapore
POPIA
South Africa
DPDP Act
India
Privacy Act 1988
Australia
Industry frameworks 03 / 21

Built on proven retention practice.

ISO 27001, SOC 2 and NIST already prescribe what good retention looks like. Privacy Guard implements that prescription end-to-end.

ISO 27001

Information security management
A.5.33Records
A.8.10Deletion
A.8.15Logging

SOC 2

Trust services criteria
CC7Monitoring
P5Retention
C1Disposal

NIST

Cybersecurity & privacy frameworks
AU-11Retention
PR.DS-P5Disposal
SI-12Handling

Privacy Guard implements
01 – Policy

Documented retention schedule

Per-partition, per-personnel-type windows defined in the admin client and versioned in a dedicated database.

02 – Evidence

End-to-end audit trail

Every cycle, every record, every server – per-user processing state queryable on demand for auditors.

03 – Disposal

Anonymize or delete by policy

Preserve forensic evidence by anonymizing; remove obligation entirely with controlled, traceable deletion.

04 – Integrity

Idempotent, fail-fast cycles

At-least-once semantics. A failed cycle never leaves the system in a half-applied state – re-runs are safe.

The solution 05 / 21

A configurable privacy and data-retention pipeline for C·CURE 9000 – anonymizing personnel data, audit logs, and activity logs on the schedule you define.

Automatic

Policy-driven. Runs on a CRON schedule, every server, every cycle. No manual SQL.

Auditable

Per-server, per-user processing state in a dedicated database. Every action traceable.

Compliant

Storage limitation, right to erasure, regional retention – enforced by design.

Evolution 06 / 21

From WorkForce Anonymizer to Privacy Guard.

Same proven engine – re-architected for enterprise deployments and modern compliance demands.

Predecessor

WorkForce Anonymizer

  • XML-only configuration
  • Single-server scope
  • One pipeline – retention and sync coupled
  • File-based state, no central coordination
  • Limited per-server overrides
How it works 07 / 21

Three concepts run the whole product.

Build a retention policy once with these three primitives. Privacy Guard does the rest.

// when
Schedule
CRON-driven

Each processing server has its own schedule. Run nightly at 02:00, weekly during off-peak, or per regional timezone in multi-server deployments.

// who
Criteria
Selection rules

Rules that produce a list of personnel records. Six types cover every realistic selection: flagged, partitioned, by personnel type, deleted, anonymized, or none.

// what
Processors
Actions

What to do to the selected records. Anonymize the audit log, delete activity entries, generate a CrossFire import to rewrite the personnel record, sync last-badge dates.

A single criterion can feed multiple processors. A single processor can run on the union of multiple criteria.

Criteria – who 09 / 21

Five ways to select the right people.

FLAGGED USERS

Operator-flagged. Selects personnel whose UDF checkbox is ticked. Used for one-off, right-to-erasure requests handled by a security operator.

PARTITIONED USERS

By partition. Selects everyone in a named C·CURE partition. Optional filters: last-modified threshold, days-inactive, completion UDF.

USERS BY TYPE

By personnel type. All visitors, all contractors, all employees – selected by Id or Name with the same optional filters as partitions.

DELETED USERS BY AUDIT

From the audit log. Anyone whose deletion is recorded in the SAS audit log since the last run. Drives the cleanup of orphaned records.

ANONYMIZED USERS

Already anonymized. Personnel whose GUID has been rewritten to the canonical anonymized value. Used for post-anonymization mop-up.

Processors – what 10 / 21

Six actions to remediate at scale.

GXML · GenerateImportFile

Anonymize the record

Produces a CrossFire XML import that rewrites the personnel and credential rows on the SAS – propagated across MAS-SAS sync.

AAUD · AnonymizeAuditLog

Strip identity from audit

Replaces personnel names in audit entries and clears field-level audit detail. The audit trail stays intact – the person is no longer identifiable.

AACT · AnonymizeActivityLog

Strip identity from activity

Replaces names in activity journal entries while preserving the events. You still see that a door opened – you no longer know by whom.

DACT · DeleteActivityLog

Delete activity entries

Removes all activity journal entries for the supplied users – ideal for visitor cleanups and short-retention groups.

DALD · DeleteActivityLogByDays

Rolling-window delete

Removes activity journal entries older than DaysThreshold for the supplied users. The classic "keep 30 days, delete the rest" rule.

LBD · SyncLastBadgeDate

Cross-server inactivity

Maintains a complete last-badge timestamp per person on the MAS so days-inactive criteria work correctly across every SAS.

A typical pipeline · Linking criteria to processors 11 / 21

A single selection rule fans out into multiple actions.

Criterion

FlaggedUsers

A UDF on the personnel record.

Anonymize this record

Checked by an operator in the C·CURE Client.

→ 1 selection rule
01
GXML · GenerateImportFile

Anonymization template → CrossFire import

Renders the anonymization template into a CrossFire XML import – rewrites the personnel record on the SAS.

02
AACT · AnonymizeActivityLog

Strip cardholder name from activity

Strips the cardholder's name from Activity Journal entries – events remain for statistics, identity does not.

03
AAUD · AnonymizeAuditLog

Replace names in audit log

Replaces personnel names in Audit Log entries and clears field-level audit detail.

One to many One criterion can feed several processors; one processor can run on the union of several criteria.

Part two · Use cases 12 / 21

Five scenarios.

Here are 5 sample scenarios that demonstrate how a Privacy Tool can help organizations protect sensitive personal data within Access Control.

Use case 1 – Inactive personnel 13 / 21

Two years without a badge swipe – anonymize them.

Personnel who haven't badged in 24 months are former employees, departed contractors, or visitors who never returned. Keep them on file and you carry the privacy exposure for no business value.

// Criterion
PartitionedUsers
PartitionAll Personnel DaysInactive730 CompletedFieldAnonymized
// Processors
→ rewrite recordGenerateImportFile → audit logAnonymizeAuditLog → activity logAnonymizeActivityLog
Compliance outcome

Two-year storage limitation, enforced automatically – with the historical record preserved for statistics.

730 days
Inactivity threshold
0 manual
SQL scripts to run
Use case 3 – Audit trail 15 / 21

Keep the audit trail. Remove the identity.

Audit and activity logs are valuable – for forensics, for statistics, for proving an event happened. They become a liability only when they still name a person who is no longer there.

// Criterion
PartitionedUsers
PartitionFormer Employees
// Processors
→ audit logAnonymizeAuditLog → activity logAnonymizeActivityLog
// Effect
name→ GUID events kept100%
Compliance outcome

Every door event and every operator action preserved – none of it tied to a named person who is no longer with you.

100% events
Preserved for analysis
0 PII
Remaining in logs
Use case 4 – On-demand erasure 16 / 21

A checkbox for the right to be forgotten.

GDPR Article 17 gives data subjects the right to erasure on request. Your operator opens the personnel record, ticks one UDF, saves. Next cycle, that person is anonymized end-to-end.

// Criterion
FlaggedUsers
FlagFieldAnonymize this record CompletedFieldHas been anonymized
// Processors
→ rewrite recordGenerateImportFile → audit logAnonymizeAuditLog → activity logAnonymizeActivityLog
Compliance outcome

From data-subject request to full anonymization in one operator action – and a single processing cycle.

1 click
Operator action
≤ 24 h
To full erasure
Use case 5 – Regional policies 17 / 21

Different region. Different retention. Same engine.

Global deployments mean diverging rules: EU sites under GDPR, US sites under CCPA, regional works-council agreements on top. Apply per-partition policies side by side without forking configuration.

// SAS EU
EU – Brussels
DaysInactive 365 → anonymize
// SAS US
US – Chicago
DaysInactive 730 → anonymize
// SAS APAC
APAC – Singapore
DaysInactive 180 → delete

All sharing one admin client.

Compliance outcome

Every region runs its own retention policy, audited centrally, with no per-site SQL or scripting.

N regions
Independent policies
1 console
Central administration
What you get 19 / 21

Compliance outcomes, not configuration files.

01

A documented retention policy

Defined in the admin client. Versioned in the PrivacyGuard database. Auditable on demand by your DPO.

02

Automated enforcement

CRON-scheduled per server. Per-region timezones. Fail-fast with no half-applied policy.

03

An audit trail of every action

Per-user, per-server processing state. Diagnostic views to show exactly what was done, when, and where.

04

Faster data-subject responses

One UDF tick, one cycle. Erasure requests handled in 24 hours instead of weeks.

Get started 21 / 21

Make compliance
the default, not the deadline.

Request a demo, a temporary license for your pilot, or a quote for production. Most licenses are issued within 24 hours during business days.

Demo & quotes
encodelabs.be
License desk
support / registration
Turnaround
≤ 24 h business days