A Security Assertion Markup Language használata egyszeri bejelentkezéshez a Power BI-ból a helyszíni adatforrásokhoz
Az egyszeri bejelentkezés (SSO) engedélyezésével megkönnyítheti a Power BI-jelentések és -irányítópultok számára a helyszíni forrásokból származó adatok frissítését, miközben tiszteletben tartja az ezeken a forrásokon konfigurált felhasználói szintű engedélyeket. A közvetlen egyszeri bejelentkezés engedélyezéséhez használja a Security Assertion Markup Language (SAML) nyelvet.
Feljegyzés
Egy helyszíni adatátjáróval csak egy adatforráshoz csatlakozhat egyszeri bejelentkezéses SAML használatával. Ha egy további adatforráshoz szeretne csatlakozni egyszeri bejelentkezéses SAML használatával, egy másik helyszíni adatátjárót kell használnia.
Az SAML-hez támogatott adatforrások
A Microsoft jelenleg az SAP HANA-t támogatja az SAML-lel. További információ az egyszeri bejelentkezés beállításáról és konfigurálásáról az SAP HANA-hoz saml használatával, lásd : SAML SSO for BI Platform to HANA.
További adatforrásokat támogatunk a Kerberos használatával (beleértve az SAP HANA-t is).
Az SAP HANA esetében azt javasoljuk, hogy az SAML SSO-kapcsolat létrehozása előtt engedélyezze a titkosítást. A titkosítás engedélyezéséhez konfigurálja a HANA-kiszolgálót a titkosított kapcsolatok elfogadására, majd konfigurálja az átjárót úgy, hogy titkosítással kommunikáljon a HANA-kiszolgálóval. Mivel a HANA ODBC-illesztő alapértelmezés szerint nem titkosítja az SAML-állításokat, a rendszer az aláírt SAML-állítást az átjáróból küldi el a HANA-kiszolgálónak , és sebezhető a harmadik felek általi elfogással és újrahasználattal szemben.
Fontos
Mivel az SAP már nem támogatja az OpenSSL-t, a Microsoft is megszüntette a támogatását. A meglévő kapcsolatok továbbra is működnek, de már nem hozhat létre új kapcsolatokat. Használja inkább az SAP titkosítási könyvtárat (CommonCryptoLib) vagy a sapcrypto-t.
Az átjáró és az adatforrás konfigurálása
Az SAML használatához megbízhatósági kapcsolatot kell létesítenie azon HANA-kiszolgálók között, amelyek esetében engedélyezni szeretné az egyszeri bejelentkezést és az átjárót. Ebben a forgatókönyvben az átjáró SAML-identitásszolgáltatóként (IDP) szolgál. Ezt a kapcsolatot többféleképpen is létrehozhatja. Az SAP azt javasolja, hogy a beállítási lépések elvégzéséhez használja a CommonCryptoLib-t. További információkért tekintse meg a hivatalos SAP-dokumentációt.
Tanúsítványok létrehozása
A HANA-kiszolgáló és az átjáróazonosító közötti megbízhatósági kapcsolatot úgy hozhatja létre, ha az átjáróazonosító X509-tanúsítványát a HANA-kiszolgáló által megbízhatónak minősítő főtanúsítvány-szolgáltatóval (CA) írja alá.
A tanúsítványok létrehozásához tegye a következőket:
Az SAP HANA-t futtató eszközön hozzon létre egy üres mappát a tanúsítványok tárolásához, majd lépjen a mappába.
Hozza létre a főtanúsítványokat a következő parancs futtatásával:
openssl req -new -x509 -newkey rsa:2048 -days 3650 -sha256 -keyout CA_Key.pem -out CA_Cert.pem -extensions v3_ca'''
Mindenképpen másolja és mentse a jelszót, hogy ezzel a tanúsítvánnyal más tanúsítványokat is aláírjon. Látnia kell a CA_Cert.pem és CA_Key.pem fájlokat.
Hozza létre az idP-tanúsítványokat a következő parancs futtatásával:
openssl req -newkey rsa:2048 -days 365 -sha256 -keyout IdP_Key.pem -out IdP_Req.pem -nodes
Ekkor létre kell hoznia a IdP_Key.pem és IdP_Req.pem fájlokat.
Írja alá az identitásszolgáltatói tanúsítványokat a főtanúsítványokkal:
openssl x509 -req -days 365 -in IdP_Req.pem -sha256 -extensions usr_cert -CA CA_Cert.pem -CAkey CA_Key.pem -CAcreateserial -out IdP_Cert.pem
Ekkor létrejön a CA_Cert.srl és IdP_Cert.pem fájl. Jelenleg csak a IdP_Cert.pem fájl érdekli.
Az SAML identitásszolgáltatói tanúsítvány leképezésének létrehozása
Az SAML-identitásszolgáltató tanúsítvány leképezésének létrehozásához tegye a következőket:
Az SAP HANA Studióban kattintson a jobb gombbal az SAP HANA-kiszolgáló nevére, majd válassza a Security>Open Security Console>SAML Identity Provider lehetőséget.
Válassza az SAP Titkosítási kódtár lehetőséget. Ne használja az SAP által elavult OpenSSL titkosítási kódtár lehetőséget.
Az aláírt tanúsítvány IdP_Cert.pem importálásához válassza a kék Importálás gombot az alábbi képen látható módon:
Ne felejtse el hozzárendelni az identitásszolgáltató nevét.
Aláírt tanúsítványok importálása és létrehozása a HANA-ban
Az aláírt tanúsítványok HANA-ban való importálásához és létrehozásához tegye a következőket:
Az SAP HANA Studióban futtassa a következő lekérdezést:
CREATE CERTIFICATE FROM '<idp_cert_pem_certificate_content>'
Példa:
CREATE CERTIFICATE FROM '-----BEGIN CERTIFICATE----- MIIDyDCCArCgA...veryLongString...0WkC5deeawTyMje6 -----END CERTIFICATE----- '
Ha nincs személyes biztonsági környezet (P Standard kiadás) a cél SAML használatával, hozzon létre egyet az alábbi lekérdezés futtatásával az SAP HANA Studióban:
CREATE PSE SAMLCOLLECTION; set pse SAMLCOLLECTION purpose SAML;
Adja hozzá az újonnan létrehozott aláírt tanúsítványt a P Standard kiadás a következő parancs futtatásával:
alter pse SAMLCOLLECTION add CERTIFICATE <certificate_id>;
Példa:
alter pse SAMLCOLLECTION add CERTIFICATE 1978320;
A létrehozott tanúsítványok listáját az alábbi lekérdezés futtatásával ellenőrizheti:
select * from PUBLIC"."CERTIFICATES"
A tanúsítvány most már megfelelően telepítve van. A telepítés megerősítéséhez futtassa a következő lekérdezést:
select * from "PUBLIC"."PSE_CERTIFICATES"
A felhasználó leképezése
A felhasználó leképezéséhez tegye a következőket:
Az SAP HANA Studióban válassza a Biztonsági mappát.
Bontsa ki a Felhasználók elemet, majd válassza ki azt a felhasználót, akire le szeretné képezni a Power BI-felhasználót.
Jelölje be az SAML jelölőnégyzetet, majd válassza a Konfigurálás lehetőséget az alábbi képen látható módon:
Válassza ki az SAML-identitásszolgáltató tanúsítványának létrehozási leképezésében létrehozott identitásszolgáltatót. Külső identitás esetén adja meg a Power BI-felhasználó UPN-jét (általában azt az e-mail-címet, amelyet a felhasználó a Power BI-ba való bejelentkezéshez használ), majd válassza a Hozzáadás lehetőséget.
Ha az átjárót az ADUserNameReplacementProperty konfigurációs beállítás használatára konfigurálta, adja meg azt az értéket, amely a Power BI-felhasználó eredeti UPN-jét fogja lecserélni. Ha például az ADUserNameReplacementProperty értéket SAMAccountName értékre állítja, adja meg a felhasználó SAMAccountName nevét.
Az átjáró konfigurálása
Most, hogy konfigurálta az átjárótanúsítványt és -identitást, konvertálja a tanúsítványt PFX-fájlformátummá, majd konfigurálja az átjárót a tanúsítvány használatára az alábbiak végrehajtásával:
Konvertálja a tanúsítványt PFX formátumba az alábbi parancs futtatásával. Ez a parancs elnevezi az eredményül kapott samlcert.pfx fájlt, és jelszóként állítja be a gyökérfájlt, ahogy az itt látható:
openssl pkcs12 -export -out samltest.pfx -in IdP_Cert.pem -inkey IdP_Key.pem -passin pass:root -passout pass:root
Másolja a PFX-fájlt az átjárógépre:
a. Kattintson duplán a samltest.pfx elemre, majd válassza a Helyi gép tovább lehetőséget>.
b. Adja meg a jelszót, majd válassza a Tovább gombot.
c. Válassza az Összes tanúsítvány elhelyezése a következő tárolóban lehetőséget, majd válassza a Személyes>ok tallózása>lehetőséget.
d. Válassza a Tovább, majd a Befejezés lehetőséget.
Ha hozzáférést szeretne adni az átjárószolgáltatás-fióknak a tanúsítvány titkos kulcsához, tegye a következőket:
a. Az átjárógépen futtassa a Microsoft Felügyeleti konzolt (MMC).
b. Az MMC-ben válassza a Fájl>hozzáadása/eltávolítása beépülő modult.
c. Válassza a >Tanúsítványok hozzáadása lehetőséget, majd válassza a Következő számítógépfiók lehetőséget.>
d. Válassza a Helyi számítógép>befejezési>OK gombot.
e. Bontsa ki a>tanúsítványok személyes>tanúsítványait, majd keresse meg a tanúsítványt.
f. Kattintson a jobb gombbal a tanúsítványra, majd válassza a Minden feladat>kezelése titkos kulcsok parancsot.
: Adja hozzá az átjárószolgáltatás-fiókot a listához. Alapértelmezés szerint a fiók NT Standard kiadás RVICE\PBIEgwService. A services.msc futtatásával, majd a helyszíni adatátjáró szolgáltatás keresésével megtudhatja, hogy melyik fiók futtatja az átjárószolgáltatást.
Végül adja hozzá a tanúsítvány ujjlenyomatát az átjáró konfigurációjához:
A számítógépen található tanúsítványok listázásához futtassa a következő PowerShell-parancsot:
Get-ChildItem -path cert:\LocalMachine\My
Másolja ki a létrehozott tanúsítvány ujjlenyomatát.
Nyissa meg az átjáró könyvtárát, amely alapértelmezés szerint C:\Program Files\Helyszíni adatátjáró .
Nyissa meg a PowerBI.DataMovement.Pipeline.GatewayCore.dll.config fájlt, majd keresse meg a SapHanaSAMLCertThumbprint szakaszt. Illessze be a 2. lépésben másolt ujjlenyomatot.
Indítsa újra az átjárószolgáltatást.
Power BI-jelentés futtatása
Mostantól a Power BI Átjáró kezelése lapján konfigurálhatja az SAP HANA-adatforrást. A Speciális Gépház területen engedélyezze az egyszeri bejelentkezést SAML-en keresztül. Ezzel közzéteheti az adatforráshoz kötődő jelentéseket és adathalmazokat.
Feljegyzés
Az egyszeri bejelentkezés Windows-hitelesítést használ, így győződjön meg arról, hogy a Windows-fiók hozzáfér az átjárógéphez. Ha nem biztos benne, vegye fel az NT-AUTHORITY\Hitelesített felhasználók (S-1-5-11) elemet a helyi gép "Felhasználók" csoportjába.
Hibaelhárítás az SAML használatával az SAP HANA-ba való egyszeri bejelentkezéshez
Ez a szakasz részletes lépéseket tartalmaz az SAML használatával az SAP HANA-ba való egyszeri bejelentkezéssel kapcsolatos hibaelhárításhoz. Ezekkel a lépésekkel öndiagnosztizálhatja és kijavíthatja az esetlegesen felmerülő problémákat.
Elutasított hitelesítő adatok
Az SAML-alapú egyszeri bejelentkezés konfigurálása után a következő hibaüzenet jelenhet meg a Power BI portálon: "A megadott hitelesítő adatok nem használhatók az SapHana-forráshoz." Ez a hiba azt jelzi, hogy az SAP HANA elutasította az SAML hitelesítő adatait.
A kiszolgálóoldali hitelesítési nyomkövetések részletes információkat nyújtanak az SAP HANA hitelesítő adataival kapcsolatos problémák elhárításához. Az SAP HANA-kiszolgáló nyomkövetésének konfigurálásához tegye a következőket:
Az SAP HANA-kiszolgálón kapcsolja be a hitelesítési nyomkövetést az alábbi lekérdezés futtatásával:
ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM') set ('trace', 'authentication') = 'debug' with reconfigure
Reprodukálja a problémát.
Az SAP HANA Studióban nyissa meg a felügyeleti konzolt, majd válassza a Diagnosztikai fájlok lapot.
Nyissa meg az indexkiszolgáló legutóbbi nyomkövetését, majd keresse meg a SAMLAuthenticator.cpp.
Az alábbi példában látható módon részletes hibaüzenet jelenik meg, amely a kiváltó okot jelzi:
[3957]{-1}[-1/-1] 2018-09-11 21:40:23.815797 d Authentication SAMLAuthenticator.cpp(00091) : Element '{urn:oasis:names:tc:SAML:2.0:assertion}Assertion', attribute 'ID': '123123123123123' is not a valid value of the atomic type 'xs:ID'. [3957]{-1}[-1/-1] 2018-09-11 21:40:23.815914 i Authentication SAMLAuthenticator.cpp(00403) : No valid SAML Assertion or SAML Protocol detected
A hibaelhárítás befejezése után kapcsolja ki a hitelesítési nyomkövetést az alábbi lekérdezés futtatásával:
ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM') UNSET ('trace', 'authentication');
Átjáróhibák ellenőrzése és hibaelhárítása
Az ebben a szakaszban ismertetett eljárások követéséhez átjárónaplókat kell gyűjtenie.
SSL-hiba (tanúsítvány)
Hibatünetek
Ennek a problémának több tünete is van. Amikor új adatforrást próbál hozzáadni, az alábbihoz hasonló hibaüzenet jelenhet meg:
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."
Amikor megpróbál létrehozni vagy frissíteni egy jelentést, az alábbi képen láthatóhoz hasonló hibaüzenet jelenhet meg:
A Mashup[date]*.log vizsgálatakor a következő hibaüzenet jelenik meg:
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
Resolution (Osztás)
Az SSL-hiba megoldásához lépjen az adatforrás-kapcsolatra, majd a Kiszolgálótanúsítvány érvényesítése legördülő listában válassza a Nem lehetőséget, ahogyan az alábbi képen látható:
Miután kiválasztotta ezt a beállítást, a hibaüzenet többé nem jelenik meg.
Gateway SignXML-hiba
Az átjáró SignXML-hibája lehet az SapHanaSAMLCertThumbprint helytelen beállításainak eredménye, vagy a HANA-kiszolgálóval kapcsolatos probléma. Az átjárónaplók bejegyzései segítenek azonosítani a probléma helyét és a probléma megoldásának módját.
Hibatünetek
A következőhöz tartozó naplóbejegyzésekSignXML: Found the cert...
: Ha a GatewayInfo[date].log fájl tartalmazza ezt a hibát, a SignXML tanúsítvány található, és a hibaelhárítási erőfeszítéseknek a "HANA-kiszolgálóoldal ellenőrzése és hibaelhárítása" szakaszban található lépésekre kell összpontosítaniuk.
Couldn't find saml cert
Ha a GatewayInfo[date].log fájl tartalmazza ezt a hibát, a SapHanaSAMLCertThumbprint helytelenül van beállítva. A következő megoldási szakasz a probléma megoldását ismerteti.
Resolution (Osztás)
A SapHanaSAMLCertThumbprint megfelelő beállításához kövesse az "Átjáró konfigurálása" szakasz utasításait. Az utasítások végül a tanúsítvány ujjlenyomatának az átjáró konfigurációjához való hozzáadásával kezdődnek.
A konfigurációs fájl módosítása után újra kell indítania az átjárószolgáltatást a módosítás érvénybe lépéséhez.
Érvényesítés
Ha az SapHanaSAMLCertThumbprint megfelelően be van állítva, az átjárónaplók bejegyzései tartalmazzák SignXML: Found the cert...
azokat. Ezen a ponton folytathatja a "HANA-kiszolgálóoldal ellenőrzése és hibaelhárítása" szakaszt.
Ha az átjáró nem tudja a tanúsítványt használni az SAML-állítás aláírásához, a naplókban az alábbihoz hasonló hibaüzenet jelenhet meg:
GatewayPipelineErrorCode=DM_GWPipeline_UnknownError GatewayVersion= InnerType=CryptographicException InnerMessage=<pi>Signing key is not loaded.</pi> InnerToString=<pi>System.Security.Cryptography.CryptographicException: Signing key is not loaded.
A hiba elhárításához kövesse az "Átjáró konfigurálása" szakasz 3. lépésével kezdődő utasításokat.
A konfiguráció módosítása után indítsa újra az átjárószolgáltatást a módosítás érvénybe lépéséhez.
A HANA-kiszolgálóoldal ellenőrzése és hibaelhárítása
Használja az ebben a szakaszban található megoldásokat, ha az átjáró megtalálja a tanúsítványt, és aláírja az SAML-állítást, de továbbra is hibákat tapasztal. Hana-hitelesítési nyomkövetéseket kell gyűjtenie az "Elutasított hitelesítő adatok" szakasz korábbi szakaszában leírtak szerint.
Az SAML-identitásszolgáltató
A sztring jelenléte a Found SAML provider
HANA-hitelesítési nyomkövetésekben azt jelzi, hogy az SAML-identitásszolgáltató megfelelően van konfigurálva. Ha a sztring nincs jelen, a konfiguráció helytelen.
Resolution (Osztás)
Először állapítsa meg, hogy a szervezet az OpenSSL-t vagy a commoncrypto-t használja-e sslcryptoproviderként. A használt szolgáltató meghatározásához tegye a következőket:
Nyissa meg az SAP HANA Studiót.
Nyissa meg a használt bérlő Rendszergazda istration konzolját.
Válassza a Konfiguráció lapot, és használjon sslcryptoprovidert szűrőként az alábbi képen látható módon:
Ezután ellenőrizze, hogy a titkosítási kódtár megfelelően van-e beállítva a következő lépéssel:
Nyissa meg az SAP HANA Studióban a biztonsági konzolt az SAML Identity Providers (SAML-identitásszolgáltatók ) lap kiválasztásával, és tegye az alábbiak egyikét:
- Ha az sslcryptoprovider OpenSSL, válassza az OpenSSL titkosítási kódtár lehetőséget.
- Ha az sslcryptoprovider commonCrypto, válassza az SAP Titkosítási kódtár lehetőséget.
Az alábbi képen az SAP titkosítási kódtára van kiválasztva:
A módosítások üzembe helyezése a jobb felső sarokban található Üzembe helyezés gombra kattintva, az alábbi képen látható módon:
Érvényesítés
Ha a nyomkövetések megfelelően vannak konfigurálva, a rendszer jelentést Found SAML provider
készít, és nem fogja jelenteniSAML Provider not found
. Folytassa a következő, "Az SAML-érvényesítési aláírás hibaelhárítása" című szakaszsal .
Ha a titkosítási szolgáltató be van állítva, de SAML Provider not found
a jelentés továbbra is folyamatban van, keressen egy sztringet a nyomkövetésben, amely a következő szöveggel kezdődik:
Search SAML provider for certificate with subject =
Ebben a sztringben győződjön meg arról, hogy a tárgy és a kiállító pontosan megegyezik a Security Console SAML identitásszolgáltató lapján láthatóval. A problémát akár egyetlen karakter különbsége is okozhatja. Ha különbséget talál, kijavíthatja a problémát az SAP titkosítási kódtárában, hogy a bejegyzések pontosan egyezzenek.
Ha az SAP titkosítási kódtár módosítása nem oldja meg a problémát, manuálisan szerkesztheti a Kibocsátva és a Kibocsátva mezőket egyszerűen, ha duplán kattint rájuk.
Az SAML-érvényesítési aláírás hibaelhárítása
Az alábbihoz hasonló bejegyzéseket tartalmazó HANA-hitelesítési nyomkövetéseket találhat:
[48163]{-1}[-1/-1] 2020-09-11 21:15:18.896165 i Authentication SAMLAuthenticator.cpp(00398) : Unable to verify XML signature
[48163]{-1}[-1/-1] 2020-09-11 21:15:18.896168 i Authentication MethodSAML.cpp(00103) : unsuccessful login attempt with SAML ticket!
Az ilyen bejegyzések jelenléte azt jelenti, hogy az aláírás nem megbízható.
Resolution (Osztás)
Ha az OpenSSL-t használja sslcryptoproviderként, ellenőrizze, hogy a trust.pem és a key.pem fájlok szerepelnek-e az SSL-könyvtárban. További információkért tekintse meg az SAP blogot , amely az SAP HANA Studio és az SAP HANA Server közötti kommunikációt SSL-n keresztül biztosítja.
Ha a commoncrypto-t használja sslcryptoproviderként, ellenőrizze, hogy van-e gyűjtemény a tanúsítványával a bérlőben.
Érvényesítés
Ha a nyomkövetések megfelelően vannak konfigurálva, jelentést fognak jelenteni Found valid XML signature
.
Az UPN-leképezés hibaelhárítása
Az alábbihoz hasonló bejegyzéseket tartalmazó HANA-nyomkövetéseket találhat:
SAMLAuthenticator.cpp(00886) : Assertion Subject NameID: `johnny@contoso.com` SAMLAuthenticator.cpp(00398) : Database user does not exist
A hiba azt jelzi, hogy a nameId johnny@contoso.com
az SAML-állításokban található, de nem létezik, vagy nem megfelelően van leképezve a HANA-kiszolgálón.
Resolution (Osztás)
Lépjen a HANA-adatbázis felhasználójához, és a kijelölt SAML-jelölőnégyzet alatt válassza a Konfigurálás hivatkozást. Megjelenik a következő ablak:
Ahogy a hibaüzenet írja, a HANA megpróbálta megtalálnijohnny@contoso.com, de a külső identitás csak johnnyként jelenik meg. A két értéknek egyeznie kell. A probléma megoldásához a Külső identitás területen módosítsa az értéket a következőrejohnny@contoso.com: . Vegye figyelembe, hogy ez az érték megkülönbözteti a kis- és nagybetűk értékét.
Kapcsolódó tartalom
A helyszíni adatátjáróról és a DirectQueryről a következő forrásokban talál további információt: