Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Gilt für:Azure SQL-Datenbank
In diesem Artikel lernen Sie Folgendes:
- Konfigurationsoptionen für Azure SQL-Datenbank, mit denen Benutzer administrative Aufgaben ausführen und auf in diesen Datenbanken gespeicherte Daten zugreifen können.
- Zugriffs- und Autorisierungskonfiguration nach dem Erstellen eines neuen Servers.
- So fügen Sie Anmeldeinformationen und Benutzerkonten in der
masterDatenbank hinzu, und erteilen Sie diesen Konten Administratorberechtigungen. - Hinzufügen von Benutzerkonten zu Benutzerdatenbanken im Zusammenhang mit Anmeldungen oder als eigenständige Benutzerkonten
- Konfigurieren von Benutzerkonten mit Berechtigungen in Benutzerdatenbanken mithilfe von Datenbankrollen und expliziten Berechtigungen
- Informationen zu Azure SQL Managed Instance finden Sie unter Autorisieren des Datenbankzugriffs auf SQL Managed Instance.
- Informationen zu Azure Synapse Analytics finden Sie unter Autorisieren des Datenbankzugriffs auf Azure Synapse Analytics.
Hinweis
Microsoft Entra ID war zuvor als Azure Active Directory (Azure AD) bekannt.
Authentifizierung und Autorisierung
Die Authentifizierung ist der Prozess, in dem die Identität des Benutzers bestätigt wird. Ein Benutzer stellt mithilfe eines Benutzerkontos eine Verbindung zu einer Datenbank her.
Wenn ein Benutzer versucht, eine Verbindung mit einer Datenbank herzustellen, gibt er ein Benutzerkonto und Authentifizierungsinformationen an. Der Benutzer wird mithilfe einer der folgenden beiden Authentifizierungsmethoden authentifiziert:
-
Mit dieser Authentifizierungsmethode sendet der Benutzer einen Benutzernamen und ein zugehöriges Kennwort, um eine Verbindung herzustellen. Die
masterDatenbank speichert dieses Kennwort für Benutzerkonten, die mit einer Anmeldung verknüpft sind. Die Datenbank, die die Benutzerkonten enthält, die nicht mit einer Anmeldung verknüpft sind, speichert das Kennwort.Hinweis
Azure SQL-Datenbank erzwingt Kennwortkomplexität nur für die Kennwortrichtlinie.
Microsoft Entra-Authentifizierung für Azure SQL
Mithilfe dieser Authentifizierungsmethode sendet der Benutzer einen Benutzernamen und fordert an, dass der Dienst die in Microsoft Entra ID gespeicherten Anmeldeinformationen verwendet ( früher Azure Active Directory).
Anmeldungen und Benutzer: Sie können ein Benutzerkonto in einer Datenbank mit einer Anmeldung verknüpfen, die die master Datenbank speichert, oder Sie können ihn zu einem Benutzernamen machen, den eine einzelne Datenbank speichert.
- Eine Anmeldung ist ein Konto in der
masterDatenbank, mit dem Sie ein Benutzerkonto in einer oder mehreren Datenbanken verknüpfen können. Wenn Sie einen Login verwenden, speichern Sie die Anmeldedaten für das mit dem Login verknüpfte Benutzerkonto. - Bei einem Benutzerkonto handelt es sich um ein einzelnes Konto in jeder Datenbank, die aber nicht mit einer Anmeldung verknüpft sein muss. Wenn Sie ein Benutzerkonto verwenden, das nicht mit einer Anmeldung verknüpft ist, speichern Sie die Anmeldeinformationen mit dem Benutzerkonto.
Die Autorisierung für den Zugriff auf Daten und das Ausführen verschiedener Aktionen wird mithilfe von Datenbankrollen und expliziten Berechtigungen verwaltet. Autorisierung bezieht sich auf die Berechtigungen, die einem Benutzer zugewiesen sind, und bestimmt, was dieser Benutzer tun darf. Die Datenbankrollenmitgliedschaften Ihres Benutzerkontos und berechtigungen auf Objektebene steuern die Autorisierung. Als bewährte Methode gewähren Sie Benutzern die geringsten Berechtigungen, die erforderlich sind.
Vorhandene Anmeldungen und Benutzerkonten nach Erstellung einer Datenbank
Wenn Sie zum ersten Mal eine Azure SQL-Ressource bereitstellen, geben Sie einen Anmeldenamen und ein Kennwort für einen speziellen Verwaltungsanmeldungstyp an, den Serveradministrator. Während der Bereitstellung erfolgt die folgende Konfiguration von Anmeldungen und Benutzern in der master und Benutzerdatenbanken:
Wichtig
Schließen Sie keine persönlichen, sensiblen oder vertraulichen Informationen in das Anmeldefeld für den Serveradministrator ein. In diesem Feld eingegebene Daten werden nicht als Kundendaten betrachtet.
- Der Bereitstellungsprozess erstellt mithilfe des von Ihnen angegebenen Anmeldenamens eine SQL-Authentifizierungsanmeldung mit Administratorrechten. Bei einer Anmeldung handelt es sich um ein individuelles Konto für die Anmeldung bei Azure SQL-Datenbank.
- Der Bereitstellungsprozess gewährt diesem Anmeldevorgang vollständige Administratorberechtigungen für alle Datenbanken als Prinzipal auf Serverebene. Die Anmeldung verfügt über alle verfügbaren Berechtigungen und kann nicht eingeschränkt werden.
- Wenn sich dieses Konto bei einer Datenbank anmeldet, stimmt es mit dem speziellen Benutzerkonto
dbo(Benutzerkonto) überein, das in jeder Benutzerdatenbank vorhanden ist. Der Benutzer dbo verfügt über alle Datenbankberechtigungen in der Datenbank und ist Mitglied der festen Datenbankrolledb_owner. Im späteren Verlauf dieses Artikels werden weitere feste Datenbankrollen behandelt.
So identifizieren Sie das Serveradministratorkonto :
- Wechseln Sie zum Azure SQL-Hub bei aka.ms/azuresqlhub.
- Wechseln Sie im Ressourcenmenü zu Ihrem Azure SQL-Datenbank logischen Server.
- Wählen Sie unter "Einstellungen" die Seite "Eigenschaften" aus.
- Zeigen Sie die Werte für die Serveradministratoranmeldung oder den Microsoft Entra-Administrator an.
Wichtig
Sie können den Namen des Serveradministratorkontos nach der Erstellung nicht mehr ändern. Um das Kennwort für den Serveradministrator zurückzusetzen, wählen Sie im Azure-Portal auf SQL Server, wählen Sie in der Liste den Server aus, und wählen Sie dann auf Kennwort zurücksetzen.
Erstellen zusätzlicher Anmeldungen und Benutzer mit Administratorberechtigungen
Zu diesem Zeitpunkt wird Ihr SQL-logischer Server für den Zugriff mithilfe eines einzelnen SQL-Authentifizierungsanmeldungs- und Benutzerkontos konfiguriert. Verwenden Sie die folgenden Optionen, um zusätzliche Anmeldungen mit vollständigen oder teilweisen Administratorberechtigungen zu erstellen.
Erstellen eines Microsoft Entra-Administratorkontos mit vollständigen Administratorberechtigungen
Aktivieren Sie Microsoft Entra Authentifizierung, und fügen Sie einen Microsoft Entra Administrator hinzu. Sie können ein Microsoft Entra Konto als Administrator der Azure SQL Bereitstellung mit vollständigen Administratorberechtigungen konfigurieren. Bei diesem Konto kann es sich um ein einzelnes Konto oder ein Sicherheitsgruppenkonto handeln. Sie müssen einen Microsoft Entra-Administrator konfigurieren, wenn Sie Microsoft Entra Konten verwenden möchten, um eine Verbindung mit Azure SQL-Datenbank herzustellen. Ausführliche Informationen zum Aktivieren der Microsoft Entra-Authentifizierung für alle Azure SQL-Bereitstellungstypen finden Sie in den folgenden Artikeln:
Erstellen Sie in der SQL-Datenbank SQL-Authentifizierungsanmeldungen mit eingeschränkten Administratorberechtigungen.
- Erstellen Sie eine zusätzliche SQL-Authentifizierungsanmeldung in der
masterDatenbank.- Fügen Sie den Login mithilfe der Anweisung ALTER SERVER ROLE zu den
##MS_DatabaseManager##,##MS_LoginManager##und##MS_DatabaseConnector##Rollen auf Server-Level hinzu.
- Fügen Sie den Login mithilfe der Anweisung ALTER SERVER ROLE zu den
Mitglieder dieser speziellen
master-Datenbankrollen für Azure SQL-Datenbank verfügen über Berechtigungen zum Erstellen und Verwalten von Datenbanken oder Anmeldungen. In Datenbanken, die von einem Benutzer erstellt wurden, der mitglied derdbmanagerRolle ist, wird das Mitglied derdb_ownerfesten Datenbankrolle zugeordnet und kann sich mit demdboBenutzerkonto anmelden und diese Datenbank verwalten. Diese Rollen verfügen außerhalb dermaster-Datenbank über keine expliziten Berechtigungen.Wichtig
Sie können keine zusätzliche SQL-Authentifizierungsanmeldung mit vollständigen Administratorberechtigungen in Azure SQL-Datenbank erstellen. Nur das Serveradministratorkonto oder das Microsoft Entra-Administratorkonto (kann eine Microsoft Entra-Gruppe sein) können andere Anmeldungen zu Serverrollen hinzufügen oder aus diesen entfernen. Diese Einschränkung ist spezifisch für Azure SQL-Datenbank.
- Erstellen Sie eine zusätzliche SQL-Authentifizierungsanmeldung in der
Erstellen von Konten für Nichtadministratorbenutzer
Erstellen Sie Konten für nichtadministrative Benutzer mithilfe einer der folgenden Methoden:
Erstellen einer Anmeldung
Erstellen Sie eine SQL-Authentifizierungsanmeldung in der
masterDatenbank. Erstellen Sie dann in jeder Datenbank ein Benutzerkonto, auf das der Benutzer zugreifen und das Benutzerkonto der Anmeldung zuordnen muss. Verwenden Sie diesen Ansatz, wenn der Benutzer auf mehrere Datenbanken zugreifen muss und Sie die Kennwörter synchronisieren möchten. Dieser Ansatz erhöht jedoch die Komplexität, wenn Sie ihn mit der Georeplikation verwenden, da Sie die Anmeldung sowohl auf dem primären Server als auch auf den sekundären Servern erstellen müssen. Weitere Informationen finden Sie unter Konfigurieren und Verwalten der Sicherheit von Azure SQL-Datenbank für die Geowiederherstellung oder den Failover.Erstellen eines Benutzerkontos
Erstellen Sie ein Benutzerkonto in der Datenbank, auf das ein Benutzer zugreifen muss (auch als enthaltener Benutzer bezeichnet).
Mithilfe dieses Ansatzes werden die Benutzerauthentifizierungsinformationen in jeder Datenbank gespeichert und automatisch in georeplizierte Datenbanken repliziert. Wenn jedoch dasselbe Konto in mehreren Datenbanken vorhanden ist und Sie die SQL-Authentifizierung verwenden, müssen Sie die Kennwörter manuell synchronisieren. Wenn ein Benutzer über ein Konto in verschiedenen Datenbanken mit unterschiedlichen Kennwörtern verfügt, kann das Merken dieser Kennwörter ebenfalls zu einem Problem werden.
Wichtig
Um enthaltene Benutzer zu erstellen, die Microsoft Entra Identitäten zugeordnet sind, müssen Sie mithilfe eines Microsoft Entra Kontos in der Datenbank in Azure SQL-Datenbank angemeldet sein.
Beispiele zum Erstellen von Anmeldeinformationen und Benutzern finden Sie unter:
- Erstellen einer Anmeldung für Azure SQL-Datenbank
- Benutzer erstellen
- Erstellen von eigenständigen Microsoft Entra-Benutzern
Tipp
Ein Sicherheitslernprogramm, das das Erstellen von Benutzern in der Azure SQL-Datenbank umfasst, finden Sie unter Lernprogramm: Sichern einer Datenbank in Azure SQL-Datenbank.
Verwenden fester und benutzerdefinierter Datenbankrollen
Nachdem Sie ein Benutzerkonto basierend auf einer Anmeldung oder als eigenständigen Benutzer in einer Datenbank erstellt haben, können Sie diesen Benutzer zum Durchführen verschiedener Aktionen und für den Zugriff auf Daten in einer bestimmten Datenbank autorisieren. Verwenden Sie die folgenden Methoden, um den Zugriff zu autorisieren:
Feste Datenbankrollen
Fügen Sie das Benutzerkonto zu einer festen Datenbankrolle hinzu. Es gibt neun feste Datenbankrollen, die jeweils über einen definierten Satz von Berechtigungen verfügen. Die folgenden festen Datenbankrollen werden am häufigsten verwendet: db_owner, db_ddladmin, db_datawriter, db_datareader, db_denydatawriter und db_denydatareader. Verwenden Sie db_owner , um nur wenigen Benutzern die vollständige Berechtigung zu erteilen. Die anderen festen Datenbankrollen sind nützlich, um schnell eine einfache Datenbank in der Entwicklung zu erhalten, werden jedoch für die meisten Produktionsdatenbanken nicht empfohlen. Die feste Datenbankrolle db_datareader gewährt beispielsweise Lesezugriff auf alle Tabellen in der Datenbank, was mehr ist als unbedingt erforderlich.
So fügen Sie einen Benutzer zu einer festen Datenbankrolle hinzu:
- Verwenden Sie in Azure SQL-Datenbank die ALTER ROLE-Anweisung. Beispiele finden Sie in DEN ALTER ROLE-Beispielen.
Benutzerdefinierte Datenbankrolle
Erstellen Sie eine benutzerdefinierte Datenbankrolle mithilfe der CREATE ROLE-Anweisung . Mit einer benutzerdefinierten Rolle können Sie Ihre eigenen benutzerdefinierte Datenbankrollen erstellen und jeder Rolle sorgfältig die mindestens erforderlichen Berechtigungen für die geschäftlichen Aufgaben zuweisen. Fügen Sie dann Benutzer zur benutzerdefinierten Rolle hinzu. Wenn ein Benutzer Mitglied mehrerer Rollen ist, verfügt er über die zusammengefassten Berechtigungen all dieser Rollen.
Direktes Zuweisen von Berechtigungen
Dem Benutzerkonto direkt die Berechtigungen erteilen. Es gibt mehr als 100 Berechtigungen, die Sie einzeln erteilen oder verweigern können. Viele dieser Berechtigungen sind geschachtelt. Die
UPDATE-Berechtigung für ein Schema enthält beispielsweise für jede Tabelle des Schemas dieUPDATE-Berechtigung. Wie bei den meisten Berechtigungssystemen wird eine Gewährung durch die Verweigerung einer Berechtigung außer Kraft gesetzt. Aufgrund der verschachtelten Natur und der Anzahl von Berechtigungen kann es eine sorgfältige Analyse erfordern, um ein geeignetes Berechtigungssystem zu entwerfen, das den Schutz Ihrer Datenbank gewährleistet. Beginnen Sie mit der Liste der Berechtigungen unter Berechtigungen (Datenbank-Engine), und sehen Sie sich die Grafik in Postergröße mit den Berechtigungen an.
Verwenden von Gruppen
Eine effiziente Zugriffsverwaltung weist Berechtigungen Microsoft-Entra-Sicherheitsgruppen und festen oder benutzerdefinierten Rollen zu, anstatt einzelnen Benutzern.
Wenn Sie die Microsoft Entra-Authentifizierung verwenden, fügen Sie Microsoft Entra-Benutzer in eine Microsoft Entra-Sicherheitsgruppe ein. Erstellen Sie einen eigenständigen Datenbankbenutzer für die Gruppe. Fügen Sie einen oder mehrere Datenbankbenutzer als Mitglied zu benutzerdefinierten oder integrierten Datenbankrollen mit den speziellen Berechtigungen hinzu, die für diese Benutzergruppe geeignet sind.
Wenn Sie die SQL-Authentifizierung verwenden, erstellen Sie eigenständige Datenbankbenutzer in der Datenbank. Weisen Sie mindestens einem Datenbankbenutzer eine benutzerdefinierte Datenbankrolle mit spezifischen Berechtigungen zu, die der jeweiligen Benutzergruppe entspricht.
Hinweis
Sie können auch Gruppen für nicht unterkontainierte Datenbankbenutzer verwenden.You can also use groups for noncontained database users.
Machen Sie sich mit den folgenden Features vertraut, mit denen Sie Berechtigungen einschränken oder erhöhen können:
- Mithilfe von Identitätswechsel und Modulsignierung können Berechtigungen sicher vorübergehend erhöht werden.
- Sicherheit auf Zeilenebene kann verwendet werden, um zu beschränken, auf welche Zeilen ein Benutzer zugreifen kann.
- Dynamisches Datenmasking kann verwendet werden, um den Zugriff auf vertrauliche Daten zu begrenzen.
- Gespeicherten Prozeduren können verwendet werden, um die Aktionen zu begrenzen, die in der Datenbank ausgeführt werden können.