Používání ověřování Microsoft Entra

Platí pro:Azure SQL DatabaseAzure SQL Managed InstanceAzure Synapse Analytics

Tento článek obsahuje přehled použití Microsoft Entra ID (dříve Azure Active Directory) k ověřování ve službě Azure SQL Database, Azure SQL Managed Instance, SQL Serveru na virtuálních počítačích s Windows Azure, Synapse SQL v Azure Synapse Analytics a SQL Serveru pro Windows a Linux.

Pokud chcete zjistit, jak vytvořit a naplnit ID Microsoft Entra a pak nakonfigurovat ID Microsoft Entra pomocí Azure SQL Database, Azure SQL Managed Instance a Synapse SQL ve službě Azure Synapse Analytics, přečtěte si téma Konfigurace ID Microsoft Entra a Microsoft Entra ID s SQL Serverem na virtuálních počítačích Azure.

Poznámka:

ID Microsoft Entra se dříve označovalo jako Azure Active Directory (Azure AD).

Přehled

Prostřednictvím ověřování služby Microsoft Entra můžete centrálně spravovat identity uživatelů databází a další služby Microsoftu z jednoho umístění. Centrální správa ID poskytuje jediné místo pro správu uživatelů databáze a zjednodušuje správu oprávnění. Mezi jeho výhody patří následující:

  • Poskytuje alternativu k ověřování SQL Serveru.

  • Pomáhá zastavit šíření identit uživatelů napříč servery.

  • Umožňuje obměně hesel na jednom místě.

  • Zákazníci můžou spravovat oprávnění k databázi pomocí skupin Microsoft Entra.

  • Může eliminovat ukládání hesel povolením integrovaného ověřování systému Windows a dalších forem ověřování podporovaných id Microsoft Entra.

  • Ověřování Microsoft Entra používá uživatele databáze s omezením k ověřování identit na úrovni databáze.

  • Microsoft Entra ID podporuje ověřování na základě tokenů pro aplikace, které se připojují ke službě SQL Database a spravované instanci SQL.

  • Ověřování Microsoft Entra podporuje:

    • Microsoft Entra – pouze cloudové identity.
    • Hybridní identity Microsoft Entra, které podporují:
      • Cloudové ověřování se dvěma možnostmi v kombinaci s bezproblémovým předávacím ověřováním jednotného přihlašování (SSO) a ověřováním hodnot hash hesel
      • Federovaného ověřování.
    • Další informace o metodách ověřování Microsoft Entra a o tom, které z nich zvolit, najdete v následujícím článku:
  • SQL Server Management Studio podporuje připojení, která používají Microsoft Entra s vícefaktorovým ověřováním. Vícefaktorové ověřování poskytuje silné ověřování s celou řadou možností snadného ověření – telefonní hovor, textová zpráva, čipové karty s pin kódem nebo oznámením mobilní aplikace. Další informace najdete v tématu Podpora SSMS pro vícefaktorové ověřování Microsoft Entra pomocí Azure SQL Database, SQL Managed Instance a Azure Synapse.

  • SQL Server Data Tools (SSDT) také podporuje širokou škálu možností ověřování s Microsoft Entra ID. Další informace naleznete v tématu Podpora Microsoft Entra ID v SQL Server Data Tools (SSDT).

Kroky konfigurace zahrnují následující postupy konfigurace konfigurace a použití ověřování Microsoft Entra.

  1. Vytvořte a naplňte tenanta Microsoft Entra.
  2. Volitelné: Přidružte nebo změňte aktuální adresář přidružený k vašemu předplatnému Azure.
  3. Vytvořte správce Microsoft Entra.
  4. Nakonfigurujte klientské počítače.
  5. Vytvořte uživatele databáze s omezením ve vaší databázi namapovanou na identity Microsoft Entra.
  6. Připojení do databáze s identitami Microsoft Entra.

Poznámka:

V případě Azure SQL, virtuálních počítačů Azure a SQL Serveru 2022 podporuje ověřování Microsoft Entra pouze přístupové tokeny pocházející z Microsoft Entra ID a nepodporuje přístupové tokeny třetích stran. ID Microsoft Entra také nepodporuje přesměrování dotazů Microsoft Entra ID na koncové body třetích stran. To platí pro všechny platformy SQL a všechny operační systémy, které podporují ověřování Microsoft Entra.

Architektura důvěryhodnosti

  • Za podporu nativních uživatelských hesel Microsoft Entra se považuje pouze cloudová část Microsoft Entra ID, SQL Database, SQL Managed Instance, SQL Server na virtuálních počítačích Azure s Windows a Azure Synapse.
  • Chcete-li podporovat přihlašovací údaje jednotného přihlašování systému Windows (nebo uživatele nebo heslo pro přihlašovací údaje systému Windows), použijte přihlašovací údaje Microsoft Entra z federované nebo spravované domény, která je nakonfigurovaná pro bezproblémové jednotné přihlašování pro předávací ověřování a ověřování hash hesel. Další informace naleznete v tématu Bezproblémové jednotné přihlašování Microsoft Entra.
  • Pokud chcete podporovat federované ověřování (nebo heslo nebo heslo pro přihlašovací údaje Systému Windows), vyžaduje se komunikace s blokem ADFS.

Další informace o hybridních identitách Microsoft Entra, nastavení a synchronizaci najdete v následujících článcích:

Ukázkové federované ověřování s infrastrukturou ADFS (nebo uživatelským/heslem pro přihlašovací údaje windows) najdete v následujícím diagramu. Šipky označují komunikační cesty.

Diagram of Microsoft Entra authentication for Azure SQL.

Následující diagram označuje vztahy federace, důvěryhodnosti a hostování, které klientovi umožňují připojit se k databázi odesláním tokenu. Token se ověřuje pomocí ID Microsoft Entra a databáze ho důvěřuje. Zákazník 1 může představovat ID Microsoft Entra s nativními uživateli nebo Id Microsoft Entra s federovanými uživateli. Zákazník 2 představuje možné řešení, včetně importovaných uživatelů, v tomto příkladu pocházejícího z federovaného ID Microsoft Entra s ADFS, které se synchronizují s Microsoft Entra ID. Je důležité pochopit, že přístup k databázi pomocí ověřování Microsoft Entra vyžaduje, aby k ID Microsoft Entra bylo přidružené předplatné hostování. Stejné předplatné se musí použít k vytvoření prostředků Azure SQL Database, SQL Managed Instance nebo Azure Synapse.

Diagram shows the relationship between subscriptions in the Microsoft Entra configuration.

Správa istrator – struktura

Při použití ověřování Microsoft Entra existují dva účty Správa istrator: původní správce služby Azure SQL Database a správce Microsoft Entra. Stejné koncepty platí pro Azure Synapse. Pouze správce založený na účtu Microsoft Entra může vytvořit prvního uživatele databáze microsoft Entra ID obsažené v uživatelské databázi. Přihlášení správce Microsoft Entra může být uživatel Microsoft Entra nebo skupina Microsoft Entra. Pokud je správcem účet skupiny, může ho používat libovolný člen skupiny a povolit pro server více správců Microsoft Entra. Použití skupinového účtu jako správce zlepšuje možnosti správy tím, že umožňuje centrálně přidávat a odebírat členy skupiny v Microsoft Entra ID beze změny uživatelů nebo oprávnění ve službě SQL Database nebo Azure Synapse. Kdykoli je možné nakonfigurovat pouze jednoho správce Microsoft Entra (uživatele nebo skupiny).

Diagram shows the administrator structure for Microsoft Entra ID used with SQL Server.

Poznámka:

Ověřování Microsoft Entra s Azure SQL podporuje pouze jednoho tenanta Microsoft Entra, ve kterém se aktuálně nachází prostředek Azure SQL. Všechny objekty Microsoft Entra z tohoto tenanta je možné nastavit jako uživatelé, kteří v tomto tenantovi povolují přístup k Azure SQL. Správce Microsoft Entra musí být také z tenanta prostředku Azure SQL. Ověřování Microsoft Entra pro více tenantů, které přistupuje k Azure SQL z různých tenantů, se nepodporuje.

Oprávnění

Pokud chcete vytvořit nové uživatele, musíte mít ALTER ANY USER oprávnění v databázi. Oprávnění ALTER ANY USER lze udělit libovolnému databázovému uživateli. Oprávnění ALTER ANY USER jsou také uložena účty správce serveru a uživatelé databáze s oprávněním CONTROL ON DATABASE nebo ALTER ON DATABASE oprávněním pro tuto databázi a členy db_owner databázové role.

Pokud chcete vytvořit uživatele databáze s omezením ve službě Azure SQL Database, Azure SQL Managed Instance nebo Azure Synapse, musíte se k databázi nebo instanci připojit pomocí identity Microsoft Entra. Pokud chcete vytvořit prvního uživatele databáze s omezením, musíte se k databázi připojit pomocí správce Microsoft Entra (který je vlastníkem databáze). Toto je znázorněno v tématu Konfigurace a správa ověřování Microsoft Entra pomocí služby SQL Database nebo Azure Synapse. Ověřování Microsoft Entra je možné pouze v případě, že byl vytvořen správce Microsoft Entra pro Azure SQL Database, Azure SQL Managed Instance nebo Azure Synapse. Pokud byl správce Microsoft Entra odebrán ze serveru, stávající uživatelé Microsoft Entra vytvořené dříve uvnitř serveru se už nemůžou připojit k databázi pomocí svých přihlašovacích údajů Microsoft Entra.

Funkce a omezení Microsoft Entra

  • Pro Azure SQL Database je možné zřídit následující členy Microsoft Entra ID:

    • Uživatelé Microsoft Entra: Libovolný typ uživatele v tenantovi Microsoft Entra, včetně interních, externích, hostů a členů. Podporují se také členové domény Active Directory nakonfigurované pro federaci s ID Microsoft Entra a dají se nakonfigurovat pro bezproblémové jednotné přihlašování.
    • Aplikace: Aplikace, které existují v Azure, můžou k ověřování přímo ve službě Azure SQL Database používat instanční objekty nebo spravované identity. Použití spravovaných identit pro ověřování se upřednostňuje kvůli tomu, že je bez hesla a eliminuje potřebu přihlašovacích údajů spravovaných vývojářem.
    • Skupiny Microsoft Entra, které můžou zjednodušit správu přístupu ve vaší organizaci tím, že spravují odpovídající přístup uživatelů a aplikací na základě členství ve skupině.
  • Uživatelé Microsoft Entra, kteří jsou součástí skupiny, která je členem db_owner databázové role, nemůžou pro Azure SQL Database a Azure Synapse použít syntaxi CREDENTIAL CREATE DATABASE SCOPED. Zobrazí se následující chyba:

    SQL Error [2760] [S0001]: The specified schema name 'user@mydomain.com' either doesn't exist or you do not have permission to use it.

    Chcete-li zmírnit problém CREATE DATABASE SCOPED CREDENTIAL , přidejte roli přímo jednotlivým uživatelům db_owner Microsoft Entra.

  • Tyto systémové funkce nejsou podporovány a při provádění objektů zabezpečení Microsoft Entra vracejí hodnoty NULL:

    • SUSER_ID()
    • SUSER_NAME(<ID>)
    • SUSER_SNAME(<SID>)
    • SUSER_ID(<name>)
    • SUSER_SID(<name>)
  • Azure SQL Database nevytváří implicitní uživatele pro uživatele přihlášené jako součást členství ve skupině Microsoft Entra. Z tohoto důvodu se nezdaří různé operace, které vyžadují přiřazení vlastnictví, i když je skupina Microsoft Entra přidána jako člen do role s těmito oprávněními.

    Například uživatel přihlášený k databázi prostřednictvím skupiny Microsoft Entra s rolí db_ddladmin nebude moct spouštět příkazy CREATE SCHEMA, ALTER SCHEMA a jiného objektu bez explicitně definovaného schématu (například tabulky, zobrazení nebo typu). Chcete-li tento problém vyřešit, musí být pro tohoto uživatele vytvořen uživatel Microsoft Entra nebo musí být změněna skupina Microsoft Entra pro přiřazení DEFAULT_SCHEMA dbo.

Spravovaná instance SQL

  • Pro službu SQL Managed Instance se podporují objekty zabezpečení serveru Microsoft Entra (přihlášení) a uživatelé.

  • Nastavení přihlášení Microsoft Entra namapovaných na skupinu Microsoft Entra jako vlastník databáze není ve službě SQL Managed Instance podporováno.

    • Rozšířením je to, že když se skupina přidá jako součást dbcreator role serveru, můžou se uživatelé z této skupiny připojit ke spravované instanci SQL a vytvářet nové databáze, ale nebudou mít k databázi přístup. Důvodem je, že novým vlastníkem databáze je SA, nikoli uživatel Microsoft Entra. Tento problém se neprojeví, pokud je jednotlivý uživatel přidaný do dbcreator role serveru.
  • Spouštění úloh a správy agenta SQL se podporuje pro přihlášení Microsoft Entra.

  • Operace zálohování a obnovení databáze můžou provádět instanční objekty serveru Microsoft Entra (přihlášení).

  • Podporuje se auditování všech příkazů souvisejících s objekty zabezpečení serveru Microsoft Entra (přihlášení) a událostmi ověřování.

  • Podporováno je vyhrazené připojení správce pro objekty zabezpečení serveru Microsoft Entra (přihlášení), které jsou členy role serveru sysadmin.

    • Podporuje se prostřednictvím nástroje SQLCMD a aplikace SQL Server Management Studio.
  • Triggery přihlášení jsou podporovány pro události přihlášení pocházející z instančních objektů serveru Microsoft Entra (přihlášení).

  • Pomocí instančního objektu serveru Microsoft Entra (přihlášení) je možné nastavit službu Service Broker a poštu DB.

