ใช้ภาษามาร์กอัปยืนยันความปลอดภัยสําหรับ SSO จาก Power BI ไปยังแหล่งข้อมูลภายในองค์กร

การเปิดใช้งานการลงชื่อเข้าระบบครั้งเดียว (SSO) ทําให้รายงาน Power BI และแดชบอร์ดสามารถรีเฟรชข้อมูลจากแหล่งข้อมูลภายในองค์กรได้อย่างง่ายดาย ในขณะที่คุณเคารพสิทธิ์ระดับผู้ใช้ที่ได้รับการกําหนดค่าบนแหล่งข้อมูลเหล่านั้น เพื่อเปิดใช้งานการเชื่อมต่อ SSO แบบไร้รอยต่อ คุณใช้ Security Assertion Markup Language (SAML)

หมายเหตุ

คุณสามารถเชื่อมต่อกับแหล่งข้อมูลเดียวเท่านั้นโดยใช้ SAML แบบลงชื่อเข้าระบบครั้งเดียวด้วยเกตเวย์ข้อมูลภายในองค์กร เมื่อต้องการเชื่อมต่อกับแหล่งข้อมูลเพิ่มเติมโดยใช้ SAML แบบลงชื่อเข้าระบบครั้งเดียว คุณต้องใช้เกตเวย์ข้อมูลภายในองค์กรอื่น

แหล่งข้อมูลที่ได้รับการสนับสนุนสําหรับ SAML

ปัจจุบัน Microsoft สนับสนุน SAP HANA ที่มี SAML สําหรับข้อมูลเพิ่มเติมเกี่ยวกับการตั้งค่าและกําหนดค่าการลงชื่อเข้าระบบครั้งเดียวสําหรับ SAP HANA โดยใช้ SAML ดู SAML SSO for BI Platform to HANA

เราสนับสนุนแหล่งข้อมูลเพิ่มเติมด้วย Kerberos (รวมถึง SAP HANA)

สําหรับ SAP HANA เราขอแนะนําให้คุณเปิดใช้งานการเข้ารหัสก่อนที่คุณจะสร้างการเชื่อมต่อ SAML SSO หากต้องการเปิดใช้งานการเข้ารหัส กําหนดค่าเซิร์ฟเวอร์ HANA ให้ยอมรับการเชื่อมต่อที่เข้ารหัสลับ แล้วกําหนดค่าเกตเวย์เพื่อใช้การเข้ารหัสเพื่อสื่อสารกับเซิร์ฟเวอร์ HANA ของคุณ เนื่องจาก HANA ODBC ไม่เข้ารหัสการยืนยัน SAML ตามค่าเริ่มต้น การยืนยัน SAML ที่ลงชื่อแล้วจะถูกส่งจากเกตเวย์ไปยังเซิร์ฟเวอร์ HANA ในลักษณะที่ชัดเจน และเสี่ยงต่อการถูกสกัดกั้นและใช้ซ้ําโดยบุคคลที่สาม

สำคัญ

เนื่องจาก SAP ไม่รองรับ OpenSSL อีกต่อไป Microsoft จึงยุติการสนับสนุนด้วยเช่นกัน การเชื่อมต่อที่มีอยู่ของคุณยังคงใช้งานได้ แต่คุณไม่สามารถสร้างการเชื่อมต่อใหม่ได้อีก ใช้ SAP Cryptographic Library (CommonCryptoLib) หรือ sapcrypto แทน

กําหนดค่าเกตเวย์และแหล่งข้อมูล

หากต้องการใช้ SAML คุณต้องสร้างความสัมพันธ์ที่เชื่อถือได้ระหว่างเซิร์ฟเวอร์ HANA ที่คุณต้องการเปิดใช้งาน SSO และเกตเวย์ ในสถานการณ์สมมตินี้ เกตเวย์ทําหน้าที่เป็นตัวให้บริการข้อมูลประจําตัว SAML (IdP) คุณสามารถสร้างความสัมพันธ์นี้ได้หลายวิธี SAP ขอแนะนําให้คุณใช้ CommonCryptoLib เพื่อทําตามขั้นตอนการตั้งค่าให้เสร็จสมบูรณ์ สําหรับข้อมูลเพิ่มเติม โปรดดูเอกสารประกอบ SAP อย่างเป็นทางการ

สร้างใบรับรอง

คุณสามารถสร้างความสัมพันธ์ที่เชื่อถือได้ระหว่างเซิร์ฟเวอร์ HANA และ Gateway IdP โดยการลงนามใบรับรอง X509 ของ Gateway IdP กับผู้ออกใบรับรองหลัก (CA) ที่ได้รับความเชื่อถือจากเซิร์ฟเวอร์ HANA

เมื่อต้องการสร้างใบรับรอง ให้ทําดังต่อไปนี้:

  1. บนอุปกรณ์ที่กําลังใช้งาน SAP HANA ให้สร้างโฟลเดอร์เปล่าเพื่อจัดเก็บใบรับรองของคุณ จากนั้นไปยังโฟลเดอร์นั้น

  2. สร้างใบรับรองหลักโดยการเรียกใช้คําสั่งต่อไปนี้:

    openssl req -new -x509 -newkey rsa:2048 -days 3650 -sha256 -keyout CA_Key.pem -out CA_Cert.pem -extensions v3_ca'''
    

    ตรวจสอบให้แน่ใจว่าได้คัดลอกและบันทึกวลีรหัสผ่านเพื่อใช้ใบรับรองนี้เพื่อลงนามใบรับรองอื่น ๆ คุณควรเห็น ไฟล์ CA_Cert.pem และ CA_Key.pem ที่สร้างขึ้น

  3. สร้างใบรับรอง IdP โดยการเรียกใช้คําสั่งต่อไปนี้:

    openssl req -newkey rsa:2048 -days 365 -sha256 -keyout IdP_Key.pem -out IdP_Req.pem -nodes
    

    คุณควรเห็น ไฟล์ IdP_Key.pem และ IdP_Req.pem ที่สร้างขึ้น

  4. ลงชื่อในใบรับรอง IdP ด้วยใบรับรองหลัก:

    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
    

    คุณควรเห็น ไฟล์ CA_Cert.srl และ IdP_Cert.pem ที่สร้างขึ้น ในขณะนี้ คุณกังวลเฉพาะกับ ไฟล์ IdP_Cert.pem เท่านั้น

สร้างการแมปสําหรับใบรับรองของตัวให้บริการข้อมูลประจําตัว SAML

เมื่อต้องการสร้างการแมปสําหรับใบรับรอง SAML Identity Provider ให้ทําดังต่อไปนี้:

  1. ใน SAP HANA Studio คลิกขวาที่ชื่อเซิร์ฟเวอร์ SAP HANA ของคุณ จากนั้นเลือกการรักษาความปลอดภัย>เปิดคอนโซล>การรักษาความปลอดภัย SAML Identity Provider

  2. เลือกตัวเลือก ไลบรารี SAP Cryptographic อย่าใช้ตัวเลือกไลบรารี OpenSSL Cryptographic ซึ่ง SAP ไม่สนับสนุน

    Screenshot of the

  3. หากต้องการนําเข้าใบรับรองที่มีเครื่องหมาย IdP_Cert.pem ให้เลือกปุ่ม นําเข้า สีน้ําเงิน ดังที่แสดงในรูปต่อไปนี้:

    Screenshot of the

  4. อย่าลืมกําหนดชื่อสําหรับตัวให้บริการข้อมูลประจําตัวของคุณ

นําเข้าและสร้างใบรับรองที่มีการลงชื่อใน HANA

เมื่อต้องการนําเข้าและสร้างใบรับรองที่มีการลงชื่อใน HANA ให้ทําดังต่อไปนี้:

  1. ใน SAP HANA Studio ให้เรียกใช้คิวรีต่อไปนี้:

    CREATE CERTIFICATE FROM '<idp_cert_pem_certificate_content>'
    

    ตัวอย่างมีดังนี้:

    CREATE CERTIFICATE FROM
    '-----BEGIN CERTIFICATE-----
    MIIDyDCCArCgA...veryLongString...0WkC5deeawTyMje6
    -----END CERTIFICATE-----
    '
    
  2. ถ้าไม่มีสภาพแวดล้อมความปลอดภัยส่วนบุคคล (PSE) ที่มีวัตถุประสงค์ SAML ให้สร้างหนึ่งรายการโดยการเรียกใช้คิวรีต่อไปนี้ใน SAP HANA Studio:

    CREATE PSE SAMLCOLLECTION;
    set pse SAMLCOLLECTION purpose SAML;
    
  3. เพิ่มใบรับรองที่มีการลงชื่อที่สร้างขึ้นใหม่ไปยัง PSE โดยการเรียกใช้คําสั่งต่อไปนี้:

    alter pse SAMLCOLLECTION add CERTIFICATE <certificate_id>;
    

    ตัวอย่างเช่น:

    alter pse SAMLCOLLECTION add CERTIFICATE 1978320;
    

    คุณสามารถตรวจสอบรายการใบรับรองที่สร้างขึ้นโดยการเรียกใช้คิวรีต่อไปนี้:

    select * from PUBLIC"."CERTIFICATES"
    

    ขณะนี้ใบรับรองได้รับการติดตั้งอย่างถูกต้องแล้ว เพื่อยืนยันการติดตั้ง คุณสามารถเรียกใช้คิวรีต่อไปนี้:

    select * from "PUBLIC"."PSE_CERTIFICATES"
    

แมปผู้ใช้

เมื่อต้องการแมปผู้ใช้ ให้ทําดังต่อไปนี้:

  1. ใน SAP HANA Studio เลือกโฟลเดอร์ ความปลอดภัย

    Screenshot of the Security folder structure on the left pane.

  2. ขยาย ผู้ใช้ แล้วเลือกผู้ใช้ที่คุณต้องการแมปไปยังผู้ใช้ Power BI

  3. เลือกกล่องกาเครื่องหมาย SAML จากนั้นเลือก กําหนดค่า ดังที่แสดงในรูปต่อไปนี้:

    Screenshot of the

  4. เลือกตัวให้บริการข้อมูลประจําตัวที่คุณสร้างขึ้นในส่วน สร้างการแมปสําหรับใบรับรอง ของตัวให้บริการข้อมูลประจําตัว SAML สําหรับข้อมูลประจําตัวภายนอก ให้ป้อน UPN ของผู้ใช้ Power BI (โดยปกติแล้วที่อยู่อีเมลที่ผู้ใช้ใช้เพื่อลงชื่อเข้าใช้ Power BI) จากนั้นเลือกเพิ่ม

    Screenshot of the

    ถ้าคุณได้กําหนดค่าเกตเวย์ของคุณให้ใช้ ตัวเลือกการกําหนดค่า ADUserNameReplacementProperty ให้ป้อนค่าที่จะแทนที่ UPN เดิมของผู้ใช้ Power BI ตัวอย่างเช่น ถ้าคุณตั้งค่า ADUserNameReplacementProperty เป็น SAMAccountName ให้ป้อน SAMAccountName ของผู้ใช้

กําหนดค่าเกตเวย์

หลังจากที่คุณได้กําหนดค่าใบรับรองเกตเวย์และข้อมูลประจําตัวแล้ว ให้แปลงใบรับรองเป็นรูปแบบไฟล์ PFX จากนั้นกําหนดค่าเกตเวย์เพื่อใช้ใบรับรองโดยทําดังต่อไปนี้:

  1. แปลงใบรับรองเป็นรูปแบบ PFX โดยการเรียกใช้คําสั่งต่อไปนี้ คําสั่งนี้ตั้งชื่อไฟล์ ผลลัพธ์ samlcert.pfx และตั้งค่า root เป็นรหัสผ่านดังที่แสดงไว้ที่นี่:

    openssl pkcs12 -export -out samltest.pfx -in IdP_Cert.pem -inkey IdP_Key.pem -passin pass:root -passout pass:root
    
  2. คัดลอกไฟล์ PFX ไปยังเครื่องเกตเวย์:

    ก. ดับเบิลคลิกที่ samltest.pfx จากนั้นเลือก เครื่อง>เฉพาะที่ ถัดไป

    ข. ป้อนรหัสผ่าน จากนั้นเลือก ถัดไป

    ค. เลือก วางใบรับรองทั้งหมดในที่เก็บต่อไปนี้ จากนั้นเลือก เรียกดู>ตกลงส่วนบุคคล>

    Screenshot of the

    ง. เลือก ถัดไป จากนั้นเลือก เสร็จสิ้น

  3. เมื่อต้องการให้สิทธิ์การเข้าถึงบัญชีบริการเกตเวย์ให้กับคีย์ส่วนตัวของใบรับรอง ให้ทําดังต่อไปนี้:

    ก. บนเครื่องเกตเวย์ เรียกใช้ Microsoft Management Console (MMC)

    Screenshot of the gateway machine

    ข. ใน MMC เลือก ไฟล์>เพิ่ม/ลบสแน็ปอิน

    Screenshot of the

    ค. เลือก ใบรับรอง>เพิ่ม จากนั้นเลือก บัญชี>คอมพิวเตอร์ ถัดไป

    ง. เลือกคอมพิวเตอร์เฉพาะที่>เสร็จสิ้นตกลง>

    จ. ขยาย ใบรับรอง>ส่วนบุคคล>จากนั้นค้นหาใบรับรอง

    ฉ. คลิกขวาที่ใบรับรอง จากนั้นเลือก งาน>ทั้งหมด จัดการคีย์ส่วนตัว

    Screenshot of the

    ช. เพิ่มบัญชีบริการเกตเวย์ลงในรายการ ตามค่าเริ่มต้น บัญชีคือ NT SERVICE\PBIEgwService คุณสามารถตรวจสอบได้ว่าบัญชีใดที่ใช้งานบริการเกตเวย์โดยใช้ services.msc แล้วค้นหา บริการเกตเวย์ข้อมูลภายในองค์กร

    Screenshot of the

สุดท้าย ให้เพิ่มรหัสประจําตัวใบรับรองลงในการกําหนดค่าเกตเวย์:

  1. หากต้องการแสดงรายการใบรับรองบนเครื่องของคุณ ให้เรียกใช้คําสั่ง PowerShell ต่อไปนี้:

    Get-ChildItem -path cert:\LocalMachine\My
    
  2. คัดลอกรหัสประจําตัวสําหรับใบรับรองที่คุณสร้างขึ้น

  3. ไปที่ไดเรกทอรีเกตเวย์ ซึ่งก็คือ C:\Program Files\On-premises data gateway ตามค่าเริ่มต้น

  4. เปิด PowerBI.DataMovement.Pipeline.GatewayCore.dll.config จากนั้นค้นหาส่วน SapHanaSAMLCertThumbprint วางรหัสประจําตัวที่คุณคัดลอกในขั้นตอนที่ 2

  5. รีสตาร์ทบริการเกตเวย์

เรียกใช้รายงาน Power BI

ตอนนี้คุณสามารถใช้หน้า จัดการเกตเวย์ ใน Power BI เพื่อกําหนดค่าแหล่งข้อมูล SAP HANA ได้ ภายใต้ การตั้งค่าขั้นสูง ให้เปิดใช้งาน SSO ผ่าน SAML ด้วยการทําเช่นนั้น คุณสามารถเผยแพร่รายงานและชุดข้อมูลที่เชื่อมโยงกับแหล่งข้อมูลนั้นได้

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

หมายเหตุ

SSO ใช้การรับรองความถูกต้องของ Windows ดังนั้นตรวจสอบให้แน่ใจว่าบัญชี windows สามารถเข้าถึงเครื่องเกตเวย์ได้ ถ้าไม่แน่ใจ ตรวจสอบให้แน่ใจว่าได้เพิ่ม NT-AUTHORITY\Authenticated Users (S-1-5-11) ไปยังกลุ่ม "ผู้ใช้" ภายในเครื่อง

แก้ไขปัญหาการใช้ SAML สําหรับการลงชื่อเข้าระบบครั้งเดียวไปยัง SAP HANA

ส่วนนี้มีขั้นตอนอย่างละเอียดเพื่อแก้ไขปัญหาโดยใช้ SAML สําหรับการลงชื่อเข้าระบบครั้งเดียวไปยัง SAP HANA การใช้ขั้นตอนเหล่านี้สามารถช่วยให้คุณวินิจฉัยและแก้ไขปัญหาที่คุณอาจเผชิญได้ด้วยตนเอง

ข้อมูลประจําตัวที่ถูกปฏิเสธ

หลังจากที่คุณกําหนดค่า SSO โดยยึดตาม SAML คุณอาจเห็นข้อผิดพลาดต่อไปนี้ในพอร์ทัล Power BI: "ไม่สามารถใช้ข้อมูลประจําตัวที่ให้ไว้สําหรับแหล่งข้อมูล SapHana" ข้อผิดพลาดนี้ระบุว่าข้อมูลประจําตัว SAML ถูกปฏิเสธโดย SAP HANA

การติดตามการรับรองความถูกต้องฝั่งเซิร์ฟเวอร์มีข้อมูลโดยละเอียดสําหรับการแก้ไขปัญหาข้อมูลประจําตัวบน SAP HANA ในการกําหนดค่าการติดตามสําหรับเซิร์ฟเวอร์ SAP HANA ของคุณ ให้ทําดังต่อไปนี้:

  1. บนเซิร์ฟเวอร์ SAP HANA เปิดใช้งานการติดตามการรับรองความถูกต้องโดยการเรียกใช้คิวรีต่อไปนี้:

    ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM') set ('trace', 'authentication') = 'debug' with reconfigure 
    
  2. สร้างปัญหาขึ้นมาใหม่

  3. ใน SAP HANA Studio เปิดคอนโซลดูแลระบบจากนั้นเลือก แท็บ ไฟล์ การวินิจฉัย

  4. เปิดการติดตามเซิร์ฟเวอร์ดัชนีล่าสุด แล้วค้นหา SAMLAuthenticator.cpp

    คุณควรค้นหาข้อความแสดงข้อผิดพลาดโดยละเอียดที่ระบุสาเหตุหลัก ดังที่แสดงในตัวอย่างต่อไปนี้:

    [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. หลังจากที่คุณเสร็จสิ้นการแก้ไขปัญหา ปิดใช้งานการติดตามการรับรองความถูกต้องโดยการเรียกใช้คิวรีต่อไปนี้:

    ALTER SYSTEM ALTER CONFIGURATION ('indexserver.ini', 'SYSTEM') UNSET ('trace', 'authentication');
    

ตรวจสอบและแก้ไขปัญหาข้อผิดพลาดเกตเวย์

เมื่อต้องการทําตามขั้นตอนในส่วนนี้ คุณจําเป็นต้อง รวบรวมไฟล์บันทึกเกตเวย์

ข้อผิดพลาดของ SSL (ใบรับรอง)

อาการข้อผิดพลาด

ปัญหานี้มีหลายอาการ เมื่อคุณพยายามเพิ่มแหล่งข้อมูลใหม่ คุณอาจเห็นข้อความแสดงข้อผิดพลาดดังต่อไปนี้:

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

เมื่อคุณพยายามสร้างหรือรีเฟรชรายงาน คุณอาจเห็นข้อความแสดงข้อผิดพลาดเหมือนกับข้อความในรูปต่อไปนี้:

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

เมื่อคุณตรวจสอบ Mashup[date]*.log คุณจะเห็นข้อความแสดงข้อผิดพลาดต่อไปนี้:

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

แก้ ปัญหา

เมื่อต้องการแก้ไขข้อผิดพลาด SSL นี้ ให้ไปที่การเชื่อมต่อแหล่งข้อมูล จากนั้นในรายการ ดรอปดาวน์ ตรวจสอบใบรับรอง เซิร์ฟเวอร์ ให้เลือก ไม่ ดังที่แสดงในรูปต่อไปนี้:

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

หลังจากที่คุณเลือกการตั้งค่านี้ ข้อความแสดงข้อผิดพลาดจะไม่ปรากฏขึ้นอีกต่อไป

ข้อผิดพลาด Gateway SignXML

ข้อผิดพลาด SignXML ของเกตเวย์สามารถเป็นผลมาจากการตั้งค่า SapHanaSAMLCertThumbprint ที่ไม่ถูกต้อง หรืออาจเป็นปัญหากับเซิร์ฟเวอร์ HANA ได้ รายการในบันทึกเกตเวย์ช่วยระบุตําแหน่งของปัญหา และวิธีการแก้ปัญหา

อาการข้อผิดพลาด

รายการบันทึกสําหรับ SignXML: Found the cert...: ถ้าแฟ้ม GatewayInfo[date].log มีข้อผิดพลาดนี้ พบใบรับรอง SignXML และความพยายามในการแก้ไขปัญหาของคุณควรมุ่งเน้นไปที่ขั้นตอนที่พบในส่วน "ตรวจสอบและแก้ไขปัญหาด้านเซิร์ฟเวอร์ HANA"

รายการบันทึกสําหรับ Couldn't find saml cert: ถ้าแฟ้ม GatewayInfo[date].log ของคุณมีข้อผิดพลาด นี้ SapHanaSAMLCertThumbprint ถูกตั้งค่าอย่างไม่ถูกต้อง ส่วนการแก้ปัญหาต่อไปนี้อธิบายถึงวิธีการแก้ไขปัญหาดังกล่าว

แก้ ปัญหา

เมื่อต้องการตั้งค่า SapHanaSAMLCertThumbprint อย่างถูกต้อง ให้ทําตามคําแนะนําในส่วน "กําหนดค่าเกตเวย์" คําแนะนําเริ่มต้นด้วย สุดท้าย ให้เพิ่มรหัสประจําตัวใบรับรองลงในการกําหนดค่าเกตเวย์

หลังจากที่คุณได้เปลี่ยนไฟล์การกําหนดค่าแล้ว คุณจําเป็นต้องเริ่มบริการเกตเวย์ใหม่เพื่อให้การเปลี่ยนแปลงมีผล

การตรวจสอบความถูกต้อง

เมื่อตั้งค่า SapHanaSAMLCertThumbprint อย่างถูกต้อง บันทึกเกตเวย์ของคุณจะมีรายการที่มีSignXML: Found the cert... ในขั้นตอนนี้ คุณควรสามารถดําเนินการในส่วน "ตรวจสอบและแก้ไขปัญหาฝั่งเซิร์ฟเวอร์ HANA"

ถ้าเกตเวย์ไม่สามารถใช้ใบรับรองเพื่อลงนามการยืนยัน SAML คุณอาจเห็นข้อผิดพลาดในบันทึกที่คล้ายกับรายการต่อไปนี้:

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.

เมื่อต้องการแก้ไขข้อผิดพลาดนี้ ให้ทําตามคําแนะนําที่เริ่มต้นด้วยขั้นตอนที่ 3 ในส่วน "กําหนดค่าเกตเวย์"

หลังจากที่คุณได้เปลี่ยนแปลงการกําหนดค่าแล้ว ให้เริ่มบริการเกตเวย์ใหม่เพื่อให้การเปลี่ยนแปลงมีผล

ตรวจสอบและแก้ไขปัญหาฝั่งเซิร์ฟเวอร์ HANA

ใช้โซลูชันในส่วนนี้หากเกตเวย์สามารถค้นหาใบรับรองและลงนามในการยืนยัน SAML ได้ แต่คุณยังคงพบข้อผิดพลาดอยู่ คุณจะต้องรวบรวมการติดตามการรับรองความถูกต้อง HANA ตามที่อธิบายไว้ก่อนหน้านี้ ในส่วน "ข้อมูลประจําตัวที่ถูกปฏิเสธ"

ตัวให้บริการข้อมูลประจําตัว SAML

การแสดงตนของ Found SAML provider สตริงในการติดตามการรับรองความถูกต้อง HANA ระบุว่าตัวให้บริการข้อมูลประจําตัว SAML ได้รับการกําหนดค่าอย่างถูกต้อง หากสตริงไม่ปรากฏ การกําหนดค่าไม่ถูกต้อง

แก้ ปัญหา

ขั้นแรก ตรวจสอบว่าองค์กรของคุณใช้ OpenSSL หรือ commoncrypto เป็น sslcryptoprovider หรือไม่ เมื่อต้องการกําหนดว่ากําลังใช้ตัวให้บริการใด ให้ทําดังต่อไปนี้:

  1. เปิด SAP HANA Studio

  2. เปิดคอนโซลดูแลระบบสําหรับผู้เช่าที่คุณกําลังใช้

  3. เลือกแท็บ การกําหนดค่า และใช้ sslcryptoprovider เป็นตัวกรอง ดังที่แสดงในรูปต่อไปนี้:

    Screenshot of the sslcryptoprovider information in SAP HANA Studio.

ถัดไป ตรวจสอบว่าไลบรารีเข้ารหัสลับถูกตั้งค่าอย่างถูกต้อง โดยทําดังต่อไปนี้:

  1. ไปที่คอนโซลการรักษาความปลอดภัยใน SAP HANA Studio โดย การเลือกแท็บ SAML Identity Providers และเลือกทําอย่างใดอย่างหนึ่งต่อไปนี้:

    • ถ้า sslcryptoprovider เป็น OpenSSL ให้เลือก เปิดไลบรารีเข้ารหัสลับของ OpenSSL
    • ถ้า sslcryptoprovider เป็น commonCrypto ให้เลือก SAP Cryptographic Library

    ในรูป ต่อไปนี้ มีการเลือกไลบรารี SAP Cryptographic:

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

  2. ปรับใช้การเปลี่ยนแปลงของคุณโดยการเลือกปุ่ม ปรับใช้ ที่มุมขวาบน ดังที่แสดงในรูปต่อไปนี้:

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

การตรวจสอบความถูกต้อง

เมื่อมีการกําหนดค่าการติดตามอย่างถูกต้อง พวกเขาจะรายงานFound SAML providerและจะไม่รายงานSAML Provider not found คุณสามารถไปต่อในส่วนถัดไป "แก้ไขปัญหาลายเซ็นการยืนยัน SAML"

ถ้าตัวให้บริการการเข้ารหัสถูกตั้งค่า แต่ SAML Provider not found ยังคงได้รับรายงาน ให้ค้นหาสตริงในการติดตามที่เริ่มต้นด้วยข้อความต่อไปนี้:

Search SAML provider for certificate with subject =

ในสตริงนั้น ตรวจสอบให้แน่ใจว่าหัวเรื่องและผู้ออกถูกต้องเหมือนกับที่แสดงในแท็บตัวให้บริการข้อมูลประจําตัว SAML ในคอนโซลการรักษาความปลอดภัย ความแตกต่างแม้อักขระเดี่ยวอาจทําให้เกิดปัญหาได้ ถ้าคุณพบความแตกต่าง คุณสามารถแก้ไขปัญหาในไลบรารี SAP Cryptographic เพื่อให้รายการตรงกันทั้งหมด

ถ้าการเปลี่ยนแปลงไลบรารี SAP Cryptographic ไม่สามารถแก้ไขปัญหาได้ คุณสามารถแก้ไข เขตข้อมูลออกให้ และ ออกโดย เพียงแค่ดับเบิลคลิกที่เขตข้อมูลเหล่านั้นด้วยตนเอง

แก้ไขปัญหาลายเซ็นการยืนยัน SAML

คุณอาจพบว่าการติดตามการรับรองความถูกต้อง HANA ที่ประกอบด้วยรายการคล้ายกับรายการต่อไปนี้:

[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!

การมีรายการดังกล่าวหมายความว่าลายเซ็นไม่น่าเชื่อถือ

แก้ ปัญหา

หากคุณใช้ OpenSSL เป็น sslcryptoprovider ของคุณ ให้ตรวจสอบเพื่อดูว่า ไฟล์ trust.pem และ key.pem อยู่ในไดเรกทอรี SSL หรือไม่ สําหรับข้อมูลเพิ่มเติม ดูบล็อก SAP การรักษาความปลอดภัยของการสื่อสารระหว่าง SAP HANA Studio และเซิร์ฟเวอร์ SAP HANA ผ่าน SSL

หากคุณกําลังใช้ commoncrypto เป็น sslcryptoprovider ของคุณ ให้ตรวจสอบเพื่อดูว่ามีคอลเลกชันที่มีใบรับรองของคุณในผู้เช่าหรือไม่

การตรวจสอบความถูกต้อง

เมื่อมีการกําหนดค่าการติดตามอย่างถูกต้อง พวกเขาจะรายงานFound valid XML signature

แก้ไขปัญหาการแมป UPN

คุณอาจพบการติดตาม HANA ที่ประกอบด้วยรายการต่างๆ ที่คล้ายกับรายการต่อไปนี้:

SAMLAuthenticator.cpp(00886) : Assertion Subject NameID: `johnny@contoso.com` SAMLAuthenticator.cpp(00398) : Database user does not exist

ข้อผิดพลาดระบุว่า nameId johnny@contoso.com พบได้ในการยืนยัน SAML แต่ไม่มีอยู่ หรือไม่ได้ถูกแมปอย่างถูกต้องใน HANA Server

แก้ ปัญหา

ไปที่ผู้ใช้ฐานข้อมูล HANA และภายใต้กล่องกาเครื่องหมาย SAML ที่เลือก ให้เลือกลิงก์ กําหนดค่า หน้าต่างต่อไปนี้จะปรากฏขึ้น:

Screenshot showing that the incorrect user name is displayed.

ตามที่ข้อความแสดงข้อผิดพลาดอธิบาย HANA กําลังพยายามค้นหา johnny@contoso.comแต่ข้อมูลประจําตัวภายนอกจะแสดงเป็น johnny เท่านั้น ค่าสองค่านี้ต้องตรงกัน เมื่อต้องการแก้ไขปัญหานี้ ภายใต้ ข้อมูลประจําตัวภายนอก ให้เปลี่ยนค่า เป็นjohnny@contoso.com โปรดทราบว่าค่านี้ไวต่ออักษรใหญ่-เล็ก

สําหรับข้อมูลเพิ่มเติมเกี่ยวกับเกตเวย์ข้อมูลภายในองค์กรและ DirectQuery โปรดดูทรัพยากรต่อไปนี้: