lamerking
Goto Top

Lesender Zugriff eines Benutzers auf SQL-2005 Datenbank

Hallo zusammen,

ich möchte auf eine SQL-Server 2005 Datenbank einen Benutzer hinzufügen.
Der Benutzer soll auf der Datenbank nur lesenden Zugriff haben.
Habe leider bisher noch keine entsprechende Anleitung im Internet gefunden.

Hat jemand eine Idee?

Danke schon mal.

Gruß
Tobias

Content-ID: 103059

Url: https://administrator.de/contentid/103059

Ausgedruckt am: 25.11.2024 um 09:11 Uhr

Logan000
Logan000 01.12.2008 um 16:28:56 Uhr
Goto Top
Moin Moin

Im MS SQL Server Managment Studio unter [MeinSQLServer]\Sicherheit\Anmeldungen
Rechtklick "Neue Anmeldung".

Unter "Seite auswählen" "Benutzerzuordnung" kannst du festlegen für welche DB diese Anmeldung Rechte erhalten soll und hier auch auf die Datenbankrollen zugreifen.
Nur lesen ist "db_datareader".

Gruß L.
Lamerking
Lamerking 01.12.2008 um 16:43:14 Uhr
Goto Top
Hallo,

erst mal Danke für die Antwort.

Hat der Benutzer auch automatisch execute Rechte?
Das Programm mit dem ich auf die Datenbank mit dem lesenden Benutzer zugreife, bringt nun die Fehlermeldung: "Execute permission was denied on the object".

Haste ne Idee?

Danke.
32067
32067 01.12.2008 um 17:32:46 Uhr
Goto Top
http://msdn.microsoft.com/de-de/library/ms189612(SQL.90).aspx

db_datareader darf wirklich nur SELECT, irgendwas Ausführen ist auch schon deutlich mehr als ein Lesezugriff.

Ich würde es nochmal mit "db_denydatawriter" versuchen, der darf alles, außer DELETE / INSERT / UPDATE. Wenn das auch nicht geht, z.B. weil das Programm irgendwelche Logtabellen über die Anmeldungen führt und dann scheitert, dann hast du mit den vordefinierten Rollen Pech und musst "per Hand" anfangen auf Tabellen Rechte zu vergeben, GRANT / DENY sind dann deine Freunde.
Logan000
Logan000 02.12.2008 um 08:44:14 Uhr
Goto Top
Moin Moin

Hat der Benutzer auch automatisch execute Rechte?
"Execute permission was denied on the object".
Siest Du selbst, nicht wahr?

3. Möglichkeiten:

1. db_Owener verwenden. Fertig. Scheinentor statt Passkontrolle aber es läuft
2. Eine Rolle auswählen und (wie Krause beschreibt) Rechte pro Objekt erweitern (etwas mühsam, aber sicher).
3. Hersteller/ Entwickler des Programms fragen welche Rechte (db_Rolle) der Benutzer braucht (leider ist das oft nur Möglichkeit 1).

Gruß L.