Připojení k Azure Synapse Analytics pomocí ověřování Microsoft Entra

Tento článek vám ukáže, jak použít autentizaci Microsoft Entra k připojení k Azure Synapse Analytics.

Note

Microsoft Entra server principals jsou momentálně v preview pro Azure Synapse Analytics.

Prerequisites

Pro připojení je potřeba nastavit autentizaci Microsoft Entra pro váš zdroj Azure Synapse.

Pro ověření, že je správce Microsoft Entra správně nastaven, připojte se k databázi master pomocí administrátorského účtu Microsoft Entra.

Pro vytvoření obsaženého uživatele databáze založeného na Microsoft Entra se připojte k databázi pomocí identity Microsoft Entra s přístupem k databázi a alespoň oprávněním ALTER ANY USER.

Připojení pomocí SSMS nebo SSDT

Následující postupy vám ukážou, jak se připojit k Synapse SQL s identitou Microsoft Entra pomocí SQL Server Management Studio (SSMS) nebo SQL Server Database Tools (SSDT).

Integrované Microsoft Entra

Použijte tuto metodu, když se chcete přihlásit pomocí svých přihlašovacích údajů Windows, které jsou federovány do Microsoft Entra ID. Další informace naleznete v tématu Bezproblémové jednotné přihlašování Microsoft Entra.

  1. Spusťte SSMS nebo SSDT a na kartě Přihlášení dialogového okna Připojit k serveru (nebo Připojení k databázovému stroji):

    1. Zadejte plně kvalifikovaný název serveru pro váš SQL endpoint. Formáty koncových bodů najdete v článku Připojení k Synapse SQL.
    2. Pro ověřování vyberte Microsoft Entra Integrated. Nemusíte zadat heslo, protože pro připojení jsou zobrazeny vaše stávající přihlašovací údaje.
    3. Pro šifrování vyberte Přísné.
  2. Na kartě Vlastnosti připojení zadejte do pole Připojit k databázi název uživatelské databáze, ke které se chcete připojit.

Heslo pro Microsoft Entra

Použijte tuto metodu při připojování s názvem objektu zabezpečení Microsoft Entra pomocí spravované domény Microsoft Entra. Můžete ho také použít pro federované účty bez přístupu k doméně, například když pracujete na dálku.

Tuto metodu použijte k ověřování uživatelů v Synapse SQL s identitou pouze v cloudu v Microsoft Entra nebo uživatelů, kteří mají hybridní identity Microsoft Entra. Tato metoda podporuje uživatele, kteří chtějí používat své přihlašovací údaje Windows, když jejich lokální počítač není připojen k doméně, například při vzdáleném přístupu.

  1. Spusťte SSMS nebo SSDT a na kartě Přihlášení dialogového okna Připojit k serveru (nebo Připojení k databázovému stroji):

    1. Zadejte plně kvalifikovaný název serveru pro váš SQL endpoint. Formáty koncových bodů viz Připojení k Synapse SQL.
    2. V poli Ověřování vyberte Heslo Microsoft Entra.
    3. Do pole Uživatelské jméno zadejte své uživatelské jméno Microsoft Entra ve formátu username@domain.com. Uživatelská jména musí být účet z Microsoft Entra ID, nebo z účtu ze spravované nebo federované domény s Microsoft Entra ID.
    4. Do pole Heslo zadejte své uživatelské heslo pro účet Microsoft Entra nebo spravovaný nebo federovaný účet domény.
    5. Pro šifrování vyberte Přísné.
  2. Na kartě Vlastnosti připojení zadejte do pole Připojit k databázi název uživatelské databáze, ke které se chcete připojit.

Microsoft Entra MFA

Použijte tuto metodu pro interaktivní autentizaci s vícefaktorovou autentizací (MFA), přičemž heslo je interaktivně vyžadováno. Tato metoda může být použita k ověření do Synapse SQL pro uživatele s cloudovými identitami pouze v Microsoft Entra nebo uživatele s hybridními identitami Microsoft Entra.

Následující kroky ukazují, jak se připojit pomocí vícefaktorové autentizace v nejnovější verzi SSMS.

  1. Pro připojení pomocí MFA vyberte v dialogovém okně Connect to Server v SSMS Microsoft Entra MFA.

  2. Do pole Název serveru zadejte název serveru. Do pole Uživatelské jméno zadejte přihlašovací údaje Microsoft Entra ve formátu user_name@domain.com.

  3. Vyberte Připojit.

  4. Když se objeví dialogové okno Přihlášení do vašeho účtu , je předem vyplněno uživatelským jménem , které jste zadali v kroku 2. Pokud je uživatel součástí domény federované s ID Microsoft Entra, nevyžaduje se žádné heslo.

  5. Zobrazí se výzva k ověření pomocí jedné z metod nakonfigurovaných na základě nastavení správce vícefaktorového ověřování.

  6. Po dokončení ověření se SSMS normálně připojí za předpokladu, že jsou platné přihlašovací údaje a je zajištěn přístup k bráně firewall.

Microsoft Entra Service Principal

Použijte tuto metodu k ověření v Synapse SQL pomocí instančních objektů služby Microsoft Entra.

Spravovaná identita Microsoft Entra

Použijte tuto metodu k autentizaci do Synapse SQL pomocí spravovaných identit Microsoft Entra. Pro více informací viz Managed identities in Microsoft Entra for Azure Synapse Analytics.

Výchozí nastavení Microsoft Entra

Výchozí autentizační možnost s Microsoft Entra ID umožňuje autentizaci pomocí mechanismů bez hesel a bez interakce, včetně spravovaných identit.

Připojení z klientské aplikace

Následující postupy vám ukážou, jak se připojit k Synapse SQL pomocí identity Microsoft Entra z klientské aplikace. Tento seznam nezahrnuje všechny autentizační metody. Další informace najdete v tématu ověřování Microsoft Entra a SqlClient.

Konfigurace klientských aplikací

Note

System.Data.SqlClient používá knihovnu Azure Active Directory Authentication Library (ADAL), která je zastaralá. Pokud používáte obor názvů System.Data.SqlClient pro ověřování Microsoft Entra, migrujte aplikace na Microsoft.Data.SqlClient a Identity a ověřování Microsoftu (MSAL). Pro pochopení dostupných metod připojení v .NET viz Microsoft Entra autentizace a SqlClient.

Pokud musíte ADAL.DLL ve svých aplikacích nadále používat, použijte odkazy v této sekci k instalaci nejnovějšího ovladače ODBC nebo OLE DB, který obsahuje nejnovější knihovnu ADAL.DLL .

Na všech klientských strojích, ze kterých se vaše aplikace nebo uživatelé připojují k Azure Synapse Analytics pomocí Microsoft Entra identit, nainstalujte následující software:

Tyto požadavky můžete splnit takto:

  • Instalace nejnovější verze aplikace SQL Server Management Studio nebo SQL Server Data Tools tak, aby splňovala požadavek rozhraní .NET Framework 4.6.
    • SSMS nainstaluje verzi ADAL.DLL x86.
    • SSDT nainstaluje verzi amd64 ADAL.DLL.
    • Nejnovější Visual Studio z Visual Studio ke stažení splňuje požadavek rozhraní .NET Framework 4.6, ale nenainstaluje požadovanou verzi ADAL.DLL pro amd64.

Integrované ověřování Microsoft Entra

Pro použití integrovaného ověřování systému Windows musí být služba služba Active Directory vaší domény federována s Microsoft Entra ID nebo musí jít o spravovanou doménu nakonfigurovanou pro bezproblémové jednotné přihlašování při předávacím ověřování nebo ověřování pomocí hodnot hash hesel. Další informace naleznete v tématu Bezproblémové jednotné přihlašování Microsoft Entra.

