Konfigurácia jediného prihlásenia založeného na protokole Kerberos zo služby Power BI do lokálnych zdrojov údajov

Povolením jediného prihlásenia (SSO) sa obnovenie údajov z lokálnych zdrojov pre zostavy a tabule služby Power BI zjednoduší, pričom sa budú rešpektovať povolenia na úrovni používateľov nakonfigurované pre tieto zdroje. Na povolenie bezproblémového pripájania pomocou jediného prihlásenia slúži delegovanie obmedzené protokolom Kerberos.

Požiadavky

Delegovanie obmedzené protokolom Kerberos funguje správne, len ak je nakonfigurovaných niekoľko položiek vrátane hlavných názvov služieb (SPN) a nastavení delegovania pre kontá služby.

Poznámka

Používanie aliasu DNS s SSO nie je podporované.

Inštalácia a konfigurácia lokálnej brány údajov spoločnosti Microsoft

Lokálna brána údajov podporuje inováciu na mieste a prevzatie nastavení existujúcich brán.

Spustenie služby brány Windows ako konta domény

V štandardnej inštalácii sa brána spustí ako konto služby lokálneho počítača (NT Service\PBIEgwService).

Konto lokálnej služby v počítači

Delegovanie obmedzené protokolom Kerberos je možné povoliť len vtedy, ak je brána spustená ako konto domény, alebo musí byť inštancia služby Azure Active Directory (Azure AD) už synchronizovaná s lokálnou inštanciou služby Active Directory (pomocou nástroja Azure AD DirSync/Connect). Ak chcete prepnúť na konto domény, pozrite si tému Zmena konta služby brány.

Poznámka

Ak je nástroj Azure AD Connect už nakonfigurovaný a kontá používateľa sú synchronizované, služba brány nemusí vykonať vyhľadávania v lokálnej službe Azure AD v režime runtime. Namiesto toho môžete pre službu brány jednoducho použiť identifikátor SID lokálnej služby, aby ste dokončili všetky požadované konfigurácie v službe Azure AD. Kroky konfigurácie delegovania obmedzeného protokolom Kerberos, ktoré sú uvedené v tomto článku, sú rovnaké ako kroky konfigurácie v kontexte služby Azure AD. Nepoužívajú sa na konte domény, ale na objekte počítača brány (určeného identifikátorom SID lokálnej služby) v službe Azure AD.

Získanie práv správcu domény na konfiguráciu hlavných názvov služieb (SetSPN) a nastavení delegovania obmedzeného protokolom Kerberos

Pri konfigurácii hlavných názvov služieb (SPN) a nastavovaní delegovania Kerberos by správca domény nemal udeľovať práva niekomu, kto nemá práva správcu domény. Nasledujúca časť poskytuje viac podrobností o odporúčaných krokoch konfigurácie.

Konfigurácia delegovania obmedzeného protokolom Kerberos pre bránu a zdroj údajov

V prípade potreby nakonfigurujte hlavný názov služby pre konto domény služby brány ako správca domény a tiež nastavenia delegovania pre konto domény služby brány.

Konfigurácia SPN pre konto služby brány

Najprv určite, či už je vytvorený hlavný názov služby pre konto domény, ktoré sa používa ako konto služby brány:

  1. Ako správca domény spustite modul Používatelia a počítače služby Active Directory konzoly MMC (Microsoft Management Console).

  2. Na ľavej table kliknite pravým tlačidlom myši na názov domény, vyberte položku Nájsť a potom zadajte názov konta služby brány.

  3. Vo výsledku vyhľadávania kliknite pravým tlačidlom myši na konto služby brány a vyberte položku Vlastnosti.

  4. Ak sa v dialógovom okne Vlastnosti zobrazuje karta Delegovanie, znamená to, že hlavný názov služby už bol vytvorený a môžete prejsť na časť Výber typu použitého delegovania obmedzeného protokolom Kerberos.

  5. Ak sa karta Delegovanie v dialógovom okne Vlastnosti nezobrazuje, môžete v tomto konte manuálne vytvoriť hlavný názov služby, čím ju povolíte. Použite nástroj setspn, ktorý je súčasťou systému Windows (ak chcete vytvoriť hlavný názov služby, potrebujete práva správcu domény).

    Predpokladajme, že konto služby brány je napríklad Contoso\GatewaySvc a služba brány je spustená na počítači s názvom MyGatewayMachine. Ak chcete nastaviť hlavný názov služby pre konto služby brány, spustite nasledujúci príkaz:

    setspn -a gateway/MyGatewayMachine Contoso\GatewaySvc

    Hlavný názov služby môžete nastaviť aj pomocou modulu konzoly MMC Používatelia a počítače služby Active Directory.

Pridanie konta služby brány do skupiny Windows Authorization Access Group (ak sa to vyžaduje)

V istých prípadoch je potrebné pridať konto služby brány do skupiny Windows Authorization Access Group. Tieto prípady zahŕňajú posilnenie zabezpečenia prostredia služby Active Directory a tiež situácie, keď sa konto služby brány a používateľské kontá, ktoré brána zosobní, nachádzajú v samostatných doménach alebo doménových štruktúrach. Konto služby brány môžete do skupiny Windows Authorization Access Group pridať aj vtedy, keď zabezpečenie domény alebo doménovej štruktúry nebolo zvýšené. Toto sa však nevyžaduje.

Ďalšie informácie nájdete v téme Windows Authorization Access Group.

Ak chcete dokončiť tento krok konfigurácie, umožnite kontu služby brány zosobniť každú doménu, ktorá obsahuje používateľov služby Active Directory:

  1. Prihláste sa do počítača v doméne a spustite modul konzoly MMC Používatelia a počítače služby Active Directory.
  2. Vyhľadajte skupinu Windows Authorization Access Group, ktorá sa zvyčajne nachádza v kontajneri Builtin (Vstavané).
  3. Dvakrát kliknite na skupinu a potom kliknite na kartu Members (Členovia).
  4. Kliknite na položku Add (Pridať) a umiestnenie domény zmeňte na doménu, v ktorej sa nachádza konto služby brány.
  5. Zadajte názov konta služby brány a kliknite na položku Check Names (Skontrolovať názvy), čím overíte, či je konto služby brány dostupné.
  6. Kliknite na tlačidlo OK.
  7. Kliknite na tlačidlo Použiť.
  8. Reštartujte službu brány.

Výber typu použitého delegovania obmedzeného protokolom Kerberos

Nastavenia delegovania môžete nakonfigurovať pre štandardné delegovanie obmedzené protokolom Kerberos alebo pre delegovanie obmedzené protokolom Kerberos na základe zdrojov. Delegovanie založené na prostriedkoch (vyžaduje systém Windows Server 2012 alebo novší) použite v prípade, že váš zdroj údajov patrí do inej domény ako vaša brána. Ďalšie informácie o rozdieloch medzi danými prístupmi k delegovaniu nájdete na stránke s prehľadom delegovania obmedzeného protokolom Kerberos.

V závislosti od toho, ktorý prístup chcete použiť, prejdite na jednu z nasledujúcich častí. Nevykonávajte postupy v oboch častiach:

Konfigurácia konta služby brány pre štandardné delegovanie obmedzené protokolom Kerberos

Poznámka

Ak chcete povoliť štandardné delegovanie obmedzené protokolom Kerberos, postupujte podľa krokov uvedených v tejto časti. Ak chcete povoliť delegovanie obmedzené protokolom Kerberos na základe zdrojov, postupujte podľa krokov v časti Konfigurácia konta služby brány pre delegovanie obmedzené protokolom Kerberos na základe zdrojov.

Teraz nastavíme delegovanie pre konto služby brány. Na vykonanie týchto krokov môžete použiť niekoľko nástrojov. Tu použijeme modul konzoly MMC Používatelia a počítače služby Active Directory na správu a publikovanie informácií v adresári. V predvolenom nastavení je dostupný na radičoch domény. Na iných počítačoch ho môžete povoliť prostredníctvom konfigurácie súčastí systému Windows.

Delegovanie obmedzené protokolom Kerberos je potrebné nakonfigurovať pomocou prechodu protokolu. V prípade obmedzeného delegovania je nutné explicitne určiť, ktorým službám môže brána odosielať delegované poverenia. Napríklad volania delegovania z konta služby brány bude prijímať len SQL Server alebo server SAP HANA.

V tejto časti sa predpokladá, že ste už nakonfigurovali hlavné názvy služby pre základné zdroje údajov (ako napríklad SQL Server, SAP Hana, SAP BW, Teradata alebo Spark). Informácie o tom, ako nakonfigurovať tieto hlavné názvy služieb servera pre zdroj údajov, nájdete v technickej dokumentácii k príslušnému databázovému serveru a v časti What SPN does your app require? (Aký hlavný názov služby vyžaduje vaša aplikácia?) v blogovom príspevku My Kerberos Checklist (Môj kontrolný zoznam protokolu Kerberos).

V nasledujúcich krokoch predpokladáme lokálne prostredie s dvoma počítačmi v rovnakej doméne: počítačom brány a databázovým serverom, na ktorom je spustený SQL Server a nakonfigurované jediné prihlásenie založené na protokole Kerberos. Kroky možno použiť pri jednom z ostatných podporovaných zdrojov údajov, ak je zdroj údajov nakonfigurovaný pre jediné prihlásenie založené na protokole Kerberos. V tomto príklade použijeme nasledujúce nastavenia:

  • Doména služby Active Directory (Netbios): Contoso
  • Názov počítača brány: MyGatewayMachine
  • Konto služby brány: Contoso\GatewaySvc
  • SQL Server zdrojového počítača: TestSQLServer
  • SQL Server služby zdroja údajov: Contoso\SQLService

Tu je postup na konfiguráciu nastavení delegovania:

  1. S právami správcu domény otvorte modul konzoly MMC Používatelia a počítače služby Active Directory.

  2. Kliknite pravým tlačidlom myši na konto služby brány (Contoso\GatewaySvc) a vyberte položku Vlastnosti.

  3. Vyberte kartu Delegovanie.

  4. Vyberte možnosť Dôverovať tomuto počítaču len na delegovanie na určené služby Použite > ľubovoľný overovací protokol.

  5. V časti Služby, ktorým môže toto konto predložiť delegované poverenia vyberte položku Pridať.

  6. V novom dialógovom okne vyberte položku Používatelia alebo počítače.

  7. Zadajte konto služby pre zdroj údajov a potom vyberte možnosť OK.

    Napríklad zdroj údajov SQL Server môže mať konto služby Contoso\SQLService. V konte by už mal byť nastavený vhodný hlavný názov služby pre zdroj údajov.

  8. Vyberte SPN, ktoré ste vytvorili pre server databázy.

    V našom príklade bude hlavný názov služby začínať znakmi MSSQLSvc. Ak ste pre službu databázy pridali SPN pre plne kvalifikovaný názov domény aj SPN služby NetBIOS, vyberte oba. Je možné, že sa zobrazí len jeden.

  9. Vyberte položku OK.

    Hlavný názov služby by sa teraz mal zobrazovať v zozname služieb, pre ktoré má konto služby brány delegované prihlasovacie údaje.

    Dialógové okno vlastností konektora brány

  10. Pokračujte v nastavovaní tak, že prejdete na časť Udelenie práv lokálnej politiky kontu služby brány cez počítač s bránou.

Konfigurácia konta služby brány pre delegovanie obmedzené protokolom Kerberos na základe zdrojov

Poznámka

Ak chcete povoliť delegovanie kerberosu založeného na prostriedkoch ,postupujte podľa krokov v tejto časti . Ak chcete povoliť štandardné delegovanie obmedzené protokolom Kerberos, postupujte podľa krokov v časti Konfigurácia konta služby brány pre štandardné delegovanie obmedzené protokolom Kerberos.

Delegovanie obmedzené protokolom Kerberos na základe zdrojov vám umožní pripájanie s jediným prihlásením pre systém Windows Server 2012 a novšie verzie. Tento typ delegovania umožňuje, aby sa klientske a serverové služby mohli nachádzať v rôznych doménach. Pre správne fungovanie je potrebné, aby doména serverovej služby dôverovala doméne klientskej služby.

V nasledujúcich krokoch predpokladáme lokálne prostredie s dvoma počítačmi v rôznych doménach: počítačom brány a databázovým serverom, na ktorom je spustený SQL Server a nakonfigurované jediné prihlásenie založené na protokole Kerberos. Tieto kroky možno použiť pri jednom z ostatných podporovaných zdrojov údajov, ak je zdroj údajov nakonfigurovaný pre jediné prihlásenie založené na protokole Kerberos. V tomto príklade použijeme nasledujúce nastavenia:

  • Klientska doména služby Active Directory (Netbios): ContosoFrontEnd
  • Serverová doména služby Active Directory (Netbios): ContosoBackEnd
  • Názov počítača s bránou: MyGatewayMachine
  • Konto služby brány: ContosoFrontEnd\GatewaySvc
  • SQL Server počítača so zdrojom údajov: TestSQLServer
  • SQL Server konta služby zdroja údajov: ContosoBackEnd\SQLService

Vykonajte nasledujúce kroky konfigurácie:

  1. Pomocou modulu konzoly MMC Používatelia a počítače služby Active Directory na radiči domény pre doménu ContosoFrontEnd overte, že pre konto služby brány neboli použité žiadne nastavenia delegovania.

    Vlastnosti konektora brány

  2. Pomocou modulu Používatelia a počítače služby Active Directory na radiči domény pre doménu ContosoBackEnd overte, že neboli použité žiadne nastavenia delegovania pre konto serverovej služby.

    Vlastnosti služby SQL

  3. Na karte Editor atribútov vlastností konta overte, že nie je nastavený atribút msDS-AllowedToActOnBehalfOfOtherIdentity.

    Atribúty služby SQL

  4. V module Používatelia a počítače služby Active Directory vytvorte na radiči domény skupinu pre doménu ContosoBackEnd. Pridajte konto služby brány GatewaySvc do skupiny ResourceDelGroup.

    Vlastnosti skupiny

  5. Otvorte príkazový riadok a spustením nasledujúcich príkazov na radiči domény ContosoBackEnd aktualizujte atribút msDS-AllowedToActOnBehalfOfOtherIdentity konta serverovej služby:

    $c = Get-ADGroup ResourceDelGroup
    Set-ADUser SQLService -PrincipalsAllowedToDelegateToAccount $c
    
  6. V module Používatelia a počítače služby Active Directory overte, že sa aktualizácia prejavila na karte Editor atribútov vo vlastnostiach konta serverovej služby.

Udelenie práv lokálnej politiky kontu služby brány cez počítač s bránou

Na počítači, na ktorom je spustená služba brány (v našom príklade je to MyGatewayMachine), udeľte kontu služby brány lokálnu politiku Zosobniť klienta po overeníVystupovať ako súčasť operačného systému (SeTcbPrivilege). Túto konfiguráciu vykonajte pomocou lokálneho editora skupinovej politiky (gpedit.msc).

  1. V počítači s bránou spustite príkaz gpedit.msc.

  2. Prejdite na položku Konfigurácia počítača s politikou > > lokálneho Windows Nastavenia > Politika zabezpečenia Nastavenia Politiky > > priradenia používateľských práv.

    Štruktúra priečinkov politiky lokálneho počítača

  3. V zozname politík pod položkou Pridelenie používateľských práv vyberte možnosť Po overení zosobniť klienta.

    Politika zosobnenia klienta

  4. Kliknite pravým tlačidlom myši na politiku, otvorte okno Vlastnosti a potom zobrazte zoznam kont.

    Zoznam musí obsahovať konto služby brány (Contoso\GatewaySvc alebo ContosoFrontEnd\GatewaySvc v závislosti od typu obmedzeného delegovania).

  5. V zozname politík pod položkou Pridelenie používateľských práv vyberte možnosť Vystupovať ako súčasť operačného systému (SeTcbPrivilege). Skontrolujte, či sa konto služby brány nachádza v zozname kont.

  6. Reštartujte proces služby Brána lokálnych údajov.

Nastavenie parametrov konfigurácie priradenia používateľov na počítači s bránou (ak sa vyžaduje)

Ak nástroj Azure AD Connect nakonfigurovaný nemáte, postupujte podľa týchto krokov a priraďte používateľa služby Power BI k lokálnemu používateľovi služby Azure AD. Každý používateľ služby Active Directory, ktorý je priradený týmto spôsobom, musí mať povolenia jediného prihlásenia pre váš zdroj údajov. Ďalšie informácie získate vo videu kanála Guy in a Cube.

  1. Otvorte hlavný konfiguračný súbor brány Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll. Tento súbor je v predvolenom nastavení uložený v priečinku C:\Program Files\On-premises data gateway.

  2. Nastavte vlastnosť ADUserNameLookupProperty na nepoužitý atribút služby Active Directory. V nasledujúcich krokoch použijeme atribút msDS-cloudExtensionAttribute1. Tento atribút je k dispozícii len v systéme Windows Server 2012 a novšom.

  3. Nastavte vlastnosť ADUserNameReplacementProperty na SAMAccountName a uložte konfiguračný súbor.

  4. V Správcovi úloh na karte Služby kliknite pravým tlačidlom myši na službu brány a vyberte položku Reštartovať.

    Snímka obrazovky s kartou Služby v Správcovi úloh

  5. Pre každého používateľa služby Power BI, ktorému chcete povoliť jediné prihlásenie cez protokol Kerberos, nastavte vlastnosť msDS-cloudExtensionAttribute1 lokálneho používateľa služby Active Directory (s povolením na jediné prihlásenie k vášmu zdroju údajov) na celé meno používateľa (hlavné meno používateľa) služby Power BI. Ak sa do služby Power BI prihlásite napríklad ako test@contoso.com a chcete tohto používateľa priradiť k lokálnemu používateľovi služby Active Directory s povoleniami na jediné prihlásenie, povedzme test@LOCALDOMAIN.COM, nastavte atribút msDS-cloudExtensionAttribute1 tohto používateľa na test@contoso.com.

    Vlastnosť msDS-cloudExtensionAttribute1 môžete nastaviť pomocou modulu konzoly MMC Používatelia a počítače služby Active Directory:

    1. V roli správcu domény spustite Používatelia a počítače služby Active Directory.

    2. Kliknite pravým tlačidlom na názov domény, vyberte položku Nájsť a potom zadajte názov konta lokálneho používateľa služby Active Directory, ktoré chcete priradiť.

    3. Vyberte kartu Editor atribútov.

      Vyhľadajte vlastnosť msDS-cloudExtensionAttribute1 a dvakrát na ňu kliknite. Nastavte hodnotu na celé meno používateľa (hlavné meno používateľa), ktoré používate na prihlásenie do služby Power BI.

    4. Vyberte položku OK.

      Okno Editor atribútov reťazcov

    5. Vyberte položku Použiť. Overte, či je v stĺpci Hodnota nastavená správna hodnota.

Dokončenie krokov konfigurácie špecifických pre zdroj údajov

SAP HANA a SAP BW majú ďalšie špecifické požiadavky na konfiguráciu zdroja údajov, ktoré je potrebné splniť, aby ste k týmto zdrojom údajov mohli vytvoriť pripojenie cez jediné prihlásenie prostredníctvom brány. Ďalšie informácie nájdete na stránke konfigurácie SAP HANAstránke konfigurácie SAP BW – CommonCryptoLib (sapcrypto.dll). Aj keď je možné nakonfigurovať SAP BW na používanie s knižnicou SNC gx64krb5, táto knižnica sa neodporúča, pretože ju už spoločnosť SAP nepodporuje. Ako knižnicu SNC by ste mali používať CommonCryptoLib alebo gx64krb5. Nevykonávajte konfiguráciu pre obe knižnice.

Podobne má Teradata aj ďalšie špecifické požiadavky na konfiguráciu a požiadavky zdroja údajov. Ďalšie informácie nájdete v téme Používanie protokolu Kerberos na jediné prihlásenie do teradata.

Poznámka

Aj keď pre jediné prihlásenie k serveru BW môžu fungovať aj iné knižnice SNC, spoločnosť Microsoft ich oficiálne nepodporuje.

Ťuknite na zostavu Power BI

Po dokončení celého postupu konfigurácie nakonfigurujte v službe Power BI na stránke Manage Gateway (Spravovať bránu) zdroj údajov, ktorý budete používať pre jediné prihlásenie. Ak máte viacero brán, uistite sa, že ste vybrali bránu, ktorú ste nakonfigurovali pre jediné prihlásenie cez protokol Kerberos. V časti Rozšírené Nastavenia pre zdroj údajov sa uistite, že pri dotazoch DirectQuery použiť jediné prihlásenie cez protokol Kerberos alebo Pre dotazy DirectQuery a Import používať jediné prihlásenie cez Kerberos je začiarknuté políčko Pre zostavy založené na režime DirectQuery a Pre dotazy DirectQuery a Import používať jediné prihlásenie cez Kerberos je začiarknuté políčko Zostavy na základe importu.

Poznámka

Jediné prihlásenie používa Windows overovanie, takže skontrolujte, či konto systému Windows môže získať prístup k počítaču s bránou. Ak nie ste istí, pridajte NT-AUTHORITY\Authenticated Users (S-1-5-11) do lokálnej skupiny "Používatelia".

Možnosť Rozšírené nastavenia

Nastavenia Pre dotazy DirectQuery použiť jediné prihlásenie cez protokol Kerberos a Pre dotazy DirectQuery a Import používať jediné prihlásenie cez Kerberos sa môže pri zostavách založených na režime DirectQuery a zostavách založených na importe odlišné správanie.

Pre dotazy DirectQuery použite jediné prihlásenie cez protokol Kerberos:

  • V zostave založenej na režime DirectQuery sa použijú poverenia používateľa.
  • V prípade zostavy založenej na importe sa poverenia jediného prihlásenia nepoužívajú, ale poverenia zadané na stránke zdroja údajov sa používajú.

Pre dotazy DirectQuery a Import použite jediné prihlásenie cez protokol Kerberos:

  • V prípade zostavy založenej na režime DirecyQuery sa použijú poverenia jediného prihlásenia používateľa.
  • V prípade zostavy na základe importu sa použijú poverenia jediného prihlásenia vlastníka množiny údajov bez ohľadu na používateľa, ktorý spustí import.

Ak máte viacero brán, pri publikovaní vyberte bránu, ktorú ste nakonfigurovali pre jediné prihlásenie.

Táto konfigurácia bude fungovať vo väčšine prípadov. V prípade protokolu Kerberos sa však môžu konfigurácie líšiť, v závislosti od vášho prostredia. Ak sa zostava nenačíta, obráťte sa na správcu domény, aby tento problém podrobnejšie preskúmal. Ak je zdrojom údajov SAP BW, prečítajte si časti venujúce sa riešeniu problémov na stránkach konfigurácie špecifických pre zdroj údajov knižníc CommonCryptoLibgx64krb5/gsskrb5, a to v závislosti od toho, ktorú knižnicu SNC ste vybrali.

Ďalšie kroky

Ďalšie informácie o lokálnej bráne údajov a režime DirectQuery získate v nasledujúcich témach: