Använda Microsoft Entra-autentisering för autentisering med Synapse SQL

Microsoft Entra-autentisering är en mekanism som ansluter till Azure Synapse Analytics med hjälp av identiteter i Microsoft Entra-ID.

Med Microsoft Entra-autentisering kan du centralt hantera användaridentiteter som har åtkomst till Azure Synapse för att förenkla behörighetshanteringen. Här är några av fördelarna:

  • Det är ett alternativ till vanlig autentisering av användarnamn och lösenord.
  • Hjälper till att stoppa spridningen av användaridentiteter mellan servrar.
  • Tillåter lösenordsrotation på en enda plats.
  • Kunder kan hantera behörigheter med hjälp av externa (Microsoft Entra ID)-grupper.
  • Det kan eliminera lagring av lösenord genom att aktivera integrerad Windows-autentisering och andra former av autentisering som stöds av Microsoft Entra-ID.
  • Microsoft Entra ID stöder tokenbaserad autentisering för program som ansluter till Azure Synapse.
  • Microsoft Entra-autentisering stöder ADFS (domänfederation) eller intern användar-/lösenordsautentisering för ett lokalt Microsoft Entra-ID utan domänsynkronisering.
  • Microsoft Entra ID stöder anslutningar från SQL Server Management Studio som använder Active Directory Universal Authentication, som omfattar multifaktorautentisering (MFA). MFA innehåller stark autentisering med en rad enkla verifieringsalternativ, inklusive telefonsamtal, sms, smartkort med pin-kod eller mobilappsavisering. Mer information finns i SSMS-stöd för Microsoft Entra multifaktorautentisering med Synapse SQL.
  • Microsoft Entra ID stöder liknande anslutningar från SQL Server Data Tools (SSDT) som använder interaktiv Active Directory-autentisering. Mer information finns i Microsoft Entra ID-stöd i SQL Server Data Tools (SSDT).

Konfigurationsstegen innehåller följande procedurer för att konfigurera och använda Microsoft Entra-autentisering.

  1. Skapa och fylla i Microsoft Entra-ID.
  2. Skapa en Microsoft Entra-identitet
  3. Tilldela roll till skapad Microsoft Entra-identitet i Synapse-arbetsytan
  4. Anslut till Synapse Studio med hjälp av Microsoft Entra-identiteter.

Microsoft Entra-genomströmning i Azure Synapse Analytics

Med Azure Synapse Analytics kan du komma åt data i datasjön med hjälp av din Microsoft Entra-identitet.

Genom att definiera åtkomsträttigheter för filer och data som respekteras i olika datamotorer kan du förenkla dina datasjölösningar genom att ha en enda plats där behörigheterna definieras i stället för att behöva definiera dem på flera platser.

Förtroendearkitektur

Följande diagram på hög nivå sammanfattar lösningsarkitekturen för att använda Microsoft Entra-autentisering med Synapse SQL. För att stödja microsoft entra-internt användarlösenord beaktas endast molndelen och Azure AD/Synapse Synapse SQL. För att stödja federerad autentisering (eller användare/lösenord för Windows-autentiseringsuppgifter) krävs kommunikationen med ADFS-blocket. Pilarna indikerar kommunikationsvägar.

Microsoft Entra auth diagram

Följande diagram visar federations-, förtroende- och värdrelationer som gör att en klient kan ansluta till en databas genom att skicka en token. Token autentiseras av ett Microsoft Entra-ID och är betrodd av databasen.

Kund 1 kan representera ett Microsoft Entra-ID med interna användare eller ett Microsoft Entra-ID med federerade användare. Kund 2 representerar en möjlig lösning, inklusive importerade användare. I det här exemplet kommer från ett federerat Microsoft Entra-ID med ADFS som synkroniseras med Microsoft Entra-ID.

Det är viktigt att förstå att åtkomst till en databas med Microsoft Entra-autentisering kräver att värdprenumerationen är associerad med Microsoft Entra-ID:t. Samma prenumeration måste användas för att skapa SQL Server som är värd för Azure SQL Database eller en dedikerad SQL-pool.

subscription relationship

Administratörsstruktur

När du använder Microsoft Entra-autentisering finns det två administratörskonton för Synapse SQL. den ursprungliga SQL-administratören (med SQL-autentisering) och Microsoft Entra-administratören. Endast administratören baserat på ett Microsoft Entra-konto kan skapa den första Microsoft Entra-ID:t som innehåller databasanvändaren i en användardatabas.

Microsoft Entra-administratörsinloggningen kan vara en Microsoft Entra-användare eller en Microsoft Entra-grupp. När administratören är ett gruppkonto kan det användas av valfri gruppmedlem, vilket möjliggör flera Microsoft Entra-administratörer för Synapse SQL-instansen.

Att använda gruppkonto som administratör förbättrar hanterbarheten genom att låta dig centralt lägga till och ta bort gruppmedlemmar i Microsoft Entra-ID utan att ändra användare eller behörigheter på Azure Synapse Analytics-arbetsytan. Endast en Microsoft Entra-administratör (en användare eller grupp) kan konfigureras när som helst.

admin structure

Behörigheter

Om du vill skapa nya användare måste du ha behörigheten ALTER ANY USER i databasen. Behörigheten ALTER ANY USER kan beviljas alla databasanvändare. Behörigheten ALTER ANY USER innehas också av SQL-administratörs- och Microsoft Entra-administratörskontona och databasanvändare med CONTROL ON DATABASE eller ALTER ON DATABASE behörighet för databasen och av medlemmar i databasrollen db_owner .

Om du vill skapa en innesluten databasanvändare i Synapse SQL måste du ansluta till databasen eller instansen med hjälp av en Microsoft Entra-identitet. Om du vill skapa den första inneslutna databasanvändaren måste du ansluta till databasen med hjälp av en Microsoft Entra-administratör (som är ägare till databasen).

All Microsoft Entra-autentisering är endast möjlig om Microsoft Entra-administratören skapades för Synapse SQL. Om Microsoft Entra-administratören har tagits bort från servern kan befintliga Microsoft Entra-användare som skapats tidigare i Synapse SQL inte längre ansluta till databasen med sina Microsoft Entra-autentiseringsuppgifter.

Inaktivera lokal autentisering

Genom att endast tillåta Microsoft Entra-autentisering kan du centralt hantera åtkomsten till Azure Synapse-resurser, till exempel SQL-pooler. Om du vill inaktivera lokal autentisering i Synapse när arbetsytan skapas väljer du Använd endast Microsoft Entra-autentisering som autentiseringsmetod. En SQL-administratörsinloggning skapas fortfarande, men den inaktiveras. Lokal autentisering kan aktiveras senare av en Azure-ägare eller deltagare på Synapse-arbetsytan.

Microsoft Entra-only auth configuration during workspace creation

Du kan också inaktivera lokal autentisering när en arbetsyta har skapats via Azure-portalen. Det går inte att inaktivera lokal autentisering förrän en Microsoft Entra-administratör har skapats för Azure Synapse-arbetsytan.

Microsoft Entra-only auth configuration after workspace creation

Funktioner och begränsningar i Microsoft Entra

  • Följande medlemmar i Microsoft Entra ID kan etableras i Synapse SQL:

  • Microsoft Entra-användare som ingår i en grupp som har db_owner serverroll kan inte använda syntaxen CREATE DATABASE SCOPED CREDENTIAL i Synapse SQL. Följande fel visas:

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

    Bevilja rollen db_owner direkt till den enskilda Microsoft Entra-användaren för att åtgärda problemet CREATE DATABASE SCOPED CREDENTIAL .

  • Dessa systemfunktioner returnerar NULL-värden när de körs under Microsoft Entra-huvudnamn:

    • SUSER_ID()
    • SUSER_NAME(<admin ID>)
    • SUSER_SNAME(<admin SID>)
    • SUSER_ID(<admin name>)
    • SUSER_SID(<admin name>)

Anslut med Microsoft Entra-identiteter

Microsoft Entra-autentisering stöder följande metoder för att ansluta till en databas med hjälp av Microsoft Entra-identiteter:

  • Microsoft Entra-lösenord
  • Microsoft Entra-integrerat
  • Microsoft Entra Universal med MFA
  • Använda autentisering med programtoken

Följande autentiseringsmetoder stöds för Microsoft Entra-serverhuvudkonton (inloggningar):

  • Microsoft Entra-lösenord
  • Microsoft Entra-integrerat
  • Microsoft Entra Universal med MFA

Ytterligare överväganden

  • För att förbättra hanterbarheten rekommenderar vi att du etablerar en dedikerad Microsoft Entra-grupp som administratör.
  • Endast en Microsoft Entra-administratör (en användare eller grupp) kan konfigureras för Synapse SQL-pooler när som helst.
    • Tillägget av Microsoft Entra-serverhuvudkonton (inloggningar) för Synapse SQL gör det möjligt att skapa flera Microsoft Entra-serverhuvudkonton (inloggningar) som kan läggas till i sysadmin rollen.
  • Endast en Microsoft Entra-administratör för Synapse SQL kan först ansluta till Synapse SQL med ett Microsoft Entra-konto. Active Directory-administratören kan konfigurera efterföljande Microsoft Entra-databasanvändare.
  • Vi rekommenderar att du ställer in tidsgränsen för anslutningen till 30 sekunder.
  • SQL Server 2016 Management Studio och SQL Server Data Tools för Visual Studio 2015 (version 14.0.60311.1April 2016 eller senare) stöder Microsoft Entra-autentisering. (Microsoft Entra-autentisering stöds av .NET Framework Data Provider för SqlServer, minst version .NET Framework 4.6). Därför är de senaste versionerna av dessa verktyg och datanivåprogram (DAC och . BACPAC) kan använda Microsoft Entra-autentisering.
  • Från och med version 15.0.1 stöder sqlcmd-verktyget och bcp-verktyget Active Directory Interaktiv autentisering med MFA.
  • SQL Server Data Tools för Visual Studio 2015 kräver minst april 2016-versionen av dataverktygen (version 14.0.60311.1). För närvarande visas inte Microsoft Entra-användare i SSDT Object Explorer. Som en lösning kan du visa användarna i sys.database_principals.
  • Microsoft JDBC Driver 6.0 för SQL Server stöder Microsoft Entra-autentisering. Se även Ange egenskaper för Anslut ion.
  • Microsoft Entra-administratörskontot styr åtkomsten till dedikerade pooler, medan Synapse RBAC-roller används för att styra åtkomsten till serverlösa pooler, till exempel med rollen Synapse-administratör och Synapse SQL-administratör . Konfigurera Synapse RBAC-roller via Synapse Studio. Mer information finns i Hantera Rolltilldelningar för Synapse RBAC i Synapse Studio.
  • Om en användare har konfigurerats som Microsoft Entra-administratör och Synapse-administratör och sedan tagits bort från administratörsrollen Microsoft Entra förlorar användaren åtkomsten till de dedikerade SQL-poolerna i Synapse. De måste tas bort och sedan läggas till i synapse-administratörsrollen för att få åtkomst till dedikerade SQL-pooler.

Nästa steg