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.
- Skapa och fylla i Microsoft Entra-ID.
- Skapa en Microsoft Entra-identitet
- Tilldela roll till skapad Microsoft Entra-identitet i Synapse-arbetsytan
- 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.
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.
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.
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.
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.
Funktioner och begränsningar i Microsoft Entra
Följande medlemmar i Microsoft Entra ID kan etableras i Synapse SQL:
- Interna medlemmar: En medlem som skapats i Microsoft Entra-ID i den hanterade domänen eller i en kunddomän. Mer information finns i Lägga till ditt eget domännamn i Microsoft Entra-ID.
- Federerade domänmedlemmar: En medlem som skapats i Microsoft Entra-ID med en federerad domän. Mer information finns i Distribuera Active Directory Federation Services (AD FS) i Azure.
- Importerade medlemmar från andra Azure-AD:er som är inbyggda eller federerade domänmedlemmar.
- Active Directory-grupper som skapats som säkerhetsgrupper.
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.
- 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
- 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
- En översikt över åtkomst och kontroll i Synapse SQL finns i Synapse SQL-åtkomstkontroll.
- Mer information om huvudkonton finns i Huvudkonton.
- Mer information om databasroller finns Databasroller.