Kurz: Zabezpečení databáze ve službě Azure SQL Database
Platí pro: Azure SQL Database
V tomto kurzu se naučíte:
- Vytvoření pravidel brány firewall na úrovni serveru a databáze
- Konfigurace správce Microsoft Entra
- Správa přístupu uživatelů pomocí ověřování SQL, ověřování Microsoft Entra a zabezpečených připojovací řetězec
- Povolení funkcí zabezpečení, jako je Microsoft Defender pro SQL, auditování, maskování dat a šifrování
Poznámka:
ID Microsoft Entra se dříve označovalo jako Azure Active Directory (Azure AD).
Azure SQL Database zabezpečuje data tím, že umožňuje:
- Omezení přístupu pomocí pravidel brány firewall
- Použití ověřovacích mechanismů, které vyžadují identitu
- Použití autorizace s členstvím a oprávněními založenými na rolích
- Povolení funkcí zabezpečení
Poznámka:
Spravovaná instance Azure SQL je zabezpečená pomocí pravidel zabezpečení sítě a privátních koncových bodů, jak je popsáno v architektuře azure SQL Managed Instance a připojení.
Další informace najdete v článcích s přehledem zabezpečení a možnostmi služby Azure SQL Database.
Tip
V tomto bezplatném modulu Learn se dozvíte, jak zabezpečit databázi ve službě Azure SQL Database.
Požadavky
K dokončení kurzu se ujistěte, že máte následující požadavky:
- SQL Server Management Studio
- Server a jedna databáze
- Vytvořte je pomocí webu Azure Portal, rozhraní příkazového řádku nebo PowerShellu.
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Přihlaste se k portálu Azure Portal.
Pro všechny kroky v kurzu se přihlaste k webu Azure Portal.
Vytvoření pravidel firewallu
Databáze ve službě SQL Database jsou chráněné branami firewall v Azure. Ve výchozím nastavení jsou všechna připojení k serveru a databázi odmítnuta. Další informace najdete v pravidlech brány firewall na úrovni serveru a databáze.
Nastavte možnost Povolit přístup ke službám Azure na vypnuto pro nejbezpečnější konfiguraci. Pak vytvořte rezervovanou IP adresu (klasické nasazení) pro prostředek, který se musí připojit, jako je virtuální počítač Azure nebo cloudová služba, a povolte přístup k této IP adrese pouze přes bránu firewall. Pokud používáte model nasazení Resource Manager , vyžaduje se pro každý prostředek vyhrazená veřejná IP adresa.
Poznámka:
SQL Database komunikuje přes port 1433. Pokud se pokoušíte připojit z podnikové sítě, vaše brána firewall možná nepovoluje odchozí přenosy přes port 1433. Pokud ano, nemůžete se připojit k serveru, pokud správce neotevře port 1433.
Nastavení pravidel brány firewall na úrovni serveru
Pravidla brány firewall protokolu IP na úrovni serveru platí pro všechny databáze na stejném serveru.
Nastavení pravidla brány firewall na úrovni serveru:
Na webu Azure Portal vyberte v nabídce vlevo databáze SQL a na stránce Databáze SQL vyberte svou databázi.
Poznámka:
Nezapomeňte zkopírovat plně kvalifikovaný název serveru (například yourserver.database.windows.net) pro pozdější použití v tomto kurzu.
V části Nastavení vyberte Sítě. Zvolte kartu Veřejný přístup a potom v části Přístup k veřejné síti vyberte Vybrané sítě. Zobrazí se část Pravidla brány firewall.
Vyberte Přidat IP adresu klienta na panelu nástrojů a přidejte aktuální IP adresu do nového pravidla brány firewall protokolu IP. Pravidlo brány firewall protokolu IP může otevřít port 1433 pro jednu IP adresu nebo rozsah IP adres.
Vyberte OK a uložte nastavení brány firewall.
Nyní se můžete pomocí zadané IP adresy nebo rozsahu IP adres připojit k jakékoli databázi na serveru.
Nastavení pravidel brány firewall databáze
Pravidla brány firewall na úrovni databáze platí jenom pro jednotlivé databáze. Databáze bude tato pravidla uchovávat během převzetí služeb při selhání serveru. Pravidla brány firewall na úrovni databáze je možné nakonfigurovat pouze pomocí příkazů jazyka Transact-SQL (T-SQL) a teprve po nakonfigurování pravidla brány firewall na úrovni serveru.
Nastavení pravidla brány firewall na úrovni databáze:
Připojte se k databázi, například pomocí aplikace SQL Server Management Studio.
V Průzkumník objektů klikněte pravým tlačítkem myši na databázi a vyberte Nový dotaz.
V okně dotazu přidejte tento příkaz a upravte IP adresu na vaši veřejnou IP adresu:
EXECUTE sp_set_database_firewall_rule N'Example DB Rule','0.0.0.4','0.0.0.4';
Na panelu nástrojů vyberte Spustit a vytvořte pravidlo brány firewall.
Poznámka:
Pravidlo brány firewall na úrovni serveru můžete vytvořit také v aplikaci SSMS pomocí příkazu sp_set_firewall_rule , i když musíte být připojeni k hlavní databázi.
Vytvoření správce Microsoft Entra
Ujistěte se, že používáte odpovídající spravovanou doménu Microsoft Entra ID (dříve Azure Active Directory). Pokud chcete vybrat svoji doménu, použijte pravý horní roh webu Azure Portal. Tento proces potvrdí, že se stejné předplatné používá pro ID Microsoft Entra i pro logický server hostující vaši databázi nebo datový sklad.
Nastavení správce Microsoft Entra:
Na webu Azure Portal na stránce SQL Serveru v nabídce prostředků vyberte Microsoft Entra ID a pak výběrem možnosti Nastavit správce otevřete podokno Microsoft Entra ID .
Důležité
Abyste mohli tuto úlohu provést, musíte být globálním správcem.
V podokně Microsoft Entra ID vyhledejte a vyberte uživatele nebo skupinu Microsoft Entra a zvolte Vybrat. Zobrazí se seznam všech členů a skupin vaší organizace Microsoft Entra a položky se šedě nepodporují jako správci Microsoft Entra.
Důležité
Řízení přístupu na základě role v Azure (Azure RBAC) se vztahuje jenom na portál a není rozšířeno na SQL Server.
V horní části stránky správce Microsoft Entra vyberte Uložit.
Proces změny správce může trvat několik minut. Nový správce se zobrazí v poli správce Microsoft Entra.
Poznámka:
Při nastavování správce Microsoft Entra nemůže nové jméno správce (uživatel nebo skupina) existovat jako přihlašovací jméno nebo uživatel v hlavní databázi. Pokud je k dispozici, nastavení se nezdaří a vrátí zpět změny, což znamená, že takový název správce již existuje. Vzhledem k tomu, že přihlášení k serveru nebo uživatel není součástí ID Microsoft Entra, veškeré úsilí o připojení uživatele pomocí ověřování Microsoft Entra selže.
Informace o konfiguraci ID Microsoft Entra najdete v tématu:
- Integrace místních identit s Microsoft Entra ID
- Přidání vlastního názvu domény do Microsoft Entra ID
- Federace s ID Microsoft Entra
- Správa adresáře Microsoft Entra
- Správa ID Microsoft Entra pomocí PowerShellu
- Požadované porty a protokoly hybridní identity
Správa přístupu k databázi
Umožňuje spravovat přístup k databázi přidáním uživatelů do databáze nebo povolením přístupu uživatelů pomocí zabezpečených připojovací řetězec. Připojovací řetězce jsou užitečné pro externí aplikace. Další informace najdete v tématu Správa přihlášení a uživatelských účtů a ověřování Microsoft Entra.
Pokud chcete přidat uživatele, zvolte typ ověřování databáze:
Ověřování SQL, použití uživatelského jména a hesla pro přihlášení a jsou platné pouze v kontextu konkrétní databáze na serveru
Ověřování Microsoft Entra, použití identit spravovaných ID Microsoft Entra
Ověřování SQL
Přidání uživatele s ověřováním SQL:
Připojte se k databázi, například pomocí aplikace SQL Server Management Studio.
V Průzkumník objektů klikněte pravým tlačítkem myši na databázi a zvolte Nový dotaz.
V okně dotazu zadejte následující příkaz:
CREATE USER ApplicationUser WITH PASSWORD = 'YourStrongPassword1';
Na panelu nástrojů vyberte Spustit a vytvořte uživatele.
Ve výchozím nastavení se uživatel může připojit k databázi, ale nemá žádná oprávnění ke čtení nebo zápisu dat. Pokud chcete udělit tato oprávnění, spusťte v novém okně dotazu následující příkazy:
ALTER ROLE db_datareader ADD MEMBER ApplicationUser; ALTER ROLE db_datawriter ADD MEMBER ApplicationUser;
Poznámka:
Vytvořte účty bez oprávnění správce na úrovni databáze, pokud nepotřebují provádět úlohy správce, jako je vytváření nových uživatelů.
Ověřování Microsoft Entra
Vzhledem k tomu, že Azure SQL Database nepodporuje instanční objekty (přihlášení) Microsoft Entra, vytvoří se uživatelé databáze vytvořené pomocí účtů Microsoft Entra jako uživatelé databáze s omezením. Uživatel databáze s omezením není přidružený k přihlášení v master
databázi, i když existuje přihlášení se stejným názvem. Identita Microsoft Entra může být pro jednotlivého uživatele nebo skupinu. Další informace naleznete v tématu Uživatelé databáze s omezením, aby vaše databáze přenosná a projděte si kurz Microsoft Entra o ověřování pomocí Microsoft Entra ID.
Poznámka:
Uživatele databáze (s výjimkou správců) nelze vytvořit pomocí webu Azure Portal. Role Microsoft Entra se nerozšírují na servery SQL, databáze ani datové sklady. Používají se jenom ke správě prostředků Azure a nevztahují se na oprávnění k databázi.
Například role Přispěvatel SQL Serveru neuděluje přístup pro připojení k databázi nebo datovému skladu. Toto oprávnění musí být uděleno v databázi pomocí příkazů T-SQL.
Důležité
Speciální znaky, jako je dvojtečka :
nebo ampersand &
, nejsou podporovány v uživatelských jménech v T-SQL CREATE LOGIN
a CREATE USER
příkazech.
Přidání uživatele s ověřováním Microsoft Entra:
Připojte se k serveru v Azure pomocí účtu Microsoft Entra s alespoň oprávněním ALTER ANY USER .
V Průzkumník objektů klikněte pravým tlačítkem myši na databázi a vyberte Nový dotaz.
V okně dotazu zadejte následující příkaz a upravte
<Azure_AD_principal_name>
hlavní název uživatele Microsoft Entra nebo zobrazovaný název skupiny Microsoft Entra:CREATE USER [<Azure_AD_principal_name>] FROM EXTERNAL PROVIDER;
Poznámka:
Uživatelé Microsoft Entra jsou v metadatech databáze označeni typem E (EXTERNAL_USER)
a typem X (EXTERNAL_GROUPS)
pro skupiny. Další informace najdete v tématu sys.database_principals.
Zabezpečení připojovací řetězec
Pokud chcete zajistit zabezpečené šifrované připojení mezi klientskou aplikací a službou SQL Database, musí být připojovací řetězec nakonfigurované na:
- Vyžádání šifrovaného připojení
- Nedůvěřuje certifikátu serveru
Připojení se naváže pomocí protokolu TLS (Transport Layer Security) a snižuje riziko útoku typu man-in-the-middle. Připojovací řetězce jsou dostupné pro každou databázi a jsou předem nakonfigurované tak, aby podporovaly klientské ovladače, jako jsou ADO.NET, JDBC, ODBC a PHP. Informace o protokolu TLS a možnostech připojení najdete v části věnované důležitým informacím o protokolu TLS.
Kopírování zabezpečeného připojovací řetězec:
Na webu Azure Portal vyberte v nabídce vlevo databáze SQL a na stránce Databáze SQL vyberte svou databázi.
Na stránce Přehled vyberte Zobrazit připojovací řetězec databáze.
Vyberte kartu ovladače a zkopírujte kompletní připojovací řetězec.
Povolení funkcí zabezpečení
Azure SQL Database poskytuje funkce zabezpečení, ke kterým se přistupuje pomocí webu Azure Portal. Tyto funkce jsou k dispozici pro databázi i server s výjimkou maskování dat, které jsou dostupné pouze v databázi. Další informace najdete v programu Microsoft Defender pro SQL, auditování, dynamické maskování dat a transparentním šifrování dat.
Microsoft Defender pro SQL
Funkce Microsoft Defenderu pro SQL detekuje potenciální hrozby při jejich výskytu a poskytuje výstrahy zabezpečení na neobvyklé aktivity. Uživatelé můžou tyto podezřelé události prozkoumat pomocí funkce auditování a určit, jestli událost měla přístup k datům v databázi, porušení zabezpečení nebo zneužití dat. Uživatelům se také poskytuje přehled zabezpečení, který zahrnuje posouzení ohrožení zabezpečení a nástroj pro zjišťování a klasifikaci dat.
Poznámka:
Příkladem hrozby je injektáž SQL, proces, při kterém útočníci do vstupů aplikace vloží škodlivé SQL. Aplikace pak může neúmyslně spustit škodlivý SQL a umožnit útočníkům přístup k narušení zabezpečení nebo úpravě dat v databázi.
Povolení Microsoft Defenderu pro SQL:
Na webu Azure Portal vyberte v nabídce vlevo databáze SQL a na stránce Databáze SQL vyberte svou databázi.
Na stránce Přehled vyberte odkaz na název serveru. Otevře se stránka serveru.
Na stránce SQL Serveru vyhledejte část Zabezpečení a vyberte Defender for Cloud.
Tuto funkci povolíte výběrem možnosti ZAPNUTO v programu Microsoft Defender for SQL . Zvolte účet úložiště pro ukládání výsledků posouzení ohrožení zabezpečení. Pak vyberte Uložit.
Můžete také nakonfigurovat e-maily pro příjem výstrah zabezpečení, podrobností o úložišti a typů detekce hrozeb.
Vraťte se na stránku databáze SQL vaší databáze a v části Zabezpečení vyberte Defender for Cloud. Tady najdete různé indikátory zabezpečení dostupné pro databázi.
Pokud se zjistí neobvyklé aktivity, obdržíte e-mail s informacemi o události. To zahrnuje povahu aktivity, databáze, serveru, času události, možných příčin a doporučených akcí pro zkoumání a zmírnění potenciální hrozby. Pokud takový e-mail obdržíte, vyberte odkaz protokolu auditování Azure SQL a spusťte Azure Portal a zobrazte relevantní záznamy auditování pro čas události.
Auditování
Funkce auditování sleduje události databáze a zapisuje události do protokolu auditu v úložišti Azure, protokolech služby Azure Monitor nebo do centra událostí. Auditování pomáhá zajistit dodržování předpisů, porozumět databázové aktivitě a získat přehled o nesrovnalostech a anomáliích, které můžou indikovat potenciální narušení zabezpečení.
Povolení auditování:
Na webu Azure Portal vyberte v nabídce vlevo databáze SQL a na stránce Databáze SQL vyberte svou databázi.
V části Zabezpečení vyberte Auditování.
V části Nastavení auditování nastavte následující hodnoty:
Nastavte Auditování na ZAPNUTO.
Jako cíl protokolu auditu vyberte některou z následujících možností:
Úložiště, účet úložiště Azure, ve kterém se ukládají protokoly událostí a které je možné stáhnout jako soubory .xel
Tip
Použijte stejný účet úložiště pro všechny auditované databáze, abyste získali maximum ze šablon sestav auditování.
Log Analytics, která automaticky ukládá události pro dotazování nebo další analýzu
Poznámka:
Pracovní prostor služby Log Analytics je nutný k podpoře pokročilých funkcí, jako jsou analýzy, vlastní pravidla upozornění a exporty Excelu nebo Power BI. Bez pracovního prostoru je k dispozici pouze editor dotazů.
Centrum událostí, které umožňuje směrování událostí pro použití v jiných aplikacích
Zvolte Uložit.
Teď můžete vybrat Zobrazit protokoly auditu a zobrazit data událostí databáze.
Důležité
Podívejte se na auditování služby SQL Database, jak dále přizpůsobit události auditu pomocí PowerShellu nebo rozhraní REST API.
Dynamické maskování dat
Funkce maskování dat automaticky skryje citlivá data v databázi.
Povolení maskování dat:
Na webu Azure Portal vyberte v nabídce vlevo databáze SQL a na stránce Databáze SQL vyberte svou databázi.
V části Zabezpečení vyberte Dynamické maskování dat.
V části Nastavení dynamického maskování dat vyberte Přidat masku a přidejte pravidlo maskování. Azure automaticky naplní dostupná schémata databáze, tabulky a sloupce, ze kterých si můžete vybrat.
Zvolte Uložit. Vybrané informace jsou teď maskované pro ochranu osobních údajů.
Transparentní šifrování dat
Funkce šifrování automaticky šifruje neaktivní uložená data a nevyžaduje žádné změny aplikací, které přistupují k šifrované databázi. U nových databází je šifrování ve výchozím nastavení zapnuté. Data můžete také šifrovat pomocí SSMS a funkce Always Encrypted .
Povolení nebo ověření šifrování:
Na webu Azure Portal vyberte v nabídce vlevo databáze SQL a na stránce Databáze SQL vyberte svou databázi.
V části Zabezpečení vyberte Transparentní šifrování dat.
V případě potřeby nastavte šifrování dat na ZAPNUTO. Zvolte Uložit.
Poznámka:
Pokud chcete zobrazit stav šifrování, připojte se k databázi pomocí aplikace SSMS a zadejte dotaz na encryption_state
sloupec zobrazení sys.dm_database_encryption_keys. Stav 3
indikuje, že databáze je zašifrovaná.
Poznámka:
Některé položky považované za zákaznický obsah, jako jsou názvy tabulek, názvy objektů a názvy indexů, se můžou přenášet v souborech protokolů pro podporu a řešení potíží od Microsoftu.
Související obsah
- Vyzkoušejte azure SQL Database zdarma (Preview)
- Co je nového ve službě Azure SQL Database?
- Konfigurace a správa referenčních informací k obsahu – Azure SQL Database
- Plánování a správa nákladů na službu Azure SQL Database
Tip
Jste připravení začít vyvíjet aplikaci .NET? V tomto bezplatném modulu Learn se dozvíte, jak vyvíjet a konfigurovat ASP.NET aplikaci, která dotazuje službu Azure SQL Database, včetně vytvoření jednoduché databáze.
Další krok
V dalším kurzu se dozvíte, jak implementovat geografickou distribuci.