-
Notifications
You must be signed in to change notification settings - Fork 1
policies_data_classification
Stand: 5. Dezember 2025
Version: 1.0.0
Kategorie: Policies
Version: 1.0
Datum: 2025-11-27
Status: Aktiv
Klassifizierung: Intern
Nächste Überprüfung: 2026-05-27
Diese Richtlinie definiert die Klassifizierung, Handhabung und den Schutz von Daten innerhalb der ThemisDB-Infrastruktur. Sie stellt sicher, dass alle Daten entsprechend ihrer Sensitivität behandelt werden.
- Alle in ThemisDB gespeicherten Daten
- Alle Daten in Transit (API, Replikation)
- Backup- und Archivdaten
- Metadaten und Audit-Logs
- Konfigurationsdaten
| Standard | Kontrolle | Beschreibung |
|---|---|---|
| ISO 27001 | A.8.2 | Information Classification |
| BSI C5 | AM-01/02 | Asset Management |
| DSGVO | Art. 5, 32 | Datenschutzgrundsätze |
| NIST SP 800-53 | RA-2, SC-16 | Security Categorization |
| PCI DSS | 3.1-3.7 | Protect Cardholder Data |
ThemisDB verwendet ein 4-stufiges Klassifizierungsschema:
┌─────────────────────────────────────────────────────────────┐
│ STRENG VERTRAULICH │
│ Höchste Sensitivität - Schwerwiegende Auswirkungen │
├─────────────────────────────────────────────────────────────┤
│ VERTRAULICH │
│ Hohe Sensitivität - Erhebliche Auswirkungen │
├─────────────────────────────────────────────────────────────┤
│ INTERN │
│ Moderate Sensitivität - Geringe Auswirkungen │
├─────────────────────────────────────────────────────────────┤
│ ÖFFENTLICH │
│ Keine Sensitivität - Keine Auswirkungen │
└─────────────────────────────────────────────────────────────┘
Definition: Daten, deren Offenlegung schwerwiegende Schäden verursachen würde.
Beispiele:
- Kryptographische Schlüssel (Master Keys, KEK)
- Authentifizierungsgeheimnisse (Tokens, Passwörter)
- HSM/Vault-Zugangsdaten
- Root-Zertifikate und Private Keys
- Sicherheitskonfigurationen
Schutzanforderungen:
| Aspekt | Anforderung |
|---|---|
| Verschlüsselung at Rest | AES-256-GCM (HSM-geschützt) |
| Verschlüsselung in Transit | TLS 1.3, mTLS |
| Zugriff | Need-to-know, Admin only |
| Audit | Vollständige Protokollierung |
| Backup | Verschlüsselt, HSM-geschützt |
| Aufbewahrung | Nach Ablauf sicher löschen |
| Druck/Export | Verboten |
Definition: Geschäftskritische Daten mit erheblichem Schadenpotenzial.
Beispiele:
- Personenbezogene Daten (PII)
- Gesundheitsdaten (PHI)
- Finanzdaten
- Geschäftsgeheimnisse
- Kundendaten
- Audit-Logs mit sensitiven Informationen
Schutzanforderungen:
| Aspekt | Anforderung |
|---|---|
| Verschlüsselung at Rest | AES-256-GCM |
| Verschlüsselung in Transit | TLS 1.3 |
| Zugriff | RBAC (Analyst+) |
| Audit | Protokollierung aller Zugriffe |
| Backup | Verschlüsselt |
| Aufbewahrung | Gemäß Retention Policy |
| Druck/Export | Genehmigung erforderlich |
Definition: Interne Daten ohne erhebliches Schadenpotenzial bei Offenlegung.
Beispiele:
- Interne Dokumentation
- Nicht-sensitive Konfigurationen
- Aggregierte Statistiken
- System-Logs (ohne PII)
- Performance-Metriken
Schutzanforderungen:
| Aspekt | Anforderung |
|---|---|
| Verschlüsselung at Rest | Optional (empfohlen) |
| Verschlüsselung in Transit | TLS 1.2+ |
| Zugriff | Alle authentifizierten Benutzer |
| Audit | Standard-Logging |
| Backup | Standard |
| Aufbewahrung | Standard |
| Druck/Export | Erlaubt |
Definition: Daten, die öffentlich zugänglich sind oder sein dürfen.
Beispiele:
- Öffentliche Dokumentation
- API-Spezifikationen
- Open-Source-Code
- Marketing-Materialien
- Veröffentlichte Release Notes
Schutzanforderungen:
| Aspekt | Anforderung |
|---|---|
| Verschlüsselung at Rest | Nicht erforderlich |
| Verschlüsselung in Transit | TLS empfohlen |
| Zugriff | Uneingeschränkt |
| Audit | Optional |
| Backup | Standard |
| Aufbewahrung | Unbegrenzt |
| Druck/Export | Frei |
ThemisDB unterstützt automatische Datenklassifizierung basierend auf:
# Beispiel: Collection-Schema mit Klassifizierung
{
"collection": "users",
"classification": "CONFIDENTIAL",
"fields": {
"email": {
"type": "string",
"classification": "CONFIDENTIAL",
"pii": true
},
"password_hash": {
"type": "string",
"classification": "RESTRICTED",
"sensitive": true
},
"username": {
"type": "string",
"classification": "INTERNAL"
}
}
}| Datentyp | Standard-Klassifizierung | Verschlüsselung | Maskierung |
|---|---|---|---|
| Master Keys | STRENG VERTRAULICH | HSM | N/A |
| API Tokens | STRENG VERTRAULICH | AES-256 | Vollständig |
| Passwort-Hashes | STRENG VERTRAULICH | Argon2id | N/A |
| E-Mail-Adressen | VERTRAULICH | AES-256 | Partiell |
| Telefonnummern | VERTRAULICH | AES-256 | Partiell |
| Namen | VERTRAULICH | AES-256 | Optional |
| IP-Adressen | VERTRAULICH | Optional | Optional |
| Audit-Logs | VERTRAULICH | AES-256 | N/A |
| Session-Daten | VERTRAULICH | AES-256 | N/A |
| Konfigurationen | INTERN | Optional | N/A |
| Metriken | INTERN | Nein | N/A |
| Dokumentation | ÖFFENTLICH | Nein | N/A |
Folgende Daten erfordern erhöhten Schutz:
- Gesundheitsdaten → STRENG VERTRAULICH
- Biometrische Daten → STRENG VERTRAULICH
- Genetische Daten → STRENG VERTRAULICH
- Religiöse Überzeugungen → VERTRAULICH
- Politische Meinungen → VERTRAULICH
- Gewerkschaftszugehörigkeit → VERTRAULICH
- Sexuelle Orientierung → STRENG VERTRAULICH
Alle Daten müssen gemäß ihrer Klassifizierung gekennzeichnet werden:
Dokumente:
[STRENG VERTRAULICH] - Nur für autorisierte Personen
[VERTRAULICH] - Vertraulich behandeln
[INTERN] - Nur für internen Gebrauch
[ÖFFENTLICH] - Öffentlich zugänglich
Datenbank-Dokumente:
{
"_meta": {
"classification": "CONFIDENTIAL",
"data_owner": "security-team",
"retention_until": "2027-01-01",
"pii_fields": ["email", "phone"]
},
// ... Daten
}| Klassifizierung | Speicherort | Verschlüsselung | Zugriffskontrolle |
|---|---|---|---|
| STRENG VERTRAULICH | HSM/Vault | AES-256-GCM (HSM) | MFA + Approval |
| VERTRAULICH | Encrypted Volume | AES-256-GCM | RBAC (Analyst+) |
| INTERN | Standard Storage | Optional | RBAC (Readonly+) |
| ÖFFENTLICH | Standard Storage | Nein | None |
| Klassifizierung | Internes Netzwerk | Externes Netzwerk | API |
|---|---|---|---|
| STRENG VERTRAULICH | mTLS + Encryption | Verboten | mTLS + Signed |
| VERTRAULICH | TLS 1.3 | TLS 1.3 + VPN | TLS 1.3 |
| INTERN | TLS 1.2+ | TLS 1.3 | TLS 1.2+ |
| ÖFFENTLICH | Optional | Optional | Optional |
| Klassifizierung | Methode | Zertifizierung |
|---|---|---|
| STRENG VERTRAULICH | Crypto-Shredding + Secure Erase | Erforderlich |
| VERTRAULICH | Secure Erase (DoD 5220.22-M) | Empfohlen |
| INTERN | Standard Delete | Nicht erforderlich |
| ÖFFENTLICH | Standard Delete | Nicht erforderlich |
| Klassifizierung | Admin | Operator | Analyst | Readonly |
|---|---|---|---|---|
| STRENG VERTRAULICH | ✅ (mit Approval) | ❌ | ❌ | ❌ |
| VERTRAULICH | ✅ | ✅ (eingeschränkt) | ✅ (lesend) | ❌ |
| INTERN | ✅ | ✅ | ✅ | ✅ |
| ÖFFENTLICH | ✅ | ✅ | ✅ | ✅ |
┌─────────────────────────────────────────────┐
│ Datenzugriff erlaubt wenn: │
├─────────────────────────────────────────────┤
│ 1. Benutzer hat entsprechende Rolle │
│ 2. Benutzer hat Need-to-Know │
│ 3. Zugriff ist für Aufgabe erforderlich │
│ 4. Genehmigung vorhanden (bei RESTRICTED) │
└─────────────────────────────────────────────┘
| Anforderung | Umsetzung |
|---|---|
| Minimierung | Nur erforderliche Daten speichern |
| Zweckbindung | Dokumentierte Verarbeitungszwecke |
| Speicherbegrenzung | Retention Policy |
| Richtigkeit | Regelmäßige Validierung |
| Integrität | Signierte Audit-Logs |
| Vertraulichkeit | Verschlüsselung |
| Recht | Umsetzung in ThemisDB |
|---|---|
| Auskunft (Art. 15) | Data Export API |
| Berichtigung (Art. 16) | Standard Update |
| Löschung (Art. 17) | Hard Delete mit Audit |
| Einschränkung (Art. 18) | Status-Flag |
| Datenübertragbarkeit (Art. 20) | JSON/CSV Export |
| Widerspruch (Art. 21) | Consent Management |
// C++ Implementation
class Collection {
DataClassification classification;
EncryptionPolicy encryption_policy;
RetentionPolicy retention_policy;
bool requiresEncryption() const {
return classification >= DataClassification::CONFIDENTIAL;
}
bool requiresAudit() const {
return classification >= DataClassification::INTERNAL;
}
};// Field-Level Encryption for PII
class FieldEncryption {
static std::string encrypt_pii(
const std::string& value,
DataClassification level) {
switch(level) {
case RESTRICTED:
return hsm_encrypt(value);
case CONFIDENTIAL:
return aes256_encrypt(value);
default:
return value;
}
}
};// Classification-aware Query
class QueryExecutor {
ResultSet execute(Query query, UserContext user) {
// Filter results based on user's clearance
auto filtered = filterByClassification(
results,
user.getClearanceLevel()
);
// Mask sensitive fields
return maskSensitiveFields(filtered, user);
}
};| Ereignis | Log-Level | Retention |
|---|---|---|
| Klassifizierung geändert | CRITICAL | 7 Jahre |
| Zugriff auf RESTRICTED | WARNING | 3 Jahre |
| Zugriff auf CONFIDENTIAL | INFO | 1 Jahr |
| Datenexport | INFO | 3 Jahre |
| Löschung | CRITICAL | 7 Jahre |
ThemisDB kann PII automatisch erkennen:
pii_detection:
enabled: true
patterns:
- name: email
regex: "^[\\w.-]+@[\\w.-]+\\.\\w+$"
classification: CONFIDENTIAL
- name: credit_card
regex: "^\\d{4}[- ]?\\d{4}[- ]?\\d{4}[- ]?\\d{4}$"
classification: RESTRICTED
- name: ssn
regex: "^\\d{3}-\\d{2}-\\d{4}$"
classification: RESTRICTEDAusnahmen von dieser Richtlinie erfordern:
- Antrag: Schriftliche Begründung
- Risikobewertung: Security-Team-Review
- Genehmigung: CISO/DPO-Freigabe
- Dokumentation: Ausnahme-Register
- Befristung: Max. 12 Monate
- Review: Regelmäßige Überprüfung
| Schweregrad | Verstoß | Eskalation |
|---|---|---|
| Kritisch | Offenlegung RESTRICTED | CISO + Management sofort |
| Hoch | Offenlegung CONFIDENTIAL | Security-Team sofort |
| Mittel | Falsche Klassifizierung | Data Owner binnen 24h |
| Niedrig | Fehlende Kennzeichnung | IT-Team binnen 7 Tage |
| Zielgruppe | Schulung | Häufigkeit |
|---|---|---|
| Alle Mitarbeiter | Grundlagen Datenklassifizierung | Jährlich |
| Entwickler | Secure Coding & Data Handling | Halbjährlich |
| Admins | Advanced Classification | Halbjährlich |
| Management | Executive Awareness | Jährlich |
- Klassifizierungsschema verstehen
- Richtige Kennzeichnung
- Handhabungsregeln
- Meldepflichten bei Verstößen
- Praktische Übungen
| Aktivität | Häufigkeit | Verantwortlich |
|---|---|---|
| Richtlinien-Review | Halbjährlich | CISO |
| Klassifizierungs-Audit | Quartalsweise | Data Governance |
| Datenbestandsprüfung | Jährlich | Data Owners |
| Compliance-Assessment | Jährlich | Compliance Team |
| Version | Datum | Änderung | Autor |
|---|---|---|---|
| 1.0 | 2025-11-27 | Erstversion | Security Team |
╔═══════════════════════════════════════════════════════════════╗
║ DATENKLASSIFIZIERUNG - KURZREFERENZ ║
╠═══════════════════════════════════════════════════════════════╣
║ 🔴 STRENG VERTRAULICH ║
║ → Schlüssel, Passwörter, Gesundheitsdaten ║
║ → HSM-Verschlüsselung, Admin-only, kein Export ║
╠═══════════════════════════════════════════════════════════════╣
║ 🟠 VERTRAULICH ║
║ → PII, Finanzdaten, Kundendaten ║
║ → AES-256 Verschlüsselung, RBAC, Audit-Logs ║
╠═══════════════════════════════════════════════════════════════╣
║ 🟡 INTERN ║
║ → Interne Dokumente, Configs, Metriken ║
║ → TLS in Transit, Standard-Zugriff ║
╠═══════════════════════════════════════════════════════════════╣
║ 🟢 ÖFFENTLICH ║
║ → Dokumentation, Marketing, Open Source ║
║ → Keine Einschränkungen ║
╚═══════════════════════════════════════════════════════════════╝
┌─────────────────────┐
│ Würde Offenlegung │
│ schweren Schaden │
│ verursachen? │
└─────────┬───────────┘
│
┌───────────────┴───────────────┐
│ JA │ NEIN
▼ ▼
┌─────────────────┐ ┌─────────────────┐
│ Enthält Master │ │ Enthält PII, │
│ Keys, Secrets? │ │ Finanzdaten? │
└────────┬────────┘ └────────┬────────┘
│ │
┌───────┴───────┐ ┌───────┴───────┐
│ JA │ NEIN │ JA │ NEIN
▼ ▼ ▼ ▼
┌─────────┐ ┌─────────┐ ┌─────────┐ ┌─────────────┐
│STRENG │ │STRENG │ │VERTRAU- │ │ Nur für │
│VERTRAU- │ │VERTRAU- │ │LICH │ │ internen │
│LICH │ │LICH │ │ │ │ Gebrauch? │
└─────────┘ └─────────┘ └─────────┘ └──────┬──────┘
│
┌───────┴───────┐
│ JA │ NEIN
▼ ▼
┌─────────┐ ┌───────────┐
│ INTERN │ │ ÖFFENTLICH│
└─────────┘ └───────────┘
Genehmigt von:
| Rolle | Name | Datum | Unterschrift |
|---|---|---|---|
| CISO | _________________ | __________ | _____________ |
| DPO | _________________ | __________ | _____________ |
| CTO | _________________ | __________ | _____________ |
- Architecture-ACCESS-MODEL-IMPLEMENTATION-SUMMARY
- Architecture-ADR-003-pg-dump-sql-parser
- Architecture-BASEENTITY-PRINCIPLE
- Architecture-CACHE-STORAGE-INTEGRATION
- Architecture-CMAKE-ARCHITECTURE
- Architecture-CMAKE-FLAGS-REFERENCE
- Architecture-CMAKE-MODULAR-ARCHITECTURE
- Architecture-CONCERNS-ARCHITECTURE-DIAGRAM
- Architecture-CONCERNS-IMPLEMENTATION-SUMMARY
- Architecture-CONTENT-MODEL
- Architecture-COPILOT-THEMISDB-GRAPH-RAG-BACKEND-ARCHITECTURE
- Architecture-CRYPTO-AND-KEYS
- Architecture-FEATURE-FLAGS-REFERENCE
- Architecture-GPU-ARCHITECTURE-REVIEW-TEMPLATE
- Architecture-HTTP-SHUTDOWN-HARDENING
- Architecture-MIGRATION-GUIDE-CONCERNS
- Architecture-MIGRATION-GUIDE-v13-v14
- Architecture-MODULARIZATION-GUIDE
- Architecture-MODULAR-ARCHITECTURE-ROADMAP
- Architecture-MODULE-ARCHITECTURE-INDEX
- Architecture-P1D01-ISSMPLUGIN-DESIGN-REVIEW
- Architecture-P1-D01-ISSMPLUGIN-DESIGN-REVIEW
- Architecture-P1-D08-MAMBA-GOVERNANCE-CONTRACT
- Architecture-P1-P2-IMPLEMENTATION-COMPLETION-INDEX
- Architecture-PHASE0-COMPLETION-ASSESSMENT
- Architecture-PHASE3-QUERYENGINE-DI-ARCHITECTURE
- Architecture-PHASE4-INDEX-MANAGER-DI
- Architecture-POSTGRESQL-WIRE-PROTOCOL
- Architecture-QUERYENGINE-IMPLEMENTATION-GUIDE
- Architecture-QUERY-SCHEDULING
- Architecture-RAFT-CONSENSUS-DESIGN
- Architecture-README
- Architecture-README-SSM-HYBRID-IMPLEMENTATION
- Architecture-REFACTORING-SUMMARY
- Architecture-RESOURCE-POOLING
- Architecture-SOURCE-DIRECTORY-GUIDE
- Architecture-THEMIS-CORE-GUIDE
- Architecture-UNIFIED-ACCESS-MODEL
- Architecture-WAL-GRPC-MTLS-CONFIGURATION
- Architecture-WIRE-PROTOCOL-RETRY
- Architecture-boltzmann-observability-draft
- Architecture-experimental-logarithmic-vector-storage
- Architecture-llm-wiki-mvp-adr
- Architecture-rewrite-engine-architecture
- Architecture-rope-api-architecture
- Architecture-ssm-gguf-mamba-status
- Architecture-ssm-hybrid-analysis
- Architecture-ssm-hybrid-rollout-plan
- Architecture-ssm-plugin-interface-design-review
- Architecture-transaction-coordinators
- Architecture-wiki-secondary-index
- Architecture-wire-protocol
- Governance-DISABLED-STUB-POLICY
- Governance-DOCS-PR-POLICY
- Governance-GA-PROMOTION-SIGN-OFF
- Governance-GITHUB-MILESTONES-SETUP
- Governance-MATURITY-CLAIM-VERIFICATION-CHECKLIST
- Governance-MATURITY-EVIDENCE-REGISTRY
- Governance-MERGE-GATE-BOT-CONFIG
- Governance-MERGE-GATE-STATUS-LIVE
- Governance-PHASE3-ENFORCEMENT-RUNBOOK
- Governance-PHASE-1-CLOSURE-REPORT
- Governance-PHASE-CLOSURE-POLICY
- Governance-PHASE-DEPENDENCY-GRAPH
- Governance-PLUGIN-SUBMODULE-ROLLBACK
- Governance-PRODUCTION-READY-2026-DELIVERY-PLAN
- Governance-PR-VERSION-TARGETING
- Governance-PR-VERSION-TARGETING-BACKFILL
- Governance-QUERY-MODULE-STATUS
- Governance-README
- Governance-RELEASE-PROMOTION-GATE-POLICY
- Governance-RELEASE-VALIDATION-CHECKLIST
- Governance-SECURITY-MODULE-5671-EVIDENCE-SUMMARY
- Governance-SHARDING-P6-RESIDUAL-RISK-ACCEPTANCE
- Governance-SOURCECODE-COMPLIANCE-GOVERNANCE
- Governance-UPDATES-DEVELOPMENT-STATUS-SIGN-OFF
- Governance-WAVE-C-IMPLEMENTATION-COMPLETE
- Module-acceleration-Roadmap
- Module-access-model-Roadmap
- Module-ai-Roadmap
- Module-analytics-Roadmap
- Module-api-Roadmap
- Module-aql-Roadmap
- Module-auth-Roadmap
- Module-base-Roadmap
- Module-cache-Roadmap
- Module-cdc-Roadmap
- Module-chaos-Roadmap
- Module-chimera-Roadmap
- Module-config-Roadmap
- Module-content-Roadmap
- Module-core-Roadmap
- Module-distributed-knowledge-Roadmap
- Module-distributed-tensor-Roadmap
- Module-document-Roadmap
- Module-ethics-ai-Roadmap
- Module-evaluation-Roadmap
- Module-execution-Roadmap
- Module-exporters-Roadmap
- Module-failover-Roadmap
- Module-geo-Roadmap
- Module-governance-Roadmap
- Module-gpu-Roadmap
- Module-graph-Roadmap
- Module-image-analysis-Roadmap
- Module-importers-Roadmap
- Module-index-Roadmap
- Module-ingestion-Roadmap
- Module-llama-cpp-Roadmap
- Module-llm-Roadmap
- Module-llm-streaming-Roadmap
- Module-llm-wiki-Roadmap
- Module-maintenance-Roadmap
- Module-metadata-Roadmap
- Module-network-Roadmap
- Module-observability-Roadmap
- Module-onnx-clip-Roadmap
- Module-performance-Roadmap
- Module-plugins-Roadmap
- Module-process-Roadmap
- Module-projects-Roadmap
- Module-prompt-engineering-Roadmap
- Module-query-Roadmap
- Module-rag-Roadmap
- Module-replication-Roadmap
- Module-retrieval-Roadmap
- Module-rpc-grpc-Roadmap
- Module-scheduler-Roadmap
- Module-scraper-Roadmap
- Module-search-Roadmap
- Module-security-Roadmap
- Module-server-Roadmap
- Module-sharding-Roadmap
- Module-stable-diffusion-Roadmap
- Module-storage-Roadmap
- Module-temporal-Roadmap
- Module-tensor-Roadmap
- Module-themis-Roadmap
- Module-timeseries-Roadmap
- Module-toolbox-Roadmap
- Module-training-Roadmap
- Module-transaction-Roadmap
- Module-updates-Roadmap
- Module-user-storage-encrypted-Roadmap
- Module-utils-Roadmap
- Module-vector-search-Roadmap
- Module-voice-Roadmap
- Module-whisper-Roadmap