INT-15: CMIS Auth-/Tenant-Scoping-Paritaet zur REST-API #95

Closed
patrick wants to merge 0 commits from feature/int-15-cmis-auth-tenant-scoping-paritaet-dms into integration/dms-gesamtstand
pull from: feature/int-15-cmis-auth-tenant-scoping-paritaet-dms
Owner

Basis enthaelt PR #93 (INT-09) und #92 (INT-01); der Diff zeigt deren Commits mit.

Aenderungen

  • authz.Guard kennt CMIS (Identitaet erzwungen, fail-closed); die eigene Identitaetspruefung im CMIS-Paket entfaellt.
  • Dokumentlisten eines Ordners filtern nach dem Aufrufer (vorher sah ein fremder Nutzer desselben Mandanten fremde Dokumenttitel, REST wie CMIS); Frontend sendet caller.

Pruefungen (Host 131)

  1. Fremdes Tenant-Dokument ueber CMIS wie REST abgewiesen: bestanden (401 anderer Mandant, 403 fremder Nutzer).
  2. Abgelaufenes Token wie REST abgelehnt: bestanden (19 CMIS-Routen x 4 Identitaeten). Widerrufenes Token: offen (Core IAM-17).
  3. Code-Review-Gate: keine eigene Auth-Logik in CMIS, per Test erzwungen: bestanden.

Weitere: gefaelschter caller/X-User-Id, Uebergangsmodus, Admin, Mandant aus Token statt Parametern; Wirksamkeit per Probe ohne Guard-Aenderung belegt. go test ./... gruen, gofmt leer, tsc sauber, vitest 139/139. 2 Fix-Iterationen. Protokoll: dms/docs/INT-15-PRUEFPROTOKOLL.md.

Kein Merge, kein Deploy.

🤖 Generated with Claude Code

Basis enthaelt PR #93 (INT-09) und #92 (INT-01); der Diff zeigt deren Commits mit. **Aenderungen** - `authz.Guard` kennt CMIS (Identitaet erzwungen, fail-closed); die eigene Identitaetspruefung im CMIS-Paket entfaellt. - Dokumentlisten eines Ordners filtern nach dem Aufrufer (vorher sah ein fremder Nutzer desselben Mandanten fremde Dokumenttitel, REST wie CMIS); Frontend sendet `caller`. **Pruefungen (Host 131)** 1. Fremdes Tenant-Dokument ueber CMIS wie REST abgewiesen: bestanden (401 anderer Mandant, 403 fremder Nutzer). 2. Abgelaufenes Token wie REST abgelehnt: bestanden (19 CMIS-Routen x 4 Identitaeten). Widerrufenes Token: offen (Core IAM-17). 3. Code-Review-Gate: keine eigene Auth-Logik in CMIS, per Test erzwungen: bestanden. Weitere: gefaelschter caller/X-User-Id, Uebergangsmodus, Admin, Mandant aus Token statt Parametern; Wirksamkeit per Probe ohne Guard-Aenderung belegt. `go test ./...` gruen, `gofmt` leer, `tsc` sauber, `vitest` 139/139. 2 Fix-Iterationen. Protokoll: `dms/docs/INT-15-PRUEFPROTOKOLL.md`. Kein Merge, kein Deploy. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
patrick added 17 commits 2026-09-21 00:37:02 +02:00
INT-01: rest-api v1 mit core-jwt-identitaet, openapi und einheitlichem fehlerformat
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
b44c2df15f
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
INT-01: imports, testkorrekturen, complete-status 200
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
06641331da
INT-01: qa02-gate prueft api-auth, betriebsdoku fuer identitaets-variablen
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
6151cbe2ed
INT-01: rechtematrix-test ueber alle dokumentendpunkte
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
83bf82ecc5
INT-01: gofmt
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
5274226d37
INT-01: pruefprotokoll
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
3a92535976
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
INT-09: cmis-kompatible schnittstelle (optional)
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
74f99a3e81
CMIS 1.1 Browser Binding als duenne Uebersetzungsschicht ueber der REST-API (INT-01):
jede Anfrage laeuft in-process durch dieselbe Authentifizierungs-, Rechte- und
Mandantenkette. Optional per NEXARCH_DMS_APP_CMIS_ENABLED. Neu in REST:
GET /documents/{id} und GET /folders/{id}.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
INT-09: test-inhalt je nutzer eindeutig (dublettenerkennung)
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
805e654b3a
INT-09: caller-spoofing-test, cmis-doku
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
52f7ee72b4
INT-09: API.md verweist auf CMIS, Dokument-Metadaten als Beispiel
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
5cbcaff85f
INT-09: gofmt
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
bdc567d071
INT-09: architekturtest, cmis nutzt nur standardbibliothek
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
56f6681109
INT-09: pruefprotokoll
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
4ec5998b4c
INT-15: identitaetspruefung fuer CMIS in den gemeinsamen Guard, Paritaetstests
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
237c1bd9fb
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
INT-15: cmd/app-Test prueft die Identitaet hinter dem gemeinsamen Guard
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
ab67330760
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
INT-15: Ordnerinhalte nur fuer den Eigentuemer der Dokumente (REST und CMIS)
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
cd85668e39
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
INT-15: cmis-schnittstelle-auth-tenant-scoping-paritaet-zur-rest-api
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
263e2e45fc
Pruefprotokoll und Dokumentation.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
patrick added 1 commit 2026-09-21 00:37:02 +02:00
INT-15: cmis-schnittstelle-auth-tenant-scoping-paritaet-zur-rest-api
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (push) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (push) Canceled after 0s
CI / Web (dms-browser) (push) Canceled after 0s
CI / Web (pdf-viewer) (push) Canceled after 0s
CI / Web (shl) (push) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (pull_request) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (pull_request) Canceled after 0s
CI / DMS-Modul (Lint/Build/Test/Coverage/Artefakt) (pull_request) Canceled after 0s
CI / DMS-Modul Supply-Chain-Scan (govulncheck) (pull_request) Canceled after 0s
CI / Web (dms-browser) (pull_request) Canceled after 0s
CI / Web (pdf-viewer) (pull_request) Canceled after 0s
CI / Web (shl) (pull_request) Canceled after 0s
263e2e45fc
Pruefprotokoll und Dokumentation.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
patrick closed this pull request 2026-09-25 23:31:00 +02:00

Pull request closed

This pull request cannot be reopened because the branch was deleted.
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: scripte/nexarch#95