Sperren einer SQL Server-Datenbank mit PHP
-
08-06-2019 - |
Frage
Ich möchte zusätzliche Sicherheit für einen bestimmten Punkt in meiner Web-App.Ich möchte also die Datenbank sperren (SQL Server 2005).Irgendwelche Vorschläge oder ist dies bei SQL Server überhaupt notwendig?
Bearbeiten Sie die Frage:
Die Abfrage schlägt stillschweigend fehl, ohne dass Fehlermeldungen protokolliert werden, und tritt nicht innerhalb einer Transaktion auf.
Endgültige Lösung:
Ich konnte das Problem nie lösen, bin aber letztendlich auf MySQL umgestiegen und habe hier eine Abfrage auf Transaktionsebene verwendet.Dies war nicht der Hauptgrund für einen Wechsel.Ich hatte Probleme mit SQL Server und konnte dadurch unser CMS und verschiedene andere Tools alle auf derselben Datenbank ausführen.Zuvor hatten wir einen SQL Server und eine MySQL-Datenbank zum Betrieb unserer Website im Einsatz.Der Port war etwas zeitaufwändig, aber auf lange Sicht wird er meiner Meinung nach für die Website und das Unternehmen viel besser funktionieren.
Lösung
Ich nehme an, Sie haben drei Möglichkeiten.
Legen Sie die Benutzerberechtigungen so fest, dass Benutzer x nur aus der Datenbank lesen kann.
Stellen Sie die Datenbank in den Einzelbenutzermodus ein, sodass nur eine Verbindung darauf zugreifen kann
sp_dboption 'myDataBaseName', single, true
Stellen Sie die Datenbank auf schreibgeschützt ein
sp_dboption 'myDataBaseName', schreibgeschützt, true
Andere Tipps
Ich konnte das Problem nie lösen, bin aber letztendlich auf MySQL umgestiegen und habe hier eine Abfrage auf Transaktionsebene verwendet.Dies war nicht der Hauptgrund für einen Wechsel.Ich hatte Probleme mit MSSQL und es ermöglichte mir, unser CMS und verschiedene andere Tools alle auf derselben Datenbank laufen zu lassen.Zuvor hatten wir eine MSSQL- und eine MySQL-Datenbank zum Betrieb unserer Site im Einsatz.Der Port war etwas zeitaufwändig, aber auf lange Sicht wird er meiner Meinung nach für die Website und das Unternehmen viel besser funktionieren.