Zum Inhalt springen

AA_ROLE

Status: Entwurf · Quelle: Spec-Erweiterung RBAC/ACL · Spec-Kandidat: ja

Zweck

Benannte Sammlung von Permissions. Wird über AA_PRINCIPAL_ROLE an Identitäten/Gruppen zugewiesen und über AA_ROLE_PERMISSION mit konkreten Permissions verknüpft.

Felder

FeldTypPflichtHinweise
iduuidjaPK
tenant_iduuidjaFK → AA_TENANT. Rollen sind tenant-scoped — kein globaler Rollen-Pool
keytextjaFormat ^[a-z][a-z0-9_]*$, eindeutig je Tenant (UNIQUE(tenant_id, key))
nametextja
descriptiontextnein
is_systembooleanjadefault false. System-Rollen aus dem Default-Set sind unveränderlich
is_activebooleanjadefault true
metadatajsonbjadefault '{}'
Audit-/Soft-Delete-Felder

Default-Set (globaler Template-Katalog)

Das Default-Set lebt als Template in Migration/Seed-Code, nicht als globale Rollen-Zeilen. Beim Anlegen eines neuen AA_TENANT instanziiert mdm.fn_provision_tenant_defaults(tenant_id) das Set einmalig in den neuen Tenant — jeder Tenant erhält danach seine eigene, voll editierbare Kopie (System-Rollen bleiben durch is_system=true schreibgeschützt).

Default-RolleZweck (Kurz)
administratorvolle Konfiguration im Tenant inkl. manage_permissions, hard_delete
ownerTenant-Owner — alle fachlichen Rechte im Tenant, aber keine Plattform-Admin-Rechte
stewardDatenpflege: Match/Merge, DQ, Approval-Workflows (Vorbereitung OP-29/OP-35)
metadata_adminPflege DDM_ENTITY_TYPE, DDM_ENTITY_TYPE_ATTRIBUTE, DDM_RELATION_TYPE, DDM_ENUM_SET
editorread, create, update, archive, relate, unrelate auf zugewiesenen Entitätstypen
readerread auf zugewiesenen Entitätstypen
auditorread_audit auf AA_AUDIT_LOG und DDM_ENTITY_VERSION
exporterexport (Massen-/Bulk-Export, FR-103)

Konkrete Permission-Bündel je Rolle siehe Autorisierung.

Hinweise

  • Service muss is_system=true-Rollen vor Schreibzugriff schützen (Permissions-Set ändert sich nur per Migration / Default-Set-Update).
  • Tenant-eigene, nicht-System-Rollen können frei angelegt, umbenannt und gelöscht werden.
  • Soft-delete einer Rolle entfernt sie nicht aus AA_PRINCIPAL_ROLE-Historie; mdm.v_principal_role_active filtert nicht-aktive Rollen aus.
  • Default-Set-Updates (neue Default-Rolle hinzukommt) werden per Migration in alle bestehenden Tenants gespiegelt — Tenant-Customizings (is_system=false) bleiben unangetastet.

Verwandte Dokumente