Laden...

Bestimmte Tabellen schreibgeschützt machen

Erstellt von Sonne123 vor 13 Jahren Letzter Beitrag vor 13 Jahren 1.996 Views
S
Sonne123 Themenstarter:in
72 Beiträge seit 2010
vor 13 Jahren
Bestimmte Tabellen schreibgeschützt machen

verwendetes Datenbanksystem: <SQL Server 2005>

Hallo,

ich möchte bestimmte Tabellen schreibgeschützt machen, damit ein User in der Datenbank die bestehenden Werte nicht ändern oder löschen kann. Aber es müssen noch Werte eingetragen und geändert werden können.
Vielleicht hat einer ja ne Idee.

Vielen Dank im Vorraus.

I
44 Beiträge seit 2010
vor 13 Jahren

Ich glaub das wird so nicht funktionieren.
Probier es doch mal mit den berechtigungen

mfg impact_1991

S
Sonne123 Themenstarter:in
72 Beiträge seit 2010
vor 13 Jahren

Hallo impact_1991,

danke für deine schnelle Antowrt, jedoch kann das mit den Berechtigungen auch nicht funktionieren, da ich ja dann keineweiteren Werte eintragen kann und du weisst, dass muss ja whol noch funktionieren sonst gibts groooooßen ärger!

Gruß,
Sonne123

3.511 Beiträge seit 2005
vor 13 Jahren

Wieso sollte das mit den Berechtigungen nicht funktionieren? Ein User hat halt nur lesende Rechte und ein anderer User lesende und schreibende Rechte. Wenn du keine Möhlichkeit hast, die Berechtigungen auf SQL Server Ebene zu ändern, dann bleibt dir nichts anderes übrig, das in der Anwendung durch Berechtigungen zu regeln.

"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)

1.552 Beiträge seit 2010
vor 13 Jahren

Hallo Sonne123,

solange du genug Rechte auf dem SQL-Server hast, und das nehme ich an, solltest du keine Probleme haben spezielle Benutzer Rechte zu geben bzw zu nehmen. Du kannst mit den Berechtigungen einstellen welcher Benutzer auf welche Tabellen was machen kann. Dasselbe kann dann bei Spalten angegeben werden. Wie dies geht sollte kannst du in der SQL-Server Doku entnehmen.

Gruß
Michael

Mein Blog
Meine WPF-Druckbibliothek: auf Wordpress, myCSharp

C
101 Beiträge seit 2008
vor 13 Jahren

wenn du willst könntest du auch Rollen erstellen. Diese kannst du dann den Benutzern zuordnen und falls sich die Rechte mal ändern sollten, kannst du sie einfach verändern.

S
Sonne123 Themenstarter:in
72 Beiträge seit 2010
vor 13 Jahren

danke für die Antworten.
Jedoch kann ich vorher nicht festlegen welcher User welche Berechtigungen hat, weil sich immer wer anders am Server anmelden könnte. Ist es nicht einfach möglich die jetzt derzeitigen Werte, die in der Datenbank bzw in den Tabellen stellen, sowas wie schreibgeschützt zu machen. Einfach nur, dass die alten Werte nicht überschrieben werden.
Vielleicht hat ja einer noch einen kleinen Tipp, sonst wäre noch die Möglichkeit, dass wenn der User die Werte ändert, eine Meldung aufpoppt z.b. "Die Werte werden geändert!".

3.511 Beiträge seit 2005
vor 13 Jahren

Moin,

Jedoch kann ich vorher nicht festlegen welcher User welche Berechtigungen hat, weil sich immer wer anders am Server anmelden könnte

Irgendwo muss doch festgelegt sein, wer Zugriff auf dem Server hat. Innerhalb einer Domaine kannst du auch die Gruppen verwalten. Dann sind die User egal.

Ist es nicht einfach möglich die jetzt derzeitigen Werte, die in der Datenbank bzw in den Tabellen stellen, sowas wie schreibgeschützt zu machen

Über INSTEAD OF Trigger. Aber das ist nicht so wirklich schön 😃

"Jedes Ding hat drei Seiten, eine positive, eine negative und eine komische." (Karl Valentin)

1.552 Beiträge seit 2010
vor 13 Jahren

Jedoch kann ich vorher nicht festlegen welcher User welche Berechtigungen hat, weil sich immer wer anders am Server anmelden könnte

Jedoch sind dir die User bekannt, sonst könnten Sie sich nicht am Server anmelden (SQL-Authentifizierung vorausgesetzt).
Dann könntest du den Usern der "Startrolle" die nötigen Rechte entziehen
Oder was ist dabei genau das Problem in deinem letzten Post kann ich es leider nicht entnehmen?

Mein Blog
Meine WPF-Druckbibliothek: auf Wordpress, myCSharp