Auf einem unserer SQL Server befinden sich eine Reihe von Datenbanken, die keinen Eigentümer haben. Ist es im Allgemeinen schädlich, ihnen eine zu geben? Zum Beispiel:
USE dbName;
GO
EXEC sp_changedbowner 'sa';
GO
Ich weiß, dass sa vielleicht nicht die beste Wahl ist, aber es ist nur ein Beispiel. Mein Hauptanliegen ist, ob das Erstellen eines Besitzers, wenn es keinen gibt, Probleme mit Software verursachen kann, die derzeit eine OK-Verbindung herstellen kann.
sql-server
security
bopapa_1979
quelle
quelle
Antworten:
Sie sollten DDL anstelle von abwärtskompatiblen gespeicherten Prozeduren verwenden:
Und der Eigentümer der Datenbank (egal
sa
) sollte wahrscheinlich nicht das Konto sein, das Ihre Anwendungen verwenden, sodass dies keine wirklichen Auswirkungen auf Ihre Anwendungen haben sollte. Wenn dies der Fall ist, sollten Sie die von Ihrer Anwendung verwendeten Verbindungszeichenfolgen aktualisieren (was keine wesentliche Änderung sein sollte) und sicherstellen, dass das Konto über ausreichende - aber nicht über Gott - Berechtigungen verfügt.quelle
sa
und erledigen Sie sie, es sei denn, Sie benötigen diese Anmeldungen aus anderen Gründen (wenn die Anmeldung jedoch nicht unbedingt erforderlich ist, um auf dem aktuellen Server vorhanden zu sein, ist es sehr fraglich, ob sie jemals Eigentümer der Datenbank sein sollte, niemals Der Geist sollte es jetzt besitzen, da es bewegt wurde.Indem Sie einen Datenbankeigentümer deklarieren, geben Sie diesem Benutzer die vollständige Kontrolle über eine Datenbank. Datenbankbesitzer haben vollen Zugriff auf alle Daten in allen Tabellen, können
CREATE/ALTER/DROP
Objekte in der Datenbank abrufen usw. Dies kann je nach Ihren Anforderungen gut oder schlecht sein. Normalerweise setze ich alle Datenbankeigentümer auf "sa", um einen Standardeigentümer bereitzustellen. Da 'sa' bereits über Systemadministratorrechte verfügt, gewährt das Gewähren des Datenbankbesitzes keine eskalierte Sicherheit.quelle
Ich schlage vor, dass Sie der Datenbank immer einen Eigentümer geben. Da sich einige Tools beschweren, wenn die Datenbank keinen Eigentümer hat, zum Beispiel das Diagramm-Tool .
Auch die Verwendung eines bereits leistungsstarken Benutzers wie "sa" für diesen Zweck ist besser, als Mike Fal vorgeschlagen hat.
quelle