A.Friend 10 Geschrieben 19. August 2011 Melden Teilen Geschrieben 19. August 2011 Hallo Forum, ich habe hier folgendes Konstrukt: Windows Server 2008 64-bit SQL Server 2008 R2 64-bit Die Datenbank besitzt verschiedene Schemas.Die Rohdaten befinden sich in einem eingenen Schema. Die User erhalten nur Lese-rechte auf ein Schema in der nur die Abfragen liegen. Beispiel: * Tabellen: tbl.Einkauf tbl.Verkauf tbl.Inventur st.Kunden st.Anschrift * Abfrage: ausw.KundenUmsatz Die User hätten in diesem Bsp. nur Lese-rechte auf das Schema ausw. Die Abfrage bezieht sich jedoch auf Daten der Schemas tbl und st. Der Datenbankrolle user_read habe ich das Schema der Views in den Besitz gestellt. Ruft jetzt ein ein Mitglied der Datenbankrolle eine View auf, bekommt er diesen Fehler: Die EXECUTE-Berechtigung wurde für das XXX-Schema verweigert. Die User sollen jedoch nicht auf alle Schemas zugriff erhalten sondern nur auf das Schema, in dem die Abfragen liegen. Hat da jemand eine Idee oder einen Lösungsansatz? Gruss Michael Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 19. August 2011 Melden Teilen Geschrieben 19. August 2011 Moin, bei der Arbeit mit mehreren Schemata kenne ich mich nicht so aus, aber dein Problem dürfte die Ownership Chain sein. Beim Aufruf eines Objekts, das auf andere Objekte zugreift (etwa eine View, die auf Tabellen zugreift) muss entweder der User auf alle Objekte Zugriffsberechtigungen haben, oder alle Objekte müssen denselben Owner haben. Ownership Chains) Gruß, Nils Zitieren Link zu diesem Kommentar
A.Friend 10 Geschrieben 19. August 2011 Autor Melden Teilen Geschrieben 19. August 2011 Hi Nils, danke für die Antwort. Die Schemas sind jetzt alle im Besitz von dbo. Nur kann der User (Mitglied der Rolle) auch nicut mehr auf das Schema für die Views zugreifen. Bis dato hatte die Rolle read den Besitz des Schemas (Abfrage-Schema). Gruss Michael Zitieren Link zu diesem Kommentar
A.Friend 10 Geschrieben 22. August 2011 Autor Melden Teilen Geschrieben 22. August 2011 Hi Forum, habe einen Lösungsweg gefunden. In der Datenbankrolle bei den Sicherungsfähigen Elemente trage ich jede Abfrage ein und setze die Berechtigung auf Auswählen. Der User sieht dann wirklich nur die berechtigten Abfragen (Schemas) und keine anderen Schemas. Der Weg ist leider etwas aufwendig. Falls jemand noch eine andere Lösung hat kann er Sie gerne posten. Gruss Michael Zitieren Link zu diesem Kommentar
NilsK 2.934 Geschrieben 22. August 2011 Melden Teilen Geschrieben 22. August 2011 Moin, mit "Schemas" meinst du hier sicher "Views". Und die "Sicherungsfähigen Elemente" meinen nichts anderes als Zugriffsberechtigungen; das Recht "Auswählen" ist falsch übersetzt - es handelt sich um das SELECT-Recht, also Lesezugriff. Der Weg ist richtig und notwendig. Gruß, Nils Zitieren Link zu diesem Kommentar
Empfohlene Beiträge
Schreibe einen Kommentar
Du kannst jetzt antworten und Dich später registrieren. Falls Du bereits ein Mitglied bist, logge Dich jetzt ein.