[VS-NfD] Restrict backup targets to an allowlist and allow remote targets to be disabled at deploy time #192
Labels
No Label
area:auth
area:docs
area:export
area:ops
area:storage
area:supply-chain
auth
backend
blocked
collab
deployment
docs
effort:L
effort:M
effort:S
frontend
plugins
qa
vs-nfd
vs-nfd:blocker
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: stwaidele/dorfteich#192
Loading…
Reference in New Issue
Block a user
No description provided.
Delete Branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Plan reference:
20-massnahmenplan.md-> Phase 2ADR: ADR 0026
Effort: M (2 AT)
Depends on: —
Context
A backup destination is an egress path for the full content of the
instance. In a VS zone the set of permissible destinations is decided by
the operator, not by whoever holds Site-Admin. Encryption stays out —
media protection is the platform's base function (ADR 0019).
Current state
backup.nextcloud.baseUrlinapps/api/src/settings/instance-settings.service.ts(validated as a URL,no host restriction), consumed via
apps/api/src/backup/backup-target.service.ts:3,65andapps/api/src/admin/backup-admin.service.ts:27,112,146.apps/backup/src/mirror.ts,ADR 0015, issue #84).
Acceptance criteria
permissible backup destination hosts; a value outside it is rejected
with a clear admin-visible error.
mirror — and the admin UI reflects that they are unavailable, not
merely unconfigured.
leaves only the local target; existing configured destination inside
the allowlist unaffected.
docs/architecture/operations.mdand the hardening guide (#227)document the "local only" reference configuration.
Out of scope
Application-side backup encryption (deliberately excluded, ADR 0019/0026)
and changes to the restore flow.
Delivered by PR #247 (
394d1c8), merged to main fast-forward (self-merge per Stefans go this session). CI run 487 green. NOTE for the next prod release: set BACKUP_ALLOWED_TARGETS in the prod .env on ONE and sync the stage composes, or the BASEL mirror stops (see Handoff release marker). Closing.