Připojení pomocí identit Microsoft Entra

Ověřování Microsoft Entra podporuje následující metody připojení k databázi pomocí identit Microsoft Entra:

  • Heslo Microsoft Entra
  • Integrovaná aplikace Microsoft Entra
  • Microsoft Entra Universal s vícefaktorovým ověřováním
  • Použití ověřování tokenu aplikace

Pro objekty zabezpečení serveru Microsoft Entra (přihlášení) se podporují následující metody ověřování:

  • Heslo Microsoft Entra
  • Integrovaná aplikace Microsoft Entra
  • Microsoft Entra Universal s vícefaktorovým ověřováním

Další důležité informace

  • Pokud chcete zlepšit možnosti správy, doporučujeme zřídit vyhrazenou skupinu Microsoft Entra jako správce.
  • Pro server ve službě SQL Database nebo Azure Synapse je možné kdykoli nakonfigurovat pouze jednoho správce Microsoft Entra (uživatele nebo skupiny).
    • Přidání instančních objektů serveru Microsoft Entra (přihlášení) pro službu SQL Managed Instance umožňuje vytvořit více objektů zabezpečení serveru Microsoft Entra (přihlášení), které je možné přidat do sysadmin role.
  • K serveru se může nejprve připojit pouze správce Microsoft Entra nebo spravované instance pomocí účtu Microsoft Entra. Správce Microsoft Entra může nakonfigurovat další uživatele databáze Microsoft Entra.
  • Uživatelé a instanční objekty Microsoft Entra (aplikace Microsoft Entra), které jsou členy více než 2048 skupin zabezpečení Microsoft Entra, nejsou podporovány pro přihlášení k databázi ve službě SQL Database, SQL Managed Instance nebo Azure Synapse.
  • Doporučujeme nastavit časový limit připojení na 30 sekund.
  • SQL Server 2016 Management Studio a SQL Server Data Tools for Visual Studio 2015 (verze 14.0.60311.1April 2016 nebo novější) podporují ověřování Microsoft Entra. (Ověřování Microsoft Entra podporuje rozhraní .NET Framework Zprostředkovatel dat pro SqlServer; minimálně verze rozhraní .NET Framework 4.6). Nejnovější verze těchto nástrojů a aplikací datové vrstvy (DAC a BACPAC) proto můžou používat ověřování Microsoft Entra.
  • Počínaje verzí 15.0.1 podporují nástroj sqlcmd a nástroj bcp interaktivní ověřování služby Active Directory s vícefaktorovým ověřováním.
  • SQL Server Data Tools for Visual Studio 2015 vyžaduje aspoň verzi datových nástrojů z dubna 2016 (verze 14.0.60311.1). V současné době se uživatelé Microsoft Entra nezobrazují v Průzkumník objektů SSDT. Jako alternativní řešení si prohlédněte uživatele v sys.database_principals.
  • Ovladač Microsoft JDBC 6.0 pro SQL Server podporuje ověřování Microsoft Entra. Viz Také nastavení vlastností Připojení ionu.
  • PolyBase se nemůže ověřit pomocí ověřování Microsoft Entra.
  • Ověřování Microsoft Entra se podporuje pro Azure SQL Database a Azure Synapse pomocí oken Databáze importu a exportu databáze na webu Azure Portal. Import a export pomocí ověřování Microsoft Entra se podporuje také z příkazu PowerShellu.
  • Ověřování Microsoft Entra se podporuje pro SLUŽBU SQL Database, SQL Managed Instance a Azure Synapse pomocí rozhraní příkazového řádku. Další informace najdete v tématu Konfigurace a správa ověřování Microsoft Entra pomocí služby SQL Database nebo Azure Synapse a SQL Serveru – az sql server.

Další kroky