dms: USAGE auf audit_log_id_seq fuer nexarch_app (Migration 0036), Test mit Schema-Rechten
CI / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (pull_request) Canceled after 0s
CI / Core-Modul (Build/Vet/Test) (push) Canceled after 0s
CI / DMS Security-Test-Gate (AC5, Merge-Gate) (push) Canceled after 0s
CI / Connect Security-Test-Gate (QA-01 AC4, 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 / Web-Barrierefreiheitspruefung (axe, Tastatur, Reflow, Textabstaende) (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 / Connect Security-Test-Gate (QA-01 AC4, 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
Supply-Chain-Scan (Go) / govulncheck (push) Canceled after 0s
Supply-Chain-Scan (Go) / govulncheck (pull_request) Canceled after 0s
Supply-Chain-Scan (npm) / npm-audit (pull_request) Canceled after 0s
Core-Pflichttest-Gate / pflichttest-gate (pull_request) Canceled after 0s
Core-Schnittstellen-Vertragstests / contract-tests (pull_request) Canceled after 0s
DB-Integrationstests / db-tests (pull_request) Canceled after 0s
RBAC-Rollenhierarchie-Pflichtgate / rbac-policy-invariant (pull_request) Canceled after 0s

Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
This commit is contained in:
patrickandClaude Sonnet 5.5 committed 2026-10-28 10:28:10 +01:00
1 parent 184a219c8a
commit 0d1721f169
3 files changed
+10 -1

No files matched your search

+3 -1
View File
@@ -28,7 +28,7 @@ func setupAppendOnlyTest(t *testing.T) (*pgxpool.Pool, func()) {
}
ctx := context.Background()
pool := testdb.Pool(t, adminDSN)
pool, schema := testdb.PoolWithSchema(t, adminDSN, nil)
if _, err := pool.Exec(ctx, `
CREATE TABLE IF NOT EXISTS audit_log (
id BIGSERIAL PRIMARY KEY, occurred_at TIMESTAMPTZ NOT NULL DEFAULT now(), actor TEXT NOT NULL,
@@ -56,6 +56,8 @@ func setupAppendOnlyTest(t *testing.T) (*pgxpool.Pool, func()) {
REVOKE ALL ON audit_log FROM PUBLIC;
REVOKE ALL ON audit_log FROM nexarch_app;
GRANT INSERT, SELECT ON audit_log TO nexarch_app;
GRANT USAGE ON SEQUENCE audit_log_id_seq TO nexarch_app;
GRANT USAGE ON SCHEMA `+schema+` TO nexarch_app;
`); err != nil {
t.Fatalf("schema: %v", err)
}
@@ -0,0 +1 @@
REVOKE USAGE ON SEQUENCE audit_log_id_seq FROM nexarch_app;
@@ -0,0 +1,6 @@
-- Migration 0013 gibt nexarch_app nur INSERT/SELECT auf audit_log. Eine
-- Login-Rolle, die Mitglied von nexarch_app, aber nicht Tabelleneigentuemerin
-- ist, braucht fuer die BIGSERIAL-Spalte id zusaetzlich USAGE auf die
-- Sequenz; sonst scheitert jeder INSERT mit "permission denied for sequence
-- audit_log_id_seq".
GRANT USAGE ON SEQUENCE audit_log_id_seq TO nexarch_app;