SQL-Server : kann man den Zugriff beschränken sich nur auf eine Tabelle
Ich denke, die Antwort ist Nein, aber ich bin auf der Suche, um jemandem den Zugang zu einem SQL Server
Datenbank, aber ich will nur Sie haben Zugriff auf eine Tabelle.
Es ist leicht genug, um zu begrenzen, jemanden nur Zugriff auf eine Datenbank haben, aber keine Ahnung ob ich das einschränken kann auf eine einzelne Tabelle.
Meine Gedanken waren so erstellen Sie eine weitere Datenbank mit einem synonym in der anderen Tabelle und dann begrenzen Sie den Zugriff auf die Datenbank, aber ich fragte mich, wenn jemand könnte denken an einen besseren Weg.
Ich bin auch nicht davon überzeugt, dass es funktionieren wird, wie ich denke, es wird ein Konflikt von Berechtigungen.
InformationsquelleAutor der Frage Andrew Newland | 2012-03-20
Du musst angemeldet sein, um einen Kommentar abzugeben.
Ja.
Während die, die arbeiten, würden Sie wahrscheinlich besser dran, die Verwaltung von Berechtigungen mit Rollen und AD-Gruppen.
InformationsquelleAutor der Antwort Mitch Wheat
Das problem mit einer Schleife durch alle Tabellen und den Zugriff verweigern würde, wenn Sie eine neue Tabelle hinzufügen.
Das wichtigste ist, nicht dem Benutzer 'db_datareader' Zugriff auf die gesamte Datenbank. Über die Benutzeroberfläche können Sie das User-Mapping Registerkarte unter dem login können Sie erstellen, die Benutzer mit 'öffentlichen' Zugang nur. Dann können Sie gehen, um die Datenbank und gewähren Sie diesem Benutzer AUSWÄHLEN, der Zugriff auf die jeweilige Tabelle (indem Sie auf die seltsam benannte "Suchen" - button unter sicherungsfähige Elemente Registerkarte).
Diesem Ansatz würde die Arbeit mit Skript natürlich auch.
InformationsquelleAutor der Antwort mike nelson
InformationsquelleAutor der Antwort kd7
Sicherlich. GRANT die Berechtigungen, die Sie wollen.
Wenn Sie einem Benutzer Zugriff auf eine Datenbank, Blick auf die Rollen, die Sie zugeordnet sind, und welche Rechte diese Rollen haben.
Das problem ist, dass die Menschen im Allgemeinen gewähren zu breit Berechtigungen in der Anfang.
InformationsquelleAutor der Antwort Cade Roux
Sicher, Sie können. Nach der Erstellung des Benutzers und geben Ihnen Zugang zu der Datenbank gewähren Sie nur wählen Sie access (oder was auch immer Sie brauchen) zu dieser Tabelle.
InformationsquelleAutor der Antwort Brian
Ein besserer Ansatz wäre die Erstellung einer separaten
schema
erstellen Sie eineproc
in diesemschema
. Dann kann der BenutzerEXEC
dassproc
. Das ist es. Sie können eineview
in diesemschema
vielleicht mehr von dem, was Sie sind nach.InformationsquelleAutor der Antwort Serj Sagan
Der bessere Weg ist die Schaffung von sicherungsfähigen Elements, für das bestimmte Tabelle. ES wird Sie Fragen, was werden Sie gesichert; Tisch, Ansicht -, Datenbank -. Dann wählen Sie die spezifische Tabelle zu sichern und auszuschließen, dass Benutzer aus dieser Tabelle.
InformationsquelleAutor der Antwort yared