Serverkonfiguration: enthaltene Datenbankauthentifizierung

Gilt für:SQL Server

Verwenden Sie die contained database authentication Option, um enthaltene Datenbanken in der Instanz des SQL Server-Datenbankmoduls zu aktivieren.

Mit dieser Serveroption können Sie steuern contained database authentication.

  • Wenn contained database authentication für die Instanz deaktiviert (0) ist, können enthaltene Datenbanken nicht erstellt oder an das Datenbankmodul angefügt werden.

  • Wenn contained database authentication für die Instanz aktiviert (1) ist, können enthaltene Datenbanken erstellt oder an die Datenbank-Engine angefügt werden.

Eine eigenständige Datenbank schließt alle erforderlichen Datenbankeinstellungen und Metadaten zum Definieren der Datenbank ein, und ihre Konfiguration ist nicht von der Instanz der Datenbank-Engine abhängig, in der die Datenbank installiert ist. Benutzer können eine Verbindung mit der Datenbank herstellen, ohne dass sie bei der Anmeldung auf der Datenbank-Engine-Ebene eine Authentifizierung durchführen.

Das Isolieren der Datenbank von der Datenbank-Engine ermöglicht das einfache Verschieben der Datenbank in eine andere Instanz von SQL Server. Dadurch, dass alle Datenbankeinstellungen in der Datenbank enthalten sind, können Datenbankbesitzer sämtliche Konfigurationseinstellungen für die Datenbank verwalten. Weitere Informationen zu eigenständigen Datenbanken finden Sie unter Eigenständige Datenbanken.

Hinweis

Enthaltene Datenbanken sind immer für SQL-Datenbank und Azure Synapse Analytics aktiviert und können nicht deaktiviert werden.

Wenn eine Instanz von SQL Server enthaltene Datenbanken enthält, kann die Einstellung contained database authentication mithilfe der Anweisung RECONFIGURE WITH OVERRIDE auf 0 festgelegt werden. Wenn Sie contained database authentication auf 0 festlegen, wird die Authentifizierung für eigenständige Datenbanken für die eigenständigen Datenbanken deaktiviert.

Wichtig

Wenn enthaltene Datenbanken aktiviert sind, können Datenbankbenutzer mit der ALTER ANY USER Berechtigung, z. B. Mitglieder der db_owner und db_accessadmin Datenbankrollen, Den Zugriff auf Datenbanken gewähren und auf diese Weise Zugriff auf die Instanz von SQL Server gewähren. Dies bedeutet, dass die Kontrolle über den Zugriff auf den Server nicht mehr auf Mitglieder der festen Serverrolle "sysadmin " und "securityadmin " beschränkt ist und sich mit der Serverebene CONTROL SERVER und ALTER ANY LOGIN -berechtigung anmeldet.

Bevor Sie eigenständige Datenbanken zulassen, sollten Sie die Risiken kennen, die eigenständige Datenbanken mit sich bringen. Weitere Informationen finden Sie unter Security Best Practices with Contained Databases.

Beispiele

In folgendem Beispiel werden enthaltene Datenbanken in der Instanz der Datenbank-Engine aktiviert.

EXECUTE sp_configure 'contained database authentication', 1;
GO

RECONFIGURE;
GO