refactor(admin): split vvt-baseline-catalog into domain barrel
Extracted 630-LOC monolith into 6 domain files (all <200 LOC) plus a 29-line barrel re-exporting everything for zero breaking-change impact. Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
This commit is contained in:
65
admin-compliance/lib/sdk/vvt-baseline-catalog/other.ts
Normal file
65
admin-compliance/lib/sdk/vvt-baseline-catalog/other.ts
Normal file
@@ -0,0 +1,65 @@
|
||||
/**
|
||||
* VVT Baseline-Katalog — Sonstige (Other)
|
||||
*/
|
||||
|
||||
import type { BaselineTemplate } from './types'
|
||||
|
||||
export const OTHER_VVT_TEMPLATES: BaselineTemplate[] = [
|
||||
{
|
||||
templateId: 'other-videokonferenz',
|
||||
businessFunction: 'other',
|
||||
name: 'Videokonferenzen',
|
||||
description: 'Durchfuehrung von Video-Meetings und Online-Besprechungen',
|
||||
purposes: ['Interne Kommunikation', 'Kundeninteraktion', 'Remote-Arbeit'],
|
||||
legalBases: [
|
||||
{ type: 'LEGITIMATE_INTEREST', description: 'Geschaeftliche Kommunikation', reference: 'Art. 6 Abs. 1 lit. f DSGVO' },
|
||||
{ type: 'CONTRACT', description: 'Arbeitsvertrag (bei Mitarbeitern)', reference: 'Art. 6 Abs. 1 lit. b DSGVO' },
|
||||
],
|
||||
dataSubjectCategories: ['EMPLOYEES', 'CUSTOMERS', 'BUSINESS_PARTNERS'],
|
||||
personalDataCategories: ['NAME', 'CONTACT', 'PHOTO_VIDEO', 'IP_ADDRESS', 'COMMUNICATION_DATA'],
|
||||
recipientCategories: [
|
||||
{ type: 'PROCESSOR', name: 'Videokonferenz-Anbieter' },
|
||||
],
|
||||
retentionPeriod: { description: 'Keine dauerhafte Speicherung von Meetings (sofern nicht aufgezeichnet)', deletionProcedure: 'Aufzeichnungen nach Verwendungszweck loeschen' },
|
||||
tomDescription: 'Ende-zu-Ende-Verschluesselung, Warteraum, Passwortschutz, Aufnahme nur mit Einwilligung',
|
||||
structuredToms: {
|
||||
accessControl: ['Meeting-Passwort', 'Warteraum', 'Host-Kontrolle'],
|
||||
confidentiality: ['TLS / E2E-Verschluesselung'],
|
||||
integrity: ['Teilnehmerliste'],
|
||||
availability: ['Redundante Infrastruktur'],
|
||||
separation: ['Separate Meeting-Raeume'],
|
||||
},
|
||||
typicalSystems: ['Jitsi', 'Zoom', 'Teams', 'Google Meet'],
|
||||
protectionLevel: 'LOW',
|
||||
dpiaRequired: false,
|
||||
tags: ['kommunikation', 'video', 'meeting'],
|
||||
},
|
||||
{
|
||||
templateId: 'other-besuchermanagement',
|
||||
businessFunction: 'other',
|
||||
name: 'Besuchermanagement',
|
||||
description: 'Erfassung und Verwaltung von Besuchern am Firmenstandort',
|
||||
purposes: ['Zutrittskontrolle', 'Sicherheit', 'Nachverfolgung'],
|
||||
legalBases: [
|
||||
{ type: 'LEGITIMATE_INTEREST', description: 'Gebaeudesicherheit', reference: 'Art. 6 Abs. 1 lit. f DSGVO' },
|
||||
],
|
||||
dataSubjectCategories: ['VISITORS'],
|
||||
personalDataCategories: ['NAME', 'CONTACT', 'PHOTO_VIDEO'],
|
||||
recipientCategories: [
|
||||
{ type: 'INTERNAL', name: 'Empfang / Sicherheit' },
|
||||
],
|
||||
retentionPeriod: { duration: 30, durationUnit: 'DAYS', description: '30 Tage nach Besuch', deletionProcedure: 'Automatische Loeschung' },
|
||||
tomDescription: 'Besucherausweise, Begleitpflicht, zeitlich begrenzter Zugang',
|
||||
structuredToms: {
|
||||
accessControl: ['Besucherausweise', 'Begleitpflicht'],
|
||||
confidentiality: ['Besucherliste nicht oeffentlich einsehbar'],
|
||||
integrity: ['Besuchsprotokoll'],
|
||||
availability: ['Papier-Backup fuer Besucherliste'],
|
||||
separation: ['Besucherbereich getrennt'],
|
||||
},
|
||||
typicalSystems: ['Besuchermanagementsystem', 'Zutrittskontrollsystem'],
|
||||
protectionLevel: 'LOW',
|
||||
dpiaRequired: false,
|
||||
tags: ['besucher', 'zutritt', 'empfang'],
|
||||
},
|
||||
]
|
||||
Reference in New Issue
Block a user