Pro připojení k databázi musí aplikace (nebo služba) běžet na počítači připojeném k doméně pod doménovými přihlašovacími údaji uživatele.

Pro připojení k databázi pomocí integrované autentizace a identity Microsoft Entra nastavte klíčové slovo Authentication v databázovém připojovací řetězec na služba Active Directory Integrated. Nahraďte <server_name> názvem logického serveru. Následující ukázka kódu jazyka C# používá ADO .NET.

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Integrated; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

Klíčové slovo Integrated Security=True připojovací řetězec není podporováno pro připojení k Synapse SQL. Při vytváření ODBC připojení odstraňte mezery a nastavte autentizaci na ActiveDirectoryIntegrated.

Ověřování heslem Microsoft Entra

Pro připojení k databázi pomocí cloudových identitních účtů Microsoft Entra nebo uživatelů používajících hybridní identity Microsoft Entra nastavte klíčové slovo Authentication na služba Active Directory Password. Připojovací řetězec musí obsahovat uživatelská ID/UID a heslo/PWD klíčová slova a hodnoty. Nahraďte <server_name>, <email_address>a <password> odpovídajícími hodnotami. Následující ukázka kódu jazyka C# používá ADO .NET.

string ConnectionString =
@"Data Source=<server-name>.database.windows.net; Authentication=Active Directory Password; Initial Catalog=testdb; UID=<email_address>; PWD=<password>";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.Open();

Zjistěte více o metodách ověřování Microsoft Entra pomocí ukázek kódu dostupných na webu Microsoft Entra authentication GitHub Demo.

Přístupový token Microsoft Entra ID

Tato autentizační metoda umožňuje službám střední vrstvy získat JSON Web Tokens (JWT) z Microsoft Entra ID a připojit se k Synapse SQL získáním tokenu z Microsoft Entra ID. Tato metoda umožňuje různé scénáře aplikací, včetně identit služeb, instančních objektů a aplikací využívajících ověřování pomocí certifikátů. Abyste mohli používat ověřování pomocí tokenu Microsoft Entra, musíte provést čtyři základní kroky:

  1. Zaregistrujte aplikaci pomocí Microsoft Entra ID a získejte ID klienta pro váš kód.
  2. Vytvořte uživatele databáze představujícího aplikaci (jak je popsáno v části Vytvoření obsažených uživatelů mapovaných na identitu Microsoft Entra.)
  3. Vytvořte certifikát na klientském počítači, na kterém je aplikace spuštěna.
  4. Přidejte certifikát jako klíč pro vaši aplikaci.

Ukázkový připojovací řetězec Nahraďte <server-name> názvem logického serveru:

string ConnectionString = @"Data Source=<server-name>.database.windows.net; Initial Catalog=testdb;";
SqlConnection conn = new SqlConnection(ConnectionString);
conn.AccessToken = "Your JWT token";
conn.Open();

Informace o přidání certifikátu naleznete v tématu Začínáme s ověřováním na základě certifikátů v Microsoft Entra ID.

Vícefaktorové ověřování Microsoft Entra

Vícefaktorové ověřování Microsoft Entra je podporovaná metoda ověřování pro všechny nástroje SQL. Informace o programovém ověřování pomocí MICROSOFT Entra ID naleznete v tématu Přehled knihovny MSAL (Identity a ověřování Microsoftu).

sqlcmd

Následující příkazy SQL se připojují pomocí verze 13.1 sqlcmd. Stáhněte nástroje příkazového řádku Společnosti Microsoft 14.0 pro SQL Server.

Note

Příkaz sqlcmd-G nefunguje se systémovými identitami a vyžaduje přihlášení pomocí hlavního uživatelského účtu.

sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -G
sqlcmd -S <database or datawarehouse name>.<server-name>.database.windows.net -U adrian@contoso.com -P <password> -G -l 30