Megosztás a következőn keresztül:


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:

  1. 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.

  2. 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.

  3. 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.

  4. Í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:

  1. 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.

  2. 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.

    Screenshot of the

  3. 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:

    Screenshot of the

  4. 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:

  1. 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-----
    '
    
  2. 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;
    
  3. 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:

  1. Az SAP HANA Studióban válassza a Biztonsági mappát.

    Screenshot of the Security folder structure on the left pane.

  2. 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.

  3. 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:

    Screenshot of the

  4. 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.

    Screenshot of the

    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:

  1. 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
    
  2. 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.

    Screenshot of the

    d. Válassza a Tovább, majd a Befejezés lehetőséget.

  3. 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).

    Screenshot of the gateway machine

    b. Az MMC-ben válassza a Fájl>hozzáadása/eltávolítása beépülő modult.

    Screenshot of the

    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.

    Screenshot of the

    : 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.

    Screenshot of the

Végül adja hozzá a tanúsítvány ujjlenyomatát az átjáró konfigurációjához:

  1. 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
    
  2. Másolja ki a létrehozott tanúsítvány ujjlenyomatát.

  3. Nyissa meg az átjáró könyvtárát, amely alapértelmezés szerint C:\Program Files\Helyszíni adatátjáró .

  4. 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.

  5. 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.

 Screenshot of advanced settings with single sign-on for SAML.

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:

  1. 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 
    
  2. Reprodukálja a problémát.

  3. Az SAP HANA Studióban nyissa meg a felügyeleti konzolt, majd válassza a Diagnosztikai fájlok lapot.

  4. 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
    
  5. 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:

Screenshot of a 'Cannot load model' troubleshooting SSL error window.

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ó:

Screenshot showing the S S L error being resolved on the 'Data Source Settings' pane.

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 certHa 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:

  1. Nyissa meg az SAP HANA Studiót.

  2. Nyissa meg a használt bérlő Rendszergazda istration konzolját.

  3. Válassza a Konfiguráció lapot, és használjon sslcryptoprovidert szűrőként az alábbi képen látható módon:

    Screenshot of the sslcryptoprovider information in SAP HANA Studio.

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:

  1. 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:

    Screenshot of SAP HANA Studio with 'SAP Cryptographic Library' selected as the sslcryptoprovider.

  2. 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:

    Screenshot of the 'Deploy' button for deploying your solution changes.

É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:

Screenshot showing that the incorrect user name is displayed.

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.

A helyszíni adatátjáróról és a DirectQueryről a következő forrásokban talál további információt: