ukulele
Datenbank-Guru
- Beiträge
- 5.321
Ich hab die Sache überflogen aber hier nochmal ein paar Anmerkungen:
- Wenn dein Benutzer an der DB authentifiziert ist, egal ob über AD oder mit einem lokalen User, und dann eine SP aufruft, läuft diese SP im Kontext des Benutzers. Die SP darf nur das, was auch der Benutzer darf.
- Für mich hört sich das so an das deine 4 Schemata eher 4 Berechtigungsgruppen darstellen. Da bietet sich eine saubere Struktur AD basierte natürlich an und ich würde keine SPs einsetzen um Berechtigungen umzusetzen.
- Eventuell ist Row Level Sercurity für dich interessant, SQL 2019 unterstützt das.
- Grundsätzlich finde ich es gut SQL Logik aus dem Frontend ins Backend zu verlegen. Du könntest dabei eventuell auch mit Views arbeiten. Auf eine View kann man einen INSTEAD OF Trigger legen, so das das Frontend in die View schreiben kann und der Trigger dann die Logik im Backend übernimmt.
- Wenn dein Benutzer an der DB authentifiziert ist, egal ob über AD oder mit einem lokalen User, und dann eine SP aufruft, läuft diese SP im Kontext des Benutzers. Die SP darf nur das, was auch der Benutzer darf.
- Für mich hört sich das so an das deine 4 Schemata eher 4 Berechtigungsgruppen darstellen. Da bietet sich eine saubere Struktur AD basierte natürlich an und ich würde keine SPs einsetzen um Berechtigungen umzusetzen.
- Eventuell ist Row Level Sercurity für dich interessant, SQL 2019 unterstützt das.
- Grundsätzlich finde ich es gut SQL Logik aus dem Frontend ins Backend zu verlegen. Du könntest dabei eventuell auch mit Views arbeiten. Auf eine View kann man einen INSTEAD OF Trigger legen, so das das Frontend in die View schreiben kann und der Trigger dann die Logik im Backend übernimmt.