Konfigurera Kerberos-baserad enkel inloggning från Power BI-tjänst till lokala datakällor

Genom att aktivera enkel inloggning är det enkelt för Power BI-rapporter och instrumentpaneler att uppdatera data från lokala källor samtidigt som behörigheter på användarnivå som konfigurerats för dessa källor respekteras. Använd Kerberos-begränsad delegering för att aktivera sömlös SSO-anslutning.

Den här artikeln beskriver de steg du behöver vidta för att konfigurera Kerberos-baserad enkel inloggning från Power BI-tjänst till lokala datakällor.

Förutsättningar

Flera objekt måste konfigureras för att Kerberos-begränsad delegering ska fungera korrekt, inklusive *SPN (Service Principal Names) och delegeringsinställningar för tjänstkonton.

Kommentar

Det går inte att använda DNS-alias med enkel inloggning.

Konfigurationsdisposition

Stegen som krävs för att konfigurera enkel inloggning med gateway beskrivs nedan.

  1. Slutför alla steg i avsnitt 1: Grundläggande konfiguration.

  2. Beroende på din Active Directory-miljö och de datakällor som används kan du behöva slutföra en del av eller hela konfigurationen som beskrivs i avsnitt 2: Miljöspecifik konfiguration.

    Möjliga scenarier som kan kräva ytterligare konfiguration visas nedan:

    Scenario Gå till
    Din Active Directory-miljö är säkerhetshärdad. Lägga till gatewaytjänstkonto i Windows-auktorisering och åtkomstgrupp
    Gatewaytjänstkontot och användarkontona som gatewayen personifierar finns i separata domäner eller skogar. Lägga till gatewaytjänstkonto i Windows-auktorisering och åtkomstgrupp
    Du har inte Microsoft Entra-Anslut med användarkontosynkronisering konfigurerad och UPN som används i Power BI för användare matchar inte UPN i din lokala Active Directory-miljö. Ange konfigurationsparametrar för användarmappning på gatewaydatorn
    Du planerar att använda en SAP HANA-datakälla med enkel inloggning. Slutför konfigurationssteg för datakälla
    Du planerar att använda en SAP BW-datakälla med enkel inloggning. Slutför konfigurationssteg för datakälla
    Du planerar att använda en Teradata-datakälla med enkel inloggning. Slutför konfigurationssteg för datakälla
  3. Verifiera konfigurationen enligt beskrivningen i avsnitt 3: Verifiera konfigurationen för att säkerställa att enkel inloggning har konfigurerats korrekt.

Avsnitt 1: Grundläggande konfiguration

Steg 1: Installera och konfigurera microsofts lokala datagateway

Den lokala datagatewayen stöder en uppgradering på plats och inställningsövertagande av befintliga gatewayer.

Steg 2: Skaffa domänadministratörsbehörighet för att konfigurera SPN (SetSPN) och Kerberos-begränsade delegeringsinställningar

Om du vill konfigurera INSTÄLLNINGAR för SPN och Kerberos-delegering bör en domänadministratör undvika att bevilja rättigheter till någon som inte har domänadministratörsbehörighet. I följande avsnitt går vi igenom de rekommenderade konfigurationsstegen mer detaljerat.

Steg 3: Konfigurera gatewaytjänstkontot

Alternativ A nedan är den konfiguration som krävs om du inte har både Microsoft Entra Anslut konfigurerade och användarkonton synkroniseras. I så fall rekommenderas alternativ B.

Alternativ A: Kör gatewayens Windows-tjänst som ett domänkonto med SPN

I en standardinstallation körs gatewayen som det datorlokala tjänstkontot NT Service\PBIEgwService.

Datorlokalt tjänstkonto

Om du vill aktivera Kerberos-begränsad delegering måste gatewayen köras som ett domänkonto, såvida inte din Microsoft Entra-instans redan har synkroniserats med din lokala Active Directory-instans (med hjälp av Microsoft Entra DirSync/Anslut). Information om hur du växlar till ett domänkonto finns i Ändra gatewaytjänstkontot.

Konfigurera ett SPN för gatewaytjänstkontot

Kontrollera först om ett SPN redan har skapats för det domänkonto som används som gatewaytjänstkonto:

  1. Starta snapin-modulen Active Directory - användare och datorer Microsoft Management Console (MMC) som domänadministratör.

  2. I den vänstra rutan högerklickar du på domännamnet, väljer Sök och anger sedan kontonamnet för gatewaytjänstkontot.

  3. Högerklicka på gatewaytjänstkontot i sökresultatet och välj Egenskaper.

  4. Om fliken Delegering visas i dialogrutan Egenskaper har ett SPN redan skapats och du kan gå vidare till Konfigurera Kerberos-begränsad delegering.

  5. Om det inte finns någon delegeringsflik i dialogrutan Egenskaper kan du manuellt skapa ett SPN för kontot för att aktivera det. Använd setpn-verktyget som medföljer Windows (du behöver domänadministratörsbehörighet för att skapa SPN).

    Anta till exempel att gatewaytjänstkontot är Contoso\GatewaySvc och att gatewaytjänsten körs på datorn med namnet MyGatewayMachine. Kör följande kommando för att ange SPN för gatewaytjänstkontot:

    setspn -S gateway/MyGatewayMachine Contoso\GatewaySvc

    Du kan också ange SPN med hjälp av snapin-modulen Active Directory - användare och datorer MMC.

Alternativ B: Konfigurera datorn för Microsoft Entra Anslut

Om Microsoft Entra Anslut har konfigurerats och användarkonton synkroniseras behöver gatewaytjänsten inte utföra lokala Microsoft Entra-sökningar vid körning. I stället kan du helt enkelt använda det lokala tjänst-SID:t för gatewaytjänsten för att slutföra all nödvändig konfiguration i Microsoft Entra-ID. Konfigurationsstegen för Kerberos-begränsad delegering som beskrivs i den här artikeln är desamma som de konfigurationssteg som krävs i Microsoft Entra-kontexten. De tillämpas på gatewayens datorobjekt (som identifieras av den lokala tjänstens SID) i Microsoft Entra-ID i stället för domänkontot. Den lokala tjänsten SID för NT SERVICE/PBIEgwService är följande:

S-1-5-80-1835761534-3291552707-3889884660-1303793167-3990676079

Om du vill skapa SPN för detta SID mot Power BI Gateway-datorn måste du köra följande kommando från en administrativ kommandotolk (ersätt <COMPUTERNAME> med namnet på Power BI Gateway-datorn):

SetSPN -s HTTP/S-1-5-80-1835761534-3291552707-3889884660-1303793167-3990676079 <COMPUTERNAME>

Kommentar

Beroende på dina lokala säkerhetsinställningar kan du behöva lägga till gatewaytjänstkontot NT SERVICE\PBIEgwService i den lokala gruppen Administratörer på gatewaydatorn och sedan starta om gatewaytjänsten i gatewayappen. Det här alternativet stöds inte för scenarier som har flera gatewayer, eftersom Active Directory framtvingar unika SPN i en hel skog. I dessa scenarier använder du alternativ A i stället.

Steg 4: Konfigurera Kerberos-begränsad delegering

Du kan konfigurera delegeringsinställningar för antingen Standard Kerberos-begränsad delegering eller resursbaserad Kerberos-begränsad delegering. Mer information om skillnaderna mellan de två delegeringsmetoderna finns i Översikt över Kerberos-begränsad delegering.

Följande tjänstkonton krävs:

  • Gateway-tjänstkonto: Tjänstanvändare som representerar gatewayen i Active Directory, med ett SPN konfigurerat i steg 3.
  • Tjänstkonto för datakälla: Tjänstanvändare som representerar datakällan i Active Directory, med ett SPN mappat till datakällan.

Kommentar

Gateway- och datakällans tjänstkonton måste vara separata. Samma tjänstkonto kan inte användas för att representera både gatewayen och datakällan.

Beroende på vilken metod du vill använda går du vidare till något av följande avsnitt. Slutför inte båda avsnitten:

Alternativ A: Standard Kerberos-begränsad delegering

Nu ska vi ange delegeringsinställningarna för gatewaytjänstkontot. Det finns flera verktyg som du kan använda för att utföra de här stegen. Här använder vi snapin-modulen Active Directory - användare och datorer MMC för att administrera och publicera information i katalogen. Den är tillgänglig på domänkontrollanter som standard. på andra datorer kan du aktivera det via Windows-funktionskonfiguration.

Vi måste konfigurera Kerberos-begränsad delegering med protokollövergång. Med begränsad delegering måste du vara tydlig med vilka tjänster du tillåter gatewayen att presentera delegerade autentiseringsuppgifter för. Till exempel accepterar endast SQL Server eller SAP HANA-servern delegeringsanrop från gatewaytjänstkontot.

Det här avsnittet förutsätter att du redan har konfigurerat SPN för dina underliggande datakällor (till exempel SQL Server, SAP HANA, SAP BW, Teradata eller Spark). Om du vill lära dig hur du konfigurerar dessa SPN för datakällservern läser du den tekniska dokumentationen för respektive databasserver och läser avsnittet Vad SPN kräver din app? i blogginlägget Min Kerberos Checklista .

I följande steg förutsätter vi en lokal miljö med två datorer i samma domän: en gatewaydator och en databasserver som kör SQL Server som redan har konfigurerats för Kerberos-baserad enkel inloggning. Stegen kan användas för en av de andra datakällorna som stöds, så länge datakällan redan har konfigurerats för Kerberos-baserad enkel inloggning. I det här exemplet använder vi följande inställningar:

  • Active Directory-domän (Netbios): Contoso
  • Namn på gatewaydator: MyGatewayMachine
  • Gateway-tjänstkonto: Contoso\GatewaySvc
  • DATORnamn för SQL Server-datakälla: TestSQLServer
  • SQL Server-tjänstkonto för datakälla: Contoso\SQLService

Så här konfigurerar du delegeringsinställningarna:

  1. Öppna snapin-modulen Active Directory - användare och datorer MMC med domänadministratörsbehörighet.

  2. Högerklicka på gatewaytjänstkontot (Contoso\GatewaySvc) och välj Egenskaper.

  3. Välj fliken Delegering .

  4. Välj Lita på den här datorn för delegering till angivna tjänster Använd endast>autentiseringsprotokoll.

  5. Under Tjänster som det här kontot kan presentera delegerade autentiseringsuppgifter till väljer du Lägg till.

  6. I den nya dialogrutan väljer du Användare eller Datorer.

  7. Ange tjänstkontot för datakällan och välj sedan OK.

    En SQL Server-datakälla kan till exempel ha ett tjänstkonto som Contoso\SQLService. Ett lämpligt SPN för datakällan bör redan ha angetts för det här kontot.

  8. Välj det SPN som du skapade för databasservern.

    I vårt exempel börjar SPN med MSSQLSvc. Om du har lagt till både FQDN och NetBIOS SPN för databastjänsten väljer du båda. Du kanske bara ser en.

  9. Välj OK.

    Nu bör du se SPN i listan över tjänster som gatewaytjänstkontot kan presentera delegerade autentiseringsuppgifter för.

    Dialogrutan Egenskaper för gateway Anslut eller

  10. Om du vill fortsätta konfigurationsprocessen går du vidare till Bevilja lokal principbehörighet för gateway-tjänstkontot på gatewaydatorn.

Alternativ B: Resursbaserad Kerberos-begränsad delegering

Du använder resursbaserad Kerberos-begränsad delegering för att aktivera enkel inloggningsanslutning för Windows Server 2012 och senare versioner. Med den här typen av delegering kan klientdels- och serverdelstjänster finnas i olika domäner. För att den ska fungera måste serverdelstjänstdomänen lita på klientdelstjänstdomänen.

I följande steg förutsätter vi en lokal miljö med två datorer i olika domäner: en gatewaydator och en databasserver som kör SQL Server som redan har konfigurerats för Kerberos-baserad enkel inloggning. De här stegen kan användas för en av de andra datakällorna som stöds, så länge datakällan redan har konfigurerats för Kerberos-baserad enkel inloggning. I det här exemplet använder vi följande inställningar:

  • Active Directory-klientdelsdomän (Netbios): ContosoFrontEnd
  • Active Directory-serverdelsdomän (Netbios): ContosoBackEnd
  • Namn på gatewaydator: MyGatewayMachine
  • Gateway-tjänstkonto: ContosoFrontEnd\GatewaySvc
  • DATORnamn för SQL Server-datakälla: TestSQLServer
  • SQL Server-tjänstkonto för datakälla: ContosoBackEnd\SQLService

Slutför följande konfigurationssteg:

  1. Använd Active Directory - användare och datorer MMC-snapin-modulen på domänkontrollanten för Domänen ContosoFrontEnd och kontrollera att inga delegeringsinställningar tillämpas för gatewaytjänstkontot.

    Egenskaper för gatewayanslutning

  2. Använd Active Directory - användare och datorer på domänkontrollanten för ContosoBackEnd-domänen och kontrollera att inga delegeringsinställningar tillämpas för serverdelstjänstkontot.

    SQL-tjänstegenskaper

  3. På fliken Attributredigerare för kontoegenskaperna kontrollerar du att attributet msDS-AllowedToActOnBehalfOfOtherIdentity inte har angetts.

    SQL-tjänstattribut

  4. I Active Directory - användare och datorer skapar du en grupp på domänkontrollanten för Domänen ContosoBackEnd. Lägg till gatewaysvc-gatewaytjänstkontot i gruppen ResourceDelGroup.

    Om du vill lägga till användare från en betrodd domän måste den här gruppen ha ett omfång för Domän lokalt. Gruppegenskaper

  5. Öppna en kommandotolk och kör följande kommandon i domänkontrollanten för Domänen ContosoBackEnd för att uppdatera attributet msDS-AllowedToActOnBehalfOfOtherIdentity för serverdelstjänstkontot:

    $c = Get-ADGroup ResourceDelGroup
    Set-ADUser SQLService -PrincipalsAllowedToDelegateToAccount $c
    
  6. I Active Directory - användare och datorer kontrollerar du att uppdateringen visas på fliken Attributredigerare i egenskaperna för serverdelstjänstkontot.

Steg 5: Aktivera AES-kryptering på tjänstkonton

Använd följande inställningar för gatewaytjänstkontot och alla datakällans tjänstkonto som gatewayen kan delegera till:

Kommentar

Om det finns befintliga enctypes som definierats på tjänstkontona bör du kontakta Active Directory-administratören, eftersom du genom att följa stegen nedan skriver över de befintliga enctypes-värdena och kan bryta klienterna.

  1. Öppna snapin-modulen Active Directory - användare och datorer MMC med domänadministratörsbehörighet.

  2. Högerklicka på gateway-/datakällans tjänstkonto och välj Egenskaper.

  3. Välj fliken Konto.

  4. Under Kontoalternativ aktiverar du minst ett (eller båda) av följande alternativ. Observera att samma alternativ måste vara aktiverade för alla tjänstkonton.

    • Det här kontot stöder Kerberos AES 128-bitars kryptering
    • Det här kontot stöder Kerberos AES 256-bitars kryptering

Kommentar

Kontakta Active Directory-administratören om du är osäker på vilket krypteringsschema som ska användas.

Steg 6: Bevilja gatewaytjänstkontot lokala principrättigheter på gatewaydatorn

Slutligen, på den dator som kör gatewaytjänsten (MyGatewayMachine i vårt exempel) beviljar du gatewaytjänstkontot de lokala principerna Personifiera en klient efter autentisering och Agera som en del av operativsystemet (SeTcbPrivilege). Utför den här konfigurationen med redigeraren för lokal grupprincip (gpedit.msc).

  1. Kör gpedit.msc på gatewaydatorn.

  2. Gå till Datorkonfiguration>av lokala datorprinciper>Windows Inställningar> Säkerhet Inställningar> Allokeringsprinciper>Tilldelning av användarrättigheter.

    Mappstruktur för lokal datorprincip

  3. Under Tilldelning av användarrättigheter går du till listan med principer och väljer Personifiera en klient efter autentisering.

    Personifiera en klientprincip

  4. Högerklicka på principen, öppna Egenskaper och visa sedan listan över konton.

    Listan måste innehålla gatewaytjänstkontot (Contoso\GatewaySvc eller ContosoFrontEnd\GatewaySvc beroende på typen av begränsad delegering).

  5. Under Tilldelning av användarrättigheter väljer du Agera som en del av operativsystemet (SeTcbPrivilege) i listan över principer. Kontrollera att gatewaytjänstkontot ingår i listan över konton.

  6. Starta om tjänstprocessen för lokal datagateway.

Steg 7: Windows-kontot kan komma åt gatewaydatorn

Enkel inloggning använder Windows-autentisering, så se till att Windows-kontot kan komma åt gatewaydatorn. Om du inte är säker lägger du till NT-AUTHORITY\Authenticated Users (S-1-5-11) i den lokala gruppen "Användare".

Avsnitt 2: Miljöspecifik konfiguration

Lägga till gatewaytjänstkonto i Windows-auktorisering och åtkomstgrupp

Slutför det här avsnittet om någon av följande situationer gäller:

  • Din Active Directory-miljö är säkerhetshärdad.
  • När gatewaytjänstkontot och användarkontona som gatewayen personifierar finns i separata domäner eller skogar.

Du kan också lägga till gatewaytjänstkontot i Windows-auktorisering och åtkomstgrupp i situationer där domänen/skogen inte har förstärkts, men det krävs inte.

Mer information finns i Windows-auktorisering och åtkomstgrupp.

För att slutföra det här konfigurationssteget för varje domän som innehåller Active Directory-användare vill du att gatewaytjänstkontot ska kunna personifiera:

  1. Logga in på en dator i domänen och starta snapin-modulen Active Directory - användare och datorer MMC.
  2. Leta upp gruppen Windows-auktorisering och åtkomstgrupp, som vanligtvis finns i den inbyggda containern.
  3. Dubbelklicka på gruppen och klicka på fliken Medlemmar .
  4. Klicka på Lägg till och ändra domänplatsen till domänen som gatewaytjänstkontot finns i.
  5. Skriv in namnet på gatewaytjänstens konto och klicka på Kontrollera namn för att kontrollera att gatewaytjänstkontot är tillgängligt.
  6. Klicka på OK.
  7. Klicka på Använd.
  8. Starta om gatewaytjänsten.

Ange konfigurationsparametrar för användarmappning på gatewaydatorn

Slutför det här avsnittet om:

  • Du har inte Microsoft Entra Anslut med användarkontosynkronisering konfigurerad OCH
  • UPN som används i Power BI för användare matchar inte UPN i din lokala Active Directory-miljö.

Varje Active Directory-användare som mappas på det här sättet måste ha SSO-behörigheter för din datakälla.

  1. Öppna konfigurationsfilen för huvudgatewayen, Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll. Som standard lagras den här filen på C:\Program Files\On-premises data gateway.

  2. Ange ADUserNameLookupProperty till ett oanvänt Active Directory-attribut. Vi använder msDS-cloudExtensionAttribute1 i de steg som följer. Det här attributet är endast tillgängligt i Windows Server 2012 och senare.

  3. Ange ADUserNameReplacementProperty till SAMAccountName och spara sedan konfigurationsfilen.

    Kommentar

    I scenarier med flera domäner kan du behöva ange ADUserNameReplacementProperty för att userPrincipalName bevara användarens domäninformation.

  4. På fliken Tjänster i Aktivitetshanteraren högerklickar du på gatewaytjänsten och väljer Starta om.

    Skärmbild av fliken Aktivitetshanterarens tjänster

  5. För varje Power BI-tjänst användare som du vill aktivera Enkel inloggning med Kerberos för anger du msDS-cloudExtensionAttribute1 egenskapen för en lokal Active Directory-användare (med SSO-behörighet till din datakälla) till det fullständiga användarnamnet (UPN) för den Power BI-tjänst användaren. Om du till exempel loggar in på Power BI-tjänst som test@contoso.com och vill mappa den här användaren till en lokal Active Directory-användare med SSO-behörigheter, till exempel , test@LOCALDOMAIN.COManger du den här användarens msDS-cloudExtensionAttribute1 attribut till test@contoso.com.

    Du kan ange msDS-cloudExtensionAttribute1 egenskapen med snapin-modulen Active Directory - användare och datorer MMC:

    1. Starta Active Directory - användare och datorer som domänadministratör.

    2. Högerklicka på domännamnet, välj Sök och ange sedan kontonamnet för den lokala Active Directory-användare som ska mappas.

    3. Välj fliken Attributredigerare .

      Leta upp egenskapen msDS-cloudExtensionAttribute1 och dubbelklicka på den. Ange värdet till det fullständiga användarnamnet (UPN) för den användare som du använder för att logga in på Power BI-tjänst.

    4. Välj OK.

      Fönstret Redigerare för strängattribut

    5. Välj Använd. Kontrollera att rätt värde har angetts i kolumnen Värde .

Slutför konfigurationssteg för datakälla

För SAP HANA-, SAP BW- och Teradata-datakällor krävs ytterligare konfiguration för användning med gateway-enkel inloggning:

Kommentar

Även om andra SNC-bibliotek också kan fungera för enkel inloggning med BW stöds de inte officiellt av Microsoft.

Avsnitt 3: Verifiera konfiguration

Steg 1: Konfigurera datakällor i Power BI

När du har slutfört alla konfigurationssteg använder du sidan Hantera gateway i Power BI för att konfigurera datakällan som ska användas för enkel inloggning. Om du har flera gatewayer kontrollerar du att du väljer den gateway som du har konfigurerat för Enkel inloggning med Kerberos. Under Inställningar för datakällan kontrollerar du sedan att Använd enkel inloggning via Kerberos för DirectQuery-frågor eller Använda enkel inloggning via Kerberos för DirectQuery- och importfrågor kontrolleras för DirectQuery-baserade rapporter och Använd SSO via Kerberos för DirectQuery- och importfrågor kontrolleras för importbaserade rapporter.

 Skärmbild av att lägga till inställningar för enkel inloggning.

Inställningarna Använd enkel inloggning via Kerberos för DirectQuery-frågor och Använd enkel inloggning via Kerberos för DirectQuery- och importfrågor ger ett annat beteende för DirectQuery-baserade rapporter och importbaserade rapporter.

Använd enkel inloggning via Kerberos för DirectQuery-frågor:

  • För DirectQuery-baserad rapport används användarens autentiseringsuppgifter för enkel inloggning.
  • För importbaserad rapport används inte autentiseringsuppgifter för enkel inloggning, men de autentiseringsuppgifter som anges på datakällans sida används.

Använd enkel inloggning via Kerberos för DirectQuery- och importfrågor:

  • För DirectQuery-baserad rapport används användarens autentiseringsuppgifter för enkel inloggning.
  • För importbaserad rapport används SSO-autentiseringsuppgifterna för den semantiska modellägaren, oavsett vilken användare som utlöser importen.

Steg 2: Testa enkel inloggning

Gå till Testa konfiguration av enkel inloggning (SSO) för att snabbt verifiera att konfigurationen har angetts korrekt och felsöka vanliga problem.

Steg 3: Kör en Power BI-rapport

När du publicerar väljer du den gateway som du har konfigurerat för enkel inloggning om du har flera gatewayer.

Mer information om den lokala datagatewayen och DirectQuery finns i följande resurser: