# Eine Anwendungsidentität sauber einrichten Typ: Checkliste Herkunft: database-administration-basics / access-identity / database-access-identity-app-role-sequence Version: database-access-identity-app-role-sequence-2026-09-12 Geprüft: 2026-09-12 ACHTUNG: Dieses Dokument ist ein Lernartefakt aus einer Schulungssequenz. Es ist kein produktives Runbook. Vor jeder Anwendung in einer realen Umgebung müssen die Schritte gegen lokale Dokumentation, Runbooks und Freigabestatus geprüft werden. ## Szenario Eine neue Anwendung soll auf das Schema `fach` in einer PostgreSQL-Datenbank zugreifen. Bisher lief sie im Test als Superuser. Die Migrationen laufen unter einer eigenen Rolle `deploy`, die Anwendung selbst soll nur lesen und schreiben dürfen. ## Schritte 1. Rolle `app_rw` mit `LOGIN` anlegen und ihr ein Passwort geben 2. `CONNECT` auf der Datenbank und `USAGE` auf dem Schema `fach` gewähren 3. Lese- und Schreibrechte auf die bereits vorhandenen Tabellen des Schemas gewähren 4. Standardrechte für künftige Tabellen setzen — für die Rolle `deploy` als Erzeugerin 5. Mit `app_rw` verbinden und einen Lese- und einen Schreibzugriff nachstellen 6. Den Superuser aus der Verbindungszeichenfolge der Anwendung entfernen ## Begründung Warum: Eine Berechtigung ist erst fertig, wenn sie den Zuwachs einschließt und unter der neuen Identität nachgestellt wurde. Der alte, weite Zugang wird zuletzt entfernt — solange der neue nicht belegt ist, ist er der einzige Rückweg. Folgen: **+** Die Anwendung läuft danach mit dem Recht, das sie wirklich braucht, und überlebt die nächste Migration. **−** Der Zuschnitt ist aufwendiger als eine einzelne weite Vergabe, und er fällt später dort auf, wo die Anwendung eine bisher ungenutzte Operation zum ersten Mal braucht. ## Quellen 1. https://www.postgresql.org/docs/current/sql-grant.html 2. https://www.postgresql.org/docs/current/sql-alterdefaultprivileges.html 3. https://www.postgresql.org/docs/current/ddl-schemas.html