Clone
1
Room Policies
Scrublord MacBad edited this page 2026-05-15 00:07:54 +02:00
Room Policies: Retention, Publication, Auto-Join
Status: ✅ Vollständig deployed
Konfiguration: apps/production/custom-configs/synapse-values.yaml
1. Message Retention
Alte Nachrichten automatisch löschen (Speicher sparen, DSGVO).
retention:
enabled: true
default_policy:
min_lifetime: 1d # Messages bleiben ≥1d
max_lifetime: 1y # Messages gelöscht nach 1 Jahr
media_retention:
local_media_lifetime: 365d # 1 Jahr
remote_media_lifetime: 90d # 90 Tage
redaction_retention_period: 7d # Gelöschte Messages noch 7d sichtbar
2. Room Publication Rules
Kontrollieren welche Rooms im öffentlichen Directory sichtbar sind.
room_list_publication_rules:
- user_id: "*" # Alle User
action: allow # dürfen ihre Rooms publishen
Alternativ (restrictiv): Nur Admins publishen
room_list_publication_rules:
- user_id: "@admin:axion1337.chat"
action: allow
- user_id: "*"
action: deny
3. Auto-Join Rooms
Neue User automatisch in bestimmte Rooms hinzufügen (Onboarding).
auto_join_rooms:
- "!announcements:axion1337.chat"
- "!rules:axion1337.chat"
auto_join_rooms_for_guests: false # Nur registered users
Room ID finden: Element Settings → Advanced → Room ID
Deployment
# Edit ConfigMap
kubectl apply -f apps/production/custom-configs/synapse-values.yaml
# Synapse neustarten
kubectl rollout restart deployment -n matrix matrix-stack-synapse
# Verify
kubectl logs -n matrix -l app.kubernetes.io/name=synapse | grep -i "retention\|publication"
Best Practices
Privater Server:
- max_lifetime: 1y (großzügig)
- action: allow (alle publishen)
- auto_join_rooms: announcements + rules
Öffentlicher Server (DSGWR):
- max_lifetime: 90d (kurz)
- action: deny (nur Admins)
- auto_join_rooms: [] (keine Zwangs-Rooms)
Weitere Details: Siehe Kapitel 5.