Microsoft Entra-autentisering som ett alternativ till SQL-autentisering
Gäller för:✅ SQL-analysslutpunkt och lager i Microsoft Fabric
Den här artikeln beskriver tekniska metoder som användare och kunder kan använda för att övergå från SQL-autentisering till Microsoft Entra-autentisering i Microsoft Fabric. Microsoft Entra-autentisering är ett alternativ till användarnamn och lösenord via SQL-autentisering för att logga in på SQL-analysslutpunkten för lakehouse eller lagret i Microsoft Fabric. Microsoft Entra-autentisering är tillrådligt och viktigt för att skapa en säker dataplattform.
Den här artikeln fokuserar på Microsoft Entra-autentisering som ett alternativ till SQL-autentisering i Microsoft Fabric-objekt, till exempel en Slutpunkt för Warehouse- eller Lakehouse SQL-analys.
Fördelar med Microsoft Entra-autentisering i Fabric
En av Microsoft Fabrics huvudprinciper är säker avsiktligt. Microsoft Entra är en integrerad del av Microsoft Fabrics säkerhet genom att säkerställa starkt dataskydd, styrning och efterlevnad.
Microsoft Entra spelar en viktig roll i Microsoft Fabrics säkerhet av flera skäl:
- Autentisering: Verifiera användare och tjänstens huvudnamn med hjälp av Microsoft Entra-ID, som beviljar åtkomsttoken för åtgärder i Fabric.
- Säker åtkomst: Anslut säkert till molnappar från valfri enhet eller nätverk och skydda begäranden som görs till Fabric.
- Villkorlig åtkomst: Administratörer kan ange principer som utvärderar användarens inloggningskontext, kontrollerar åtkomsten eller framtvingar extra verifieringssteg.
- Integrering: Microsoft Entra ID fungerar sömlöst med alla Microsoft SaaS-erbjudanden, inklusive Fabric, vilket ger enkel åtkomst mellan enheter och nätverk.
- Bred plattform: Få åtkomst till Microsoft Fabric med Microsoft Entra-ID via valfri metod, oavsett om det är via Fabric-portalen, SQL anslutningssträng, REST API eller XMLA-slutpunkten.
Microsoft Entra antar en fullständig Nolltillit princip som erbjuder ett överlägset alternativ till traditionell SQL-autentisering som är begränsad till användarnamn och lösenord. Den här metoden:
- Förhindrar personifiering av användare.
- Möjliggör detaljerad åtkomstkontroll med tanke på användaridentitet, miljö, enheter osv.
- Stöder avancerad säkerhet som Microsoft Entra multifaktorautentisering.
Infrastrukturkonfiguration
Microsoft Entra-autentisering för användning med en Slutpunkt för Warehouse- eller Lakehouse SQL-analys kräver konfiguration i både klient- och arbetsyteinställningar .
Klientinställning
En Infrastrukturadministratör i klientorganisationen måste tillåta spn-åtkomst (Service Principal Name) till Infrastruktur-API:er, vilket krävs för att SPN ska kunna användas för SQL-anslutningssträng till Fabric Warehouse eller SQL Analytics-slutpunktsobjekt.
Den här inställningen finns i avsnittet Inställningar för utvecklare och är märkt som Tjänstens huvudnamn kan använda Infrastruktur-API:er. Kontrollera att den är aktiverad.
Inställning för arbetsyta
En infrastrukturresursadministratör på din arbetsyta måste bevilja åtkomst för en användare eller SPN för att få åtkomst till infrastrukturresurser.
Det finns två sätt på vilka en användare/SPN kan beviljas åtkomst:
Bevilja en användare/SPN-medlemskap till en roll: Alla arbetsyteroller (administratör, medlem, deltagare eller läsare) räcker för att ansluta till lager- eller lakehouse-objekt med en SQL-anslutningssträng.
- I alternativet Hantera åtkomst på arbetsytan tilldelar du rollen Deltagare. Mer information finns i Tjänstroller.
Tilldela en användare/SPN till ett specifikt objekt: Bevilja åtkomst till ett specifikt lager- eller SQL-analysslutpunkt för en Lakehouse. En infrastrukturadministratör kan välja mellan olika behörighetsnivåer.
- Gå till relevant lager- eller SQL-analysslutpunktsobjekt.
- Välj Fler alternativ och sedan Hantera behörigheter. Välj Lägg till användare.
- Lägg till användar-/SPN på sidan Bevilja personer åtkomst .
- Tilldela nödvändiga behörigheter till en användare/SPN. Välj inga ytterligare behörigheter för att endast bevilja anslutningsbehörigheter.
Du kan ändra standardbehörigheterna som ges till användaren eller SPN av systemet. Använd kommandona T-SQL GRANT och DENY för att ändra behörigheter efter behov, eller ÄNDRA ROLL för att lägga till medlemskap i roller.
För närvarande har SPN inte funktionen som användarkonton för detaljerad behörighetskonfiguration med GRANT
/DENY
.
Stöd för användaridentiteter och tjänsthuvudnamn (SPN)
Fabric har inbyggt stöd för autentisering och auktorisering för Microsoft Entra-användare och tjänsthuvudnamn (SPN) i SQL-anslutningar till lager- och SQL-analysslutpunktsobjekt.
- Användaridentiteter är de unika autentiseringsuppgifterna för varje användare i en organisation.
- SPN representerar programobjekt i en klientorganisation och fungerar som identitet för instanser av program, med rollen att autentisera och auktorisera dessa program.
Stöd för tabelldataström (TDS)
Fabric använder TDS-protokollet (Tabular Data Stream), samma som SQL Server, när du ansluter med en anslutningssträng.
Fabric är kompatibelt med alla program eller verktyg som kan ansluta till en produkt med SQL Database Engine. På samma sätt som en SQL Server-instansanslutning fungerar TDS på TCP-port 1433. Mer information om SQL-anslutningar för infrastrukturresurser och hitta SQL-anslutningssträng finns i Anslutning.
Ett SQL-exempel anslutningssträng ser ut så här: <guid_unique_your_item>.datawarehouse.fabric.microsoft.com
.
Program och klientverktyg kan ange anslutningsegenskapen Authentication
i anslutningssträng för att välja ett Microsoft Entra-autentiseringsläge. I följande tabell beskrivs de olika autentiseringslägena för Microsoft Entra, inklusive stöd för MFA (Microsoft Entra multifactor authentication).
Autentiseringsläge | Scenarier | Kommentarer |
---|---|---|
Microsoft Entra Interactive | Används av program eller verktyg i situationer där användarautentisering kan ske interaktivt eller när det är acceptabelt att ha manuella åtgärder för verifiering av autentiseringsuppgifter. | Aktivera principer för villkorsstyrd åtkomst i MFA och Microsoft Entra för att framtvinga organisationsregler. |
Microsoft Entra-tjänstens huvudnamn | Används av appar för säker autentisering utan mänsklig inblandning, som passar bäst för programintegrering. | Vi rekommenderar att du aktiverar principer för villkorsstyrd åtkomst i Microsoft Entra. |
Microsoft Entra-lösenord | När program inte kan använda SPN-baserad autentisering på grund av inkompatibilitet, eller kräver ett allmänt användarnamn och lösenord för många användare, eller om andra metoder är omöjliga. | MFA måste vara inaktiverat och inga principer för villkorlig åtkomst kan anges. Vi rekommenderar att du verifierar med kundens säkerhetsteam innan du väljer den här lösningen. |
Drivrutinsstöd för Microsoft Entra-autentisering
De flesta SQL-drivrutinerna hade ursprungligen stöd för Microsoft Entra-autentisering, men de senaste uppdateringarna har utökat kompatibiliteten till att omfatta SPN-baserad autentisering. Den här förbättringen förenklar övergången till Microsoft Entra-autentisering för olika program och verktyg via drivrutinsuppgraderingar och lägger till stöd för Microsoft Entra-autentisering.
Ibland är det dock nödvändigt att justera ytterligare inställningar, till exempel att aktivera vissa portar eller brandväggar för att underlätta Microsoft Entra-autentisering på värddatorn.
Program och verktyg måste uppgradera drivrutiner till versioner som stöder Microsoft Entra-autentisering och lägga till nyckelordet autentiseringsläge i sql-anslutningssträng, till exempel ActiveDirectoryInteractive
, ActiveDirectoryServicePrincipal
eller ActiveDirectoryPassword
.
Fabric är kompatibelt med Microsofts inbyggda drivrutiner, inklusive OLE DB och Microsoft.Data.SqlClient
allmänna drivrutiner som ODBC och JDBC. Övergången för program att fungera med Fabric kan hanteras genom omkonfiguration för att använda Microsoft Entra ID-baserad autentisering.
Mer information finns i Anslutning till datalager i Microsoft Fabric.
Microsoft OLE DB
OLE DB-drivrutinen för SQL Server är ett fristående API för dataåtkomst som utformats för OLE DB och först släpptes med SQL Server 2005 (9.x). Sedan dess omfattar utökade funktioner SPN-baserad autentisering med version 18.5.0, vilket lägger till befintliga autentiseringsmetoder från tidigare versioner.
Autentiseringsläge | SQL anslutningssträng |
---|---|
Microsoft Entra Interactive | Interaktiv Microsoft Entra-autentisering |
Microsoft Entra-tjänstens huvudnamn | Microsoft Entra-tjänstens huvudnamnsautentisering |
Microsoft Entra-lösenord | Microsoft Entra-autentisering med användarnamn och lösenord |
Ett C#-kodfragment med OLE DB med SPN-baserad autentisering finns i System.Data.OLEDB.Connect.cs.
Microsoft ODBC-drivrutin
Microsoft ODBC-drivrutinen för SQL Server är ett enda DLL-bibliotek (Dynamic Link Library) som innehåller körningsstöd för program som använder api:er med inbyggd kod för att ansluta till SQL Server. Vi rekommenderar att du använder den senaste versionen för program som ska integreras med Fabric.
Mer information om Microsoft Entra-autentisering med ODBC finns i Använda Microsoft Entra-ID med ODBC-drivrutinsexempelkoden.
Autentiseringsläge | SQL-anslutningssträng |
---|---|
Microsoft Entra Interactive | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DB Name>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryInteractive |
Microsoft Entra-tjänstens huvudnamn | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryServicePrincipal |
Microsoft Entra-lösenord | DRIVER={ODBC Driver 18 for SQL Server};SERVER=<SQL Connection String>;DATABASE=<DBName>;UID=<Client_ID@domain>;PWD=<Secret>;Authentication=ActiveDirectoryPassword |
Ett python-kodfragment med ODBC med SPN-baserad autentisering finns i pyodbc-dw-connectivity.py.
Microsoft JDBC-drivrutin
Microsoft JDBC-drivrutinen för SQL Server är en JDBC-drivrutin av typ 4 som tillhandahåller databasanslutning via de vanliga JDBC-programprogramgränssnitten (API:er) som är tillgängliga på Java-plattformen.
Från och med version 9.2 mssql-jdbc
introducerar stöd för ActiveDirectoryInteractive
och ActiveDirectoryServicePrincipal
, med ActiveDirectoryPassword
stöd i version 12.2 och senare. Den här drivrutinen kräver ytterligare jars som beroenden, som måste vara kompatibla med den version av som mssql-driver
används i ditt program. Mer information finns i Funktionsberoenden för JDBC-drivrutin och krav på klientkonfiguration.
Autentiseringsläge | Mer information |
---|---|
Microsoft Entra Interactive | Ansluta med ActiveDirectoryInteractive-autentiseringsläge |
Microsoft Entra-tjänstens huvudnamn | Ansluta med autentiseringsläget ActiveDirectoryServicePrincipal |
Microsoft Entra-lösenord | Ansluta med autentiseringsläget ActiveDirectoryPassword |
Ett java-kodfragment med JDBC med SPN-baserad autentisering finns i fabrictoolbox/dw_connect.java och pom-exempelfil pom.xml.
Microsoft.Data.SqlClient i .NET Core (C#)
Microsoft.Data.SqlClient är en dataprovider för Microsoft SQL Server och Azure SQL Database. Det är en union av de två System.Data.SqlClient
komponenterna som finns oberoende av varandra i .NET Framework och .NET Core, vilket ger en uppsättning klasser för åtkomst till Microsoft SQL Server-databaser. Microsoft.Data.SqlClient
rekommenderas för all ny och framtida utveckling.
Autentiseringsläge | Mer information |
---|---|
Microsoft Entra Interactive | Använda interaktiv autentisering |
Microsoft Entra-tjänstens huvudnamn | Använda autentisering med tjänstens huvudnamn |
Microsoft Entra-lösenord | Använda lösenordsautentisering |
Kodfragment med hjälp av SPN: