Cvičení – konfigurace ověřování
V tomto cvičení vytvoříte přihlášení, uživatele a správce a udělíte uživatelům Microsoft Entra přístup k databázi stejně jako normálním uživatelům SQL Serveru.
Otevřete SQL Server Management Studio (SSMS) a připojte se k logickému serveru Azure SQL Database, pokud ještě nejste připojení.
Jakmile máte nakonfigurovanou a připojenou databázi, můžete v dalším kroku přidat ostatní uživatele a udělit jim přístup. Stejně jako u SQL Serveru můžete přidat nová přihlašovací jména a uživatele.
V nástroji SSMS klikněte pravým tlačítkem na databázový server, vyberte Nový dotaz a vytvořte nový dotaz pomocí následujícího příkazu. Vyberte Spustit a spusťte dotaz:
-- Create a new SQL login and give them a password CREATE LOGIN ApplicationUser WITH PASSWORD = 'YourStrongPassword1';
Tip
U většiny dotazů v Azure SQL Database musíte kliknout pravým tlačítkem na databázi na logickém serveru služby Azure SQL Database. V SQL Serveru a azure SQL Managed Instance můžete dotazovat na úrovni serveru a používat
USE <DatabaseName>
, ale ve službě Azure SQL Database musíte databázi dotazovat přímo. protože příkazUSE
není podporovaný. Při dotazování databáze ve službě Azure SQL Database existuje několik výjimek a jedna z nich se přihlašuje. Abyste mohli vytvářet a měnit přihlášení, musíte se připojit k virtuálnímaster
databázi.Teď máte přihlášení na úrovni serveru. Dalším krokem je vytvořit uživatele v
AdventureWorks
databázi a v případě potřeby jim udělit přístup pro čtení a zápis. Klikněte pravým tlačítkem naAdventureWorks
databázi a vyberte Nový dotaz. Vytvořte nový dotaz pomocí následujícího příkazu a pak vyberte Spustit:-- Create a new SQL user from that login CREATE USER ApplicationUser FOR LOGIN ApplicationUser; -- Until you run the following two lines, ApplicationUser has no access to read or write data ALTER ROLE db_datareader ADD MEMBER ApplicationUser; ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;
Uživatelé se budou moci přihlásit jenom k databázi AdventureWorks, ne k celému serveru.
Osvědčeným postupem je vytvářet na úrovni databáze účty bez oprávnění správce, pokud uživatelé nepotřebují spouštět úlohy správce.
Z SQL Serveru možná znáte princip uživatele obsažené databáze. To znamená, že uživatel má přístup jenom k určitým databázím, ale nemá přihlašovací údaje k serveru. Ve službě Azure SQL Database můžete vytvořit uživatele databáze s omezením s ověřováním SQL nebo ověřováním Microsoft Entra. Musíte být v kontextu uživatelské databáze, ke které chcete vytvořit přístup uživatele (na rozdíl od přístupu).
master
V nástroji SSMS klikněte pravým tlačítkem na databázi a vyberte Nový dotaz. Vytvořte nový dotaz pomocí následujícího příkazu a pak vyberte Spustit:CREATE USER MyDatabaseUser WITH PASSWORD = 'C0mpl3xPa55word!'
V levém horním rohu Průzkumník objektů vyberte Připojit a pak vyberteDatabázový stroj. Nakonfigurujte hlavní stránku tak, abyste se připojili k logickému serveru Azure SQL Database. Do pole Přihlášení zadejte MyDatabaseUser a do pole Heslo zadejte C0mpl3xPa55word!.
Musíte také nastavit název databáze. To můžete udělat tak, že přejdete na Možnosti>Další parametry připojení, kde můžete zadat
Initial Catalog=AdventureWorks
. To musíte provést ručně, protože uživatel MyDatabaseUser nemá přístup k prohlížení serveru, aby si mohl vybrat nějakou databázi.Vyberte Připojit a potvrďte, že máte přístup k databázi.
Jako krok vyčištění klikněte pravým tlačítkem myši na připojení z MyDatabaseUser a pak vyberte Odpojit.
Udělení přístupu jiným uživatelům Microsoft Entra
Přihlášení můžete vytvořit z účtů Microsoft Entra jako uživatel databáze s omezením pomocí CREATE USER [anna@contoso.com] FROM EXTERNAL PROVIDER
syntaxe T-SQL. Uživatel databáze s omezením se mapuje na identitu v adresáři Microsoft Entra přidruženém k databázi a nemá v master
databázi žádné přihlášení.
Se zavedením přihlášení k serveru Microsoft Entra ve službě Azure SQL Database můžete vytvářet přihlášení z objektů zabezpečení Microsoft Entra ve virtuální master
databázi služby SQL Database. Přihlášení Microsoft Entra můžete vytvořit z uživatelů, skupin a instančních objektů Microsoft Entra. Další informace naleznete v tématu Instanční objekty serveru Microsoft Entra
Kromě toho můžete pomocí webu Azure Portal vytvářet pouze správce a role řízení přístupu na základě role Azure se nešíří na logické servery Azure SQL Database. K udělení dalších oprávnění pro přístup k serveru a databázi musíte použít Transact-SQL (T-SQL).