Blog · Azure

Benutzer in Azure SQL DB anlegen

Autor André Krämer Veröffentlicht 20. Juli 2020 Lesezeit ca. 2 Minuten

Nach dem Anlegen einer Datenbank unter Microsoft Azure folgt als nächster Schritt in der Regel die Anlage eines Benutzer, der in der entsprechenden Datenkbank berechtigt werden soll.

Leider gibt es in der Weboberfläche des Azure Portals dazu aktuell keine direkte Möglichkeit. Dort kann lediglich der Administartions-Benutzer für den DB Server konfiguriert werden. Aus Sicherheitsgründen sollte dieser aber natürlich nicht der Benutzer sein, mit dem man später aus der eigenen Anwendung aus auf die Datenbank zugreift.

Bei einer lokalen SQL Server Installation würde man an dieser Stelle nun das SQL Server Management Studio öffnen und den Benutzer dort komfortabel über die Oberfläche anlegen. Versucht man dies bei einer Azure SQL DB, so muss man ernüchternd fesstellen, dass diese Oberfläche für Azure SQL Datenbanken nicht verfügbar ist.

Mit T-SQL zum Ziel

Stattdessen muss man die Nutzeranlage mit T-SQL vornehmen. Dazu verbindet man sich mit einem beliebigen SQL Client, z. B. dem SQL Server Management Studio oder dem Azure Data Studio mit einem administrativen Benutzer dem entsprechenden Datenbankserver mit der Datenbank master und führt folgendes SQL Statement aus um einen Login anzulegen:

CREATE LOGIN [MeinUser] WITH PASSWORD=N'Test!987'
GO

MeinUser und Test!987 sind an dieser Stelle natürlich nur Platzhalter für den tatsächlichen Benutzernamen und das entsprechende Passwort.

Nach dem der Login nun auf dem Server bekannt ist, müssen wir im nächsten Schritt einen Benutzer für den Login in der Zieldatenbank (in der Regel nicht master anlegen). So einen Benutzer benötigen wir übrigens für jede Datenbank, auf die der Login Zugriff erhalten soll.

Zu diesem Zweck wechseln wir also zunächst in unserem SQL Client in die entsprechende Datenbank, z. B. über use [MeineDatenbank] und führen anschließend folgendes Statement aus.

CREATE USER [MeinUser] FOR LOGIN [MeinUser]  WITH DEFAULT_SCHEMA=[dbo]
GO

Zu guter letzt müssen wir dem Benutzer dann noch eine passende Rolle entsprechend der gewünschten Zugriffsrechte geben.

Soll der Benutzer z. B. Daten lesen und schreiben, Datenbankstrukturen aber nicht verändern können, dann wären die Gruppen db_datareader und db_datawriter passend.

EXEC sp_addrolemember 'db_datareader', 'MeinUser';
EXEC sp_addrolemember 'db_datawriter', 'MeinUser';
GO

Was beschreibt Ihre Situation?

André Krämer, Gründer & Geschäftsführer von Quality Bytes
André Krämer Gründer & Geschäftsführer der Quality Bytes GmbH · 13× Microsoft MVP · Buchautor (.NET MAUI) · Aufsichtsrat der ODYSYS AG. Seit 1997 in der Softwareentwicklung, seit 2002 auf .NET spezialisiert.
Lieber direkt sprechen?

Manche Fragen klärt kein Blogartikel.

Wenn Ihre Situation konkreter ist als ein Fachbeitrag, nehmen Sie den kürzeren Weg: 30 Minuten Erstgespräch, kostenlos und unverbindlich.

Erstgespräch vereinbaren
Der erste Schritt

Bereit für 30 Minuten, die Klarheit schaffen?

30 Minuten, kostenlos, unverbindlich. Sie sprechen mit jemandem, der Ihre Software versteht. Am Ende wissen Sie, ob wir die Richtigen für Ihr Vorhaben sind. Wenn nicht, sagen wir Ihnen das offen.

Quality Bytes GmbH · Brunnenstraße 21 · 53498 Bad Breisig
+49 2633 4899 430 · info@qualitybytes.de

Das hat leider nicht geklappt. Bitte versuchen Sie es erneut oder schreiben Sie direkt an info@qualitybytes.de.
Danke für Ihre Nachricht! Wir melden uns innerhalb eines Werktags mit Terminvorschlägen.
Ihre Angaben verwenden wir ausschließlich zur Bearbeitung Ihrer Anfrage. Die Übertragung erfolgt über unseren Dienstleister Brevo (Datenschutzerklärung von Brevo). Details dazu stehen in unserer Datenschutzerklärung. Kein Spam, kein ungefragter Newsletter.