Používanie protokolu Kerberos na jediné prihlásenie do databázy SAP HANA
Dôležité
Keďže SAP už nepodporuje knižnicu OpenSSL, ukončil aj Microsoft jeho podporu. Vaše existujúce pripojenia naďalej fungujú, ale už nemôžete vytvárať nové pripojenia. Namiesto toho použite kryptografickú knižnicu SAP (CommonCryptoLib) alebo sapcrypto.
Tento článok popisuje konfiguráciu zdroja údajov SAP HANA na povolenie jediného prihlásenia (SSO) zo služba Power BI.
Poznámka
Pred pokusom o obnovenie zostavy založenej na systéme SAP HANA, ktorá používa jediné prihlásenie cez protokol Kerberos, dokončite kroky v tomto článku a Konfigurujte jediné prihlásenie cez protokol Kerberos.
Povolenie jediného prihlásenia na platforme SAP HANA
Ak chcete povoliť jediné prihlásenie pre SAP HANA, vykonajte nasledujúce kroky:
Skontrolujte, či je pre server SAP HANA spustená aspoň minimálna požadovaná verzia, ktorá závisí od vašej úrovne platformy servera SAP HANA:
Do počítača s bránou nainštalujte najnovší ovládač SAP HANA ODBC. Minimálna verzia je HANA ODBC verzia 2.00.020.00 z augusta 2017.
Skontrolujte, či je server SAP HANA nakonfigurovaný pre jediné prihlásenie založené na protokole Kerberos. Ďalšie informácie o nastavení jediného prihlásenia (SSO) pre SAP HANA pomocou protokolu Kerberos nájdete v téme Jediné prihlásenie pomocou protokolu Kerberos. Pozrite si tiež prepojenia z danej stránky, najmä prepojenie SAP Note 1837331 – HOWTO HANA DBSSO Kerberos/Active Directory.
Odporúčame postupovať podľa nasledujúcich krokov, ktoré môžu priniesť malé zlepšenie výkonu:
V inštalačnom adresári brány vyhľadajte a otvorte tento konfiguračný súbor: Microsoft.PowerBI.DataMovement.Pipeline.GatewayCore.dll.config.
Vyhľadajte
FullDomainResolutionEnabled
vlastnosť a zmeňte jej hodnotu naTrue
.<setting name=" FullDomainResolutionEnabled " serializeAs="String"> <value>True</value> </setting>
Spustenie zostavy Power BI.
Riešenie problémov
Táto časť obsahuje pokyny na riešenie problémov s používaním protokolu Kerberos na jediné prihlásenie (SSO) do servera SAP HANA v služba Power BI. Pomocou týchto krokov na riešenie problémov môžete pomocou vlastnej diagnostiky a opravy mnohých problémov, ktoré môžu nastať.
Ak chcete postupovať podľa krokov v tejto časti, musíte zhromažďovať denníky brány.
Chyba TLS/SSL (certifikát)
Tento problém má viaceré príznaky.
Pri pokuse o pridanie nového zdroja údajov sa môže zobraziť približne takéto hlásenie:
Unable to connect: We encountered an error while trying to connect to. Details: "We could not register this data source for any gateway instances within this cluster. Please find more details below about specific errors for each gateway instance."
Pri pokuse o vytvorenie alebo obnovenie zostavy sa môže zobraziť nasledujúce chybové hlásenie:
Pri skúmaní funkcie Mashup[date]*.log sa zobrazí nasledujúce chybové hlásenie:
A connection was successfully established with the server, but then an error occurred during the login process and the certificate chain was issued by an authority that is not trusted.
Povinné
Ak chcete vyriešiť túto chybu TLS/SSL, prejdite na pripojenie zdroja údajov a potom v časti Validate Server Certificate (Overiť certifikát servera) toto nastavenie zakážte, ako je to znázornené na nasledujúcom obrázku:
Po zakázaní tohto nastavenia sa už chybové hlásenie nezobrazí.
Zosobnenie
Položky denníka pre zosobnenie obsahujú položky podobné ako:
About to impersonate user DOMAIN\User (IsAuthenticated: True, ImpersonationLevel: Impersonation).
Dôležitým prvkom v tejto položke denníka sú informácie, ktoré sa zobrazia ImpersonationLevel:
po zadaní. Každá hodnota, ktorá sa líši od Impersonation
, odhalí, že zosobnenie nenastane správne.
Povinné
Nastavenie môžete nastaviť ImpersonationLevel
podľa pokynov v téme Udelenie práv lokálnej politiky kontu služby brány bráne.
Po zmene konfiguračného súboru reštartujte službu brány, aby sa zmena prejavila.
Overenie
Obnovíte alebo vytvorte zostavu a potom zhromaždíte denníky brány. Otvorte najnovší súbor GatewayInfo a skontrolujte nasledujúci reťazec: About to impersonate user DOMAIN\User (IsAuthenticated: True, ImpersonationLevel: Impersonation)
. Uistite sa, že ImpersonationLevel
dané nastavenie vráti hodnotu Impersonation
.
Delegovanie
Problémy s delegovaním sa zvyčajne v služba Power BI zobrazujú ako všeobecné chyby. Ak sa chcete uistiť, že tento problém nejde o problém s delegovaím, zbierajte sledovania pomocou wiresharku a ako filter použite protokol Kerberos . Ďalšie informácie o funkcii Wireshark a informácie o chybách protokolu Kerberos nájdete v téme Chyby protokolu Kerberos v sieťových snímaniach.
Nasledujúce príznaky a kroky na riešenie problémov môžu pomôcť napraviť niektoré bežné problémy.
Problémy s hlavným názvom služby
Ak sa zobrazí nasledujúca chyba: The import [table] matches no exports. Did you miss a module reference?:
pri skúmaní .log Mashup[date]* sa vyskytli problémy s hlavným názvom služby (SPN).
Pri skúmaní podrobnejšie pomocou trasovaní Wireshark, zobrazí sa chyba KRB4KDC_ERR_S_PRINCIPAL_UNKOWN
, čo znamená, že SPN sa nenašiel alebo neexistuje. Na nasledujúcom obrázku je uvedený príklad:
Povinné
Ak chcete vyriešiť problémy hlavného názvu služby, ako je napríklad tento problém, musíte pridať hlavný názov služby do konta služby. Ďalšie informácie nájdete v dokumentácii spoločnosti SAP v téme Konfigurácia protokolu Kerberos pre hostiteľov databázy SAP HANA.
Okrem toho postupujte podľa pokynov na riešenie, ktoré sú popísané v nasledujúcej časti.
Žiadne problémy s povereniami
S týmto problémom nemusia byť spojené jasné príznaky. Pri skúmaní funkcie Mashup[date]*.log sa zobrazí nasledujúca chyba:
29T20:21:34.6679184Z","Action":"RemoteDocumentEvaluator/RemoteEvaluation/HandleException","HostProcessId":"1396","identity":"DirectQueryPool","Exception":"Exception:\r\nExceptionType: Microsoft.Mashup.Engine1.Runtime.ValueException, Microsoft.MashupEngine, Version=1.0.0.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35\r\nMessage:
Keď súbor podrobnejšie preskúmate, zobrazí sa nasledujúca (neužitočné) chyba:
No credentials are available in the security package
Zaznamenávanie trasovania Wireshark odhaľuje nasledujúcu chybu: KRB5KDC_ERR_BADOPTION
.
Tieto chyby zvyčajne znamenajú, že je možné nájsť súbor SPN hdb/hana2-s4-sso2.westus2.cloudapp.azure.com, ale nie v službách, ktorým môže toto konto predložiť zoznam delegovaných poverení na table Delegovanie v konte služby brány.
Povinné
Ak chcete vyriešiť problém Bez poverení, postupujte podľa krokov popísaných v téme Konfigurácia obmedzeného delegovania protokolu Kerberos. Po správnom dokončení bude karta delegovania v konte služby brány odráža súbor Databázy HansaWorld (HDB) a úplný názov domény (FQDN) v zozname služieb, ktorým môže toto konto predložiť delegované poverenia.
Overenie
Tento problém by ste mali vyriešiť vykonaním predchádzajúcich krokov. Ak sa naďalej vyskytnú problémy s protokolom Kerberos, môže dôjsť k nesprávnej konfigurácii v bráne Power BI alebo na samotnom serveri Hana.
Chyby poverení
Ak sa vyskytujú chyby poverení, chyby v denníkoch alebo sledovania sprístupňujú chyby, ktoré popisujú Credentials are invalid
alebo podobné chyby. Tieto chyby sa môžu prejaviť inak na strane zdroja údajov pripojenia, ako je napríklad SAP HANA. Na nasledujúcom obrázku je znázornená vzorová chyba:
Príznak 1
Pri sledovaní overovania HANA sa môžu zobraziť položky podobné nasledujúcej správe:
[Authentication|manager.cpp:166] Kerberos: Using Service Principal
Name johnny@contoso.com@CONTOSO.COM with name type: GSS_KRB5_NT_PRINCIPAL_NAME
[Authentication|methodgssinitiator.cpp:367] Got principal name:
johnny@contoso.com@CONTOSO.COM
Povinné
Postupujte podľa pokynov popísaných v téme Nastavenie parametrov konfigurácie mapovania používateľov v počítači s bránou, aj keď ste už nakonfigurovali službu Microsoft Entra Pripojenie.
Overenie
Po dokončení overenia môžete zostavu úspešne načítať v služba Power BI.
Príznak 2
Pri sledovaní overovania HANA sa môžu zobraziť položky podobné nasledujúcej položke:
Authentication ManagerAcceptor.cpp(00233) : Extending list of expected
external names by johnny@CONTOSO.COM (method: GSS) Authentication
AuthenticationInfo.cpp(00168) : ENTER getAuthenticationInfo
(externalName=johnny@CONTOSO.COM) Authentication AuthenticationInfo.cpp(00237) :
Found no user with expected external name!
Povinné
Skontrolujte v časti Používateľ HANA externé ID protokolu Kerberos a zistite, či sa ID zhoduje správne.
Overenie
Po vyriešení problému môžete v služba Power BI vytvoriť alebo obnoviť zostavy.
Súvisiaci obsah
Ďalšie informácie o lokálnej bráne údajov a režime DirectQuery získate v nasledujúcich témach: