กำหนดค่าแอปที่เชื่อมต่อกับการพิทักษ์ OAuth 2.0

ในฐานะผู้ดูแล Tableau Server คุณสามารถลงทะเบียนเซิร์ฟเวอร์การให้สิทธิ์ภายนอก (EAS) อย่างน้อย 1 รายการเพื่อสร้างความสัมพันธ์ที่เชื่อถือได้ระหว่าง Tableau Server ของคุณและ EAS โดยใช้โปรโตคอลมาตรฐานของ OAuth 2.0

สำคัญ:

  • โพรซีเยอร์บางรายการในหัวข้อนี้จำเป็นต้องใช้การกำหนดค่าร่วมกับซอฟต์แวร์และบริการของบุคคลที่สาม เราได้พยายามอย่างเต็มความสามารถในการตรวจสอบขั้นตอนต่างๆ เพื่อเปิดใช้งานฟีเจอร์ EAS บน Tableau Server อย่างไรก็ตาม ซอฟต์แวร์และบริการของบริษัทอื่นอาจมีการเปลี่ยนแปลงหรือองค์กรของคุณอาจแตกต่างกันไป หากคุณประสบปัญหา โปรดดูรายละเอียดการกำหนดค่าและการสนับสนุนอย่างเป็นทางการในเอกสารของบริษัทอื่น
  • หากต้องการเปิดใช้งานการฝังผ่าน EAS Tableau Server ต้องได้รับการกำหนดค่าให้ใช้ SSL สำหรับปริมาณการใช้ HTTP
  • เพื่อให้โทเค็นเซสชันใช้งานได้ นาฬิกาของแอปพลิเคชันภายนอกและเซิร์ฟเวอร์ที่โฮสต์แอปพลิเคชันภายนอกต้องตั้งค่าเป็นเวลาสากลเชิงพิกัด (UTC) แอปที่เชื่อมต่อจะไม่ได้รับความเชื่อถือหากนาฬิกาใดนาฬิกาหนึ่งใช้มาตรฐานอื่น

แอปที่เชื่อมต่อของ Tableau ทำงานอย่างไรกับความน่าเชื่อถือ OAuth 2.0

ความสัมพันธ์ของความเชื่อถือระหว่างไซต์ Tableau Server และแอปพลิเคชันภายนอกได้รับการจัดตั้งและตรวจสอบยืนยันผ่านโทเค็นการตรวจสอบสิทธิ์ในมาตรฐานโทเค็นเว็บ JSON(JWT)

เมื่อโหลดเนื้อหาของ Tableau แบบฝังในแอปพลิเคชันภายนอกแล้ว ระบบจะใช้โฟลว์รหัสการตรวจสอบสิทธิ์, โฟลว์ OAuth หลังจากที่ผู้ใช้เข้าสู่ระบบ IdP สำเร็จแล้ว ผู้ใช้จะเข้าสู่ระบบโดยอัตโนมัติใน Tableau Server ดำเนินการตามขั้นตอนที่อธิบายไว้ด้านล่างเพื่อลงทะเบียน EAS ของคุณกับTableau Server

คอมโพเนนต์หลักของแอปที่เชื่อมต่อ

คอมโพเนนต์ต่อไปนี้ของแอปที่เชื่อมต่อจะทำงานร่วมกับ JWT ในแอปพลิเคชันภายนอกของคุณเพื่อตรวจสอบสิทธิผู้ใช้และแสดงเนื้อหาแบบฝัง

  • เซิร์ฟเวอร์การตรวจสอบสิทธิ์ภายนอก (EAS): เซิร์ฟเวอร์ โดยทั่วไปคือ IdP ของคุณ ที่ทำหน้าที่เป็นอินเทอร์เฟซระหว่างผู้ใช้และแอปพลิเคชันภายนอก เซิร์ฟเวอร์จะตรวจสอบสิทธิ์และให้สิทธิ์ผู้ใช้เพื่อเข้าถึงเนื้อหา Tableau ที่ได้รับปกป้อง

  • URL ผู้ออก: URL ที่ระบุอินสแตนซ์ EAS อย่างเฉพาะเจาะจง

เวิร์กโฟลว์ของแอปที่เชื่อมต่อ

การฝังเวิร์กโฟลว์

แผนภูมิด้านล่างจะแสดงวิธีการทำงานของการตรวจสอบสิทธิระหว่างเซิร์ฟเวอร์การให้สิทธิ์ภายนอก (EAS), แอปพลิเคชันภายนอกของคุณ (เว็บเซิร์ฟเวอร์และหน้าเว็บ) และแอปที่เชื่อมต่อ

  1. ผู้ใช้ไปที่หน้าเว็บ: เมื่อผู้ใช้ไปที่เนื้อหาแบบฝังบนหน้าเว็บ หน้าเว็บจะส่งคำขอ GET ไปยังแอปพลิเคชันภายนอก

  2. แอปพลิเคชันภายนอกเปลี่ยนเส้นทางคำขอไปยัง EAS: แอปพลิเคชันภายนอกตอบสนองกับหน้าเว็บที่เปลี่ยนเส้นทางไปยังเซิร์ฟเวอร์การให้สิทธิ์ภายนอก (EAS)

  3. ผู้ใช้ตรวจสอบสิทธิ์ด้วย EAS: ผู้ใช้จะตรวจสอบสิทธิ์และให้สิทธิ์โดยใช้ EAS

  4. EAS ตอบสนองต่อหน้าเว็บด้วยรหัสการให้สิทธิ์: EAS ตอบสนองต่อหน้าเว็บด้วยรหัสการให้สิทธิ์และเปลี่ยนเส้นทางกลับไปยังหน้าเว็บ

  5. EAS แปลงรหัสการให้สิทธิ์เป็น JWT: หน้าเว็บเรียกใช้ EAS เพื่อแปลงรหัสการให้สิทธิ์เป็น JWT ซึ่งหน้าเว็บจะใส่ไว้ใน URL ของเนื้อหาแบบฝัง

  6. หน้าเว็บขอเนื้อหาจาก Tableau: หน้าเว็บจะโหลด iFrame และส่งคำขอ GET ไปยัง Tableau

  7. Tableau ตรวจสอบโทเค็น: Tableau ตรวจสอบ JWT ใน URL ด้วยการลงนามและตอบสนองด้วยเนื้อหาและปฏิบัติตามขอบเขตการฝังที่กำหนดไว้ใน JWT

การสร้างแอปที่เชื่อมต่อ

ขั้นตอนที่ 1: ก่อนที่คุณจะเริ่มต้น

หากต้องการลงทะเบียน EAS กับ Tableau Server คุณต้องกำหนดค่า EAS ให้เรียบร้อยก่อน นอกจากนี้ EAS ต้องส่ง JSON Web Token (JWT) ที่ถูกต้องซึ่งมีการอ้างสิทธิ์ที่ลงทะเบียนและส่วนหัวที่ระบุไว้ในตารางด้านล่าง

การอ้างสิทธิ์ชื่อคำอธิบายหรือค่าที่ต้องการ
"kid"ID คีย์จำเป็น (ในส่วนหัว) ตัวระบุคีย์ที่ไม่ซ้ำกันจากผู้ให้บริการข้อมูลระบุตัวตน
"iss"ผู้ออกจำเป็น (ในส่วนหัวหรือเพื่อการอ้างสิทธิ์) URI ของผู้ออกที่ไม่ซ้ำกันซึ่งระบุแอปที่เชื่อมต่อที่เชื่อถือได้และคีย์การลงนาม
"alg"อัลกอริทึมจำเป็น (ในส่วนหัว) อัลกอริทึมการลงนาม JWT ชื่อของอัลกอริทึมที่รองรับจะระบุไว้ในหน้า Class JWSAlgorithm(ลิงก์จะเปิดในหน้าต่างใหม่) ในเอกสาร javadoc.io อัลกอริทึมการลงนามสามารถกำหนดค่าได้ด้วยคำสั่งvizportal.oauth.external_authorization_server.blocklisted_jws_algorithms
"sub"หัวข้อชื่อผู้ใช้ ของผู้ใช้ Tableau Server ที่ผ่านการตรวจสอบสิทธิ์
"aud"กลุ่มเป้าหมาย

ค่าจะต้องเป็น: "tableau"

"exp"เวลาหมดอายุJWT ที่ถูกต้องต้องไม่หมดอายุ เวลาหมดอายุ (ใน UTC) ของ JWT ต้องอยู่ภายในช่วงเวลาที่ใช้ได้สูงสุดซึ่งกำหนดค่าไว้ ช่วงเวลาที่ใช้ได้สูงสุดสามารถกำหนดค่าได้ด้วยคำสั่งvizportal.oauth.external_authorization_server.max_expiration_period_in_minutes
"jti"ID ของ JWTการอ้างสิทธิ์ ID JWT จะมีตัวระบุที่ไม่ซ้ำกันสำหรับ JWT และคำนึงถึงตัวพิมพ์เล็กและตัวพิมพ์ใหญ่
"scp"การกำหนดขอบเขต

ค่าที่รองรับสำหรับการฝังเวิร์กโฟลว์ ได้แก่

"tableau:views:embed"
"tableau:views:embed_authoring " (เพิ่มใน Tableau Server 2022.3)
"tableau:metrics:embed" (เลิกใช้แล้วใน Tableau Server 2023.3)
tableau:ask_data:embed”(เพิ่มใน Tableau Server 2023.1 จะเลิกใช้ใน Tableau Server 2024.2)

หมายเหตุ:

  • ต้องส่งผ่านค่าเป็นประเภทรายการ
  • สำหรับ tableau:views:embed ขอบเขตจะเป็นไปตามสิทธิ์ของผู้ใช้ที่กำหนดค่าไว้แล้วใน Tableau Server และอนุญาตให้ผู้ใช้โต้ตอบกับเครื่องมือในมุมมองแบบฝังได้ หากมีให้ใช้ในแบบมุมมองดั้งเดิม
  • เราขอแนะนำให้ใช้โค้ดฝังที่ไม่รวมพารามิเตอร์ของแถบเครื่องมือ หากต้องการข้อมูลเพิ่มเติม โปรดดูปัญหาที่ทราบแล้ว (เฉพาะการฝังเวิร์กโฟลว์เท่านั้น)ด้านล่าง

สำหรับเวิร์กโฟลว์ของการตรวจสอบสิทธิ์ REST API โปรดดูเมธอด REST API ที่รองรับการรับรองสิทธิ์ของ JWT

สำหรับเวิร์กโฟลว์ API เมตาดาต้าที่ใช้ REST API สำหรับการตรวจสอบสิทธิ์ขอบเขตเดียวที่รองรับคือ tableau:content:read

https://tableau.com/groupsการเป็นสมาชิกกลุ่มแบบไดนามิกสำหรับการฝังเวิร์กโฟลว์เท่านั้น

ค่าจะต้องตรงกับชื่อของกลุ่มตั้งแต่หนึ่งกลุ่มขึ้นไปใน Tableau Server หากต้องการข้อมูลเพิ่มเติม โปรดดูส่วนการเป็นสมาชิกกลุ่มแบบไดนามิก (เวิร์กโฟลว์แบบฝังเท่านั้น)ด้านล่าง

หมายเหตุ: การอ้างสิทธิ์ JWT ข้างต้นจะบันทึกไว้ในส่วนชื่อการอ้างสิทธิ์ที่ลงทะเบียนแล้ว(ลิงก์จะเปิดในหน้าต่างใหม่)ในเอกสารที่องค์กร Internet Engineering Task Force (IETF) แจกจ่ายให้

ขั้นตอนที่ 2: ลงทะเบียน EAS ด้วย Tableau Server

เมื่อลงทะเบียน EAS ด้วย Tableau Server หมายความว่าคุณได้สร้างความสัมพันธ์ที่เชื่อถือได้ระหว่าง EAS และ Tableau Server ซึ่งหมายความว่าเมื่อผู้ใช้เข้าถึงเนื้อหาของ Tableau ที่ฝังในแอปพลิเคชันที่คุณกำหนดเอง ระบบจะเปลี่ยนเส้นทางผู้ใช้เพื่อให้ไปตรวจสอบสิทธิกับ IdP EAS จะสร้างโทเค็นการตรวจสอบสิทธิ์ ซึ่งส่งให้กับ Tableau Server เพื่อการตรวจสอบ หลังตรวจสอบความสัมพันธ์ที่เชื่อถือได้แล้ว ผู้ใช้จะสามารถเข้าถึงเนื้อหาแบบฝังได้

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

เกี่ยวกับ EAS ระดับไซต์

ตั้งแต่ Tableau Server 2024.2 เป็นต้นไป คุณสามารถกำหนดค่าการเชื่อมต่อ EAS ระดับไซต์ได้ หากต้องการลงทะเบียน EAS ที่ระดับไซต์ จะต้องเปิดใช้งานแอปที่เชื่อมต่อใน Tableau Server Manager (TSM)

คุณสามารถลงทะเบียน EAS ทั่วทั้งเซิร์ฟเวอร์ได้สองวิธี ได้แก่ โดยการใช้ UI เว็บของ TSM หรือใช้ TSM CLI

หลังการลงทะเบียน EAS แล้วความสัมพันธ์ที่เชื่อถือได้จะมีผลกับทุกไซต์บน Tableau Server

ตัวเลือกที่ 1: การใช้ UI เว็บของ TSM

  1. โดยให้เข้าสู่ระบบ UI ของเว็บ Tableau Services Manager (TSM) ในฐานะผู้ดูแลระบบของ Tableau Server หากต้องการข้อมูลเพิ่มเติม โปรดดูเข้าสู่ระบบ Tableau Services Manager Web UI

  2. ทำอย่างใดอย่างหนึ่งต่อไปนี้:

    • ใน Tableau Server 2024.2 และใหม่กว่า ให้ไปที่แท็บ ข้อมูลประจำตัวผู้ใช้และการเข้าถึง > แอปที่เชื่อมต่อ

    • ใน Tableau Server 2023.3 และก่อนกว่า ให้ไปที่แท็บ ข้อมูลประจำตัวผู้ใช้และการเข้าถึง > เซิร์ฟเวอร์การให้สิทธิ์

  3. ทำอย่างใดอย่างหนึ่งต่อไปนี้:
    • ใน Tableau Server 2024.2 และใหม่กว่า

      1. เลือกช่องทำเครื่องหมายเปิดใช้งานแอปที่เชื่อมต่อ

      2. เลือกปุ่มตัวเลือกที่สอง อนุญาตแอปที่เชื่อมต่อ (กำหนดค่าที่ระดับไซต์) และการพิทักษ์ OAuth 2.0 ทั่วทั้งเซิร์ฟเวอร์ (กำหนดค่าด้านล่าง)

      3. ในกล่องข้อความ URL ของผู้ออก วาง URL ของผู้ออกของ EAS

      4. คลิกที่ปุ่มบันทึกการเปลี่ยนแปลงที่รอดำเนินการ

    • ใน Tableau Server 2023.3 และก่อนหน้า

      1. เลือกกล่องกาเครื่องหมายเปิดใช้งานการเข้าถึง OAuth สำหรับเนื้อหาแบบฝัง

      2. ในกล่องข้อความ URL ของผู้ออก วาง URL ของผู้ออกของ EAS

      3. คลิกที่ปุ่มบันทึกการเปลี่ยนแปลงที่รอดำเนินการ

  4. เมื่อเสร็จสิ้นให้ดำเนินการดังต่อไปนี้
    1. ตรงมุมขวาบนของหน้า ให้คลิกที่ปุ่มการเปลี่ยนแปลงที่รอดำเนินการ

    2. ตรงมุมขวาบนของหน้า ให้คลิกที่ปุ่มปรับใช้การเปลี่ยนแปลงและรีสตาร์ทเพื่อหยุดและรีสตาร์ท Tableau Server

ตัวเลือกที่ 2: การใช้ TSM CLI

  1. เปิดข้อความแจ้งคำสั่งในฐานะผู้ดูแลระบบบนโหนดเริ่มต้น (ที่ติดตั้ง TSM) ในคลัสเตอร์
  2. เรียกใช้คำสั่งต่อไปนี้:

    tsm configuration set -k vizportal.oauth.external_authorization.enabled -v true
    tsm configuration set -k vizportal.oauth.external_authorization_server.issuer -v "<issuer_url_of_EAS>"
    tsm restart

ตั้งแต่ Tableau Server 2024.2 เป็นต้นไป คุณสามารถลงทะเบียน EAS อย่างน้อยหนึ่งรายการให้กับไซต์ได้ หลังจากลงทะเบียน EAS ที่ระดับไซต์แล้ว ความสัมพันธ์ที่เชื่อถือได้ที่สร้างขึ้นจะมีผลกับไซต์เท่านั้น

หมายเหตุ: ข้อกำหนดเบื้องต้นในการกำหนดค่า EAS ที่ระดับไซต์คือการเปิดใช้งานแอปที่เชื่อมต่อใน TSM

ขั้นตอนที่ 1: เปิดใช้งานแอปที่เชื่อมต่อ

  1. โดยให้เข้าสู่ระบบ UI ของเว็บ Tableau Services Manager (TSM) ในฐานะผู้ดูแลระบบของ Tableau Server หากต้องการข้อมูลเพิ่มเติม โปรดดูเข้าสู่ระบบ Tableau Services Manager Web UI

  2. ไปที่แท็บข้อมูลประจำตัวผู้ใช้และการเข้าถึง > แอปที่เชื่อมต่อ

  3. เลือกช่องทำเครื่องหมายเปิดใช้งานแอปที่เชื่อมต่อ

  4. ทำอย่างใดอย่างหนึ่งต่อไปนี้:

    • เลือกปุ่มตัวเลือกแรก อนุญาตแอปที่เชื่อมต่อ (กำหนดค่าที่ระดับไซต์) เพื่อเปิดใช้งานการลงทะเบียน EAS ที่ระดับไซต์เท่านั้น

    • (ค่าเริ่มต้น) เลือกปุ่มตัวเลือกที่สอง อนุญาตแอปที่เชื่อมต่อ (กำหนดค่าที่ระดับไซต์) และการพิทักษ์ OAuth 2.0 ทั่วทั้งเซิร์ฟเวอร์ (กำหนดค่าด้านล่าง) เพื่อเปิดใช้งานการลงทะเบียน EAS ทั้งในระดับไซต์และทั่วทั้งเซิร์ฟเวอร์ หากคุณเลือกตัวเลือกนี้ โปรดตรวจสอบว่า URL ผู้ออกใบรับรองที่ระบุในระดับไซต์แตกต่างจาก URL ผู้ออกใบรับรองในระดับทั้งเซิร์ฟเวอร์

  5. คลิกที่ปุ่มบันทึกการเปลี่ยนแปลงที่รอดำเนินการ

  6. เมื่อเสร็จสิ้นให้ดำเนินการดังต่อไปนี้
    1. ตรงมุมขวาบนของหน้า ให้คลิกที่ปุ่มการเปลี่ยนแปลงที่รอดำเนินการ

    2. ตรงมุมขวาบนของหน้า ให้คลิกที่ปุ่มปรับใช้การเปลี่ยนแปลงและรีสตาร์ทเพื่อหยุดและรีสตาร์ท Tableau Server

ขั้นตอนที่ 2: ลงทะเบียน EAS

  1. เข้าสู่ระบบ Tableau Server ในฐานะผู้ดูแลเซิร์ฟเวอร์

  2. จากแผงด้านซ้าย ให้เลือก การตั้งค่า > แอปที่เชื่อมต่อ

  3. คลิกที่ปุ่มลูกศรแบบเลื่อนลงของแอปที่เชื่อมต่อใหม่แล้วเลือก OAuth 2.0 Trust

  4. ในกล่องโต้ตอบ “สร้างแอปที่เชื่อมต่อ” ให้เลือกทำดังต่อไปนี้
    1. ในกล่องข้อความชื่อ ให้ป้อนชื่อสำหรับแอปที่เชื่อมต่อ

    2. ในกล่องข้อความ URL ของผู้ออก วาง URL ของผู้ออกของ EAS

    3. เลือกเปิดใช้งานแอปที่เชื่อมต่อ เพื่อความปลอดภัย แอปที่เชื่อมต่อจะถูกตั้งค่าให้ปิดใช้งานตามค่าเริ่มต้นเมื่อสร้างขึ้น

    4. เมื่อเสร็จแล้ว ให้คลิกปุ่ม Create (สร้าง)

  5. หลังจากสร้างแอปที่เชื่อมต่อแล้ว ให้คัดลอก ID ไซต์ของแอปที่เชื่อมต่อ ID ไซต์จะใช้สำหรับการอ้างสิทธิ์ "aud" (กลุ่มเป้าหมาย) ของ JWT ที่อธิบายไว้ในขั้นตอนที่ 1 ด้านบน

ขั้นตอนที่ 3 การฝังในขั้นตอนต่อไป

สำหรับการฝังเวิร์กโฟลว์

เมื่อกำหนดค่าTableau Serverเพื่อใช้ EAS แล้ว คุณต้องเพิ่มโค้ดฝังไปยังแอปพลิเคชันภายนอก ตรวจสอบว่าคุณรวม JWT ที่ถูกต้องซึ่ง EAS ของคุณสร้างไว้ตามที่อธิบายในขั้นตอนที่ 1 โดยรวมไว้ในคอมโพเนนต์เว็บที่แอปพลิเคชันภายนอกเรียกใช้

หากต้องการข้อมูลเพิ่มเติมเกี่ยวกับการฝังเนื้อหา Tableau ให้ดูอย่างใดอย่างหนึ่งหรือทั้งสองอย่างต่อไปนี้

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

ควบคุมตำแหน่งที่สามารถฝังเนื้อหาได้โดยใช้รายการที่อนุญาตของโดเมนสำหรับการฝัง

ตั้งแต่Tableau Server 2023.3 คุณและผู้ใช้สามารถควบคุมได้ว่าจะฝังเนื้อหาของ Tableau โดยไม่มีข้อจำกัดหรือจำกัดเฉพาะบางโดเมนโดยใช้วิธีการ “อัปเดตการตั้งค่าการฝังสำหรับไซต์” ใน REST API ของ Tableau

โดยค่าเริ่มต้น การตั้งค่าไซต์สำหรับการฝัง unrestrictedEmbedding จะตั้งค่าเป็น true เพื่อให้ฝังได้ไม่จำกัด หรือคุณและผู้ใช้สามารถตั้งค่าเป็น false และระบุโดเมนที่สามารถฝังเนื้อหา Tableau ในแอปพลิเคชันภายนอกได้โดยใช้พารามิเตอร์ allowList

หากต้องการข้อมูลเพิ่มเติม โปรดดูรายการใดรายการหนึ่งต่อไปนี้

เวิร์กโฟลว์ของการตรวจสอบสิทธิ์ของ REST API

หลังจากกำหนดค่า JWT แล้ว คุณต้องเพิ่ม JWT ที่ถูกต้องลงในคำขอเข้าสู่ระบบ REST API สำหรับการเข้าถึงที่ได้รับอนุญาต หากต้องการข้อมูลเพิ่มเติม โปรดดูขอบเขตการเข้าถึงสำหรับแอปที่เชื่อมต่อ

สำหรับเวิร์กโฟลว์ API เมตาดาต้า

หลังจากกำหนดค่า JWT แล้ว คุณต้องเพิ่ม JWT ที่ถูกต้องลงในคำขอเข้าสู่ระบบ REST API หากต้องการข้อมูลเพิ่มเติม โปรดดูขอบเขตการเข้าถึงสำหรับแอปที่เชื่อมต่อ

การจัดการแอปที่เชื่อมต่อ

การเป็นสมาชิกกลุ่มแบบไดนามิก (เวิร์กโฟลว์แบบฝังเท่านั้น)

ตั้งแต่ Tableau Server 2024.2 หากมีการกำหนดค่าแอปที่เชื่อมต่อและเปิดใช้งานการตั้งค่าความสามารถ คุณจะสามารถควบคุมความเป็นสมาชิกกลุ่มแบบไดนามิกผ่านการอ้างสิทธิ์แบบกำหนดเองที่รวมอยู่ใน JWT ที่ส่งโดยแอปพลิเคชันภายนอก

เมื่อกำหนดค่า ในระหว่างการตรวจสอบสิทธิ์ผู้ใช้ แอปพลิเคชันภายนอกจะส่ง JWT ที่มีการอ้างสิทธิ์แบบกำหนดเองสองรายการสำหรับการเป็นสมาชิกกลุ่ม: กลุ่ม (https://tableau.com/groups) และชื่อกลุ่ม (เช่น “Group1” และ “Group2”) ที่จะยืนยันข้อมูลผู้ใช้ Tableau ตรวจสอบ JWT แล้วเปิดใช้งานสิทธิ์เข้าถึงกลุ่มและเนื้อหาที่สิทธิ์ขึ้นอยู่กับกลุ่มเหล่านั้น

หากต้องการข้อมูลเพิ่มเติม โปรดดู การเป็นสมาชิกกลุ่มแบบไดนามิกโดยใช้การยืนยัน

ปัญหาที่ทราบแล้ว (เฉพาะการฝังเวิร์กโฟลว์เท่านั้น)

มีปัญหาสองประการเมื่อใช้แอปที่เชื่อมต่อซึ่งจะได้รับการแก้ไขในเวอร์ชันในอนาคต

  • ฟีเจอร์ของแถบเครื่องมือ: เมื่อเนื้อหาที่ฝังมีพารามิเตอร์ของแถบเครื่องมือกำหนดไว้ ฟีเจอร์ของแถบเครื่องมือบางอย่างจะไม่ทำงาน หากต้องการแก้ไขปัญหานี้ เราขอแนะนำให้คุณซ่อนพารามิเตอร์แถบเครื่องมือดังตัวอย่างด้านล่าง

    <tableau-viz id='tab-viz' src='https://<your_server>/t/<your_site>/...'
    	toolbar='hidden'>
    </tableau-viz>

  • แหล่งข้อมูลที่เผยแพร่: แหล่งข้อมูลที่เผยแพร่ที่ตั้งค่าเป็น แจ้งผู้ใช้ สำหรับข้อมูลเข้าสู่ระบบฐานข้อมูลจะไม่แสดง หากต้องการแก้ไขปัญหานี้ หากเป็นไปได้ เราขอแนะนำให้เจ้าของแหล่งข้อมูลฝังข้อมูลเข้าสู่ระบบฐานข้อมูลแทน

  • มุมมองแบบฝังในหลายไซต์: ใน Tableau Server 2023.1 และก่อนหน้า การสลับระหว่างมุมมองในไซต์ต่างๆ ในเบราว์เซอร์เดียวกันทำให้เกิดข้อผิดพลาด 1008: ไม่สามารถดึงข้อมูลลับสำหรับเชื่อมต่อแอปได้ หากต้องการแก้ไขปัญหานี้ ให้อัปเกรดเป็น Tableau Server 2023.3 ขึ้นไป

แก้ปัญหา

เมื่อเนื้อหาแบบฝังไม่ปรากฏในแอปพลิเคชันภายนอกหรือการให้สิทธิ REST API ของ Tableau ล้มเหลว คุณสามารถใช้เครื่องมือของนักพัฒนาเบราว์เซอร์เพื่อตรวจสอบและระบุรหัสข้อผิดพลาดที่อาจเกี่ยวข้องกับฟีเจอร์ของ EAS ที่เปิดใช้งานในTableau Server

โปรดดูตารางด้านล่างเพื่อตรวจสอบคำอธิบายของรหัสข้อผิดพลาดและวิธีแก้ปัญหาที่เป็นไปได้

รหัสข้อผิดพลาดบทสรุปคำอธิบายความละเอียดหรือคำอธิบายที่เป็นไปได้
5ไม่_พบ_ผู้ใช้_ระบบไม่พบผู้ใช้ Tableau
หากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบว่าค่าการอ้างสิทธิ์ sub (หัวเรื่อง) ใน JWT เป็น “ชื่อผู้ใช้” ของ Tableau Server ที่ตรวจสอบสิทธิ์แล้ว สำหรับค่านี้ ต้องคำนึงถึงตัวอักษรพิมพ์ใหญ่และพิมพ์เล็ก
16ไม่สามารถ_เข้าสู่ระบบเข้าสู่ระบบล้มเหลวข้อผิดพลาดนี้มักเกิดจากปัญหาการอ้างสิทธิ์ข้อใดข้อหนึ่งต่อไปนี้ใน JWT:
  • 'exp’ (เวลาหมดอายุ) เกินระยะเวลาที่ใช้ได้สูงสุดที่เป็นค่าเริ่มต้น ในการแก้ไขปัญหานี้ โปรดดู การอ้างสิทธิ์ที่ลงทะเบียนแล้ว(ลิงก์จะเปิดในหน้าต่างใหม่) ที่จำเป็นต้องใช้สำหรับ JWT ที่ถูกต้องและเพื่อตรวจสอบว่าใช้ค่าที่ถูกต้อง หากต้องการเปลี่ยนระยะเวลาที่ใช้ได้สูงสุด คุณสามารถใช้คำสั่งvizportal.oauth.external_authorization_server.max_expiration_period_in_minutesได้
  • 'sub' (หัวข้อ) กำลังเรียกผู้ใช้ที่ไม่รู้จัก ในการแก้ไขปัญหานี้ ให้ตรวจสอบว่าการอ้างสิทธิ์ 'sub' คือ “ชื่อผู้ใช้” สำหรับค่านี้ ต้องคำนึงถึงตัวอักษรพิมพ์ใหญ่และพิมพ์เล็ก
67FEATURE_NOT_ENABLEDไม่รองรับสิทธิ์เข้าถึงแบบออนดีมานด์สิทธิ์เข้าถึงแบบออนดีมานด์นั้นพร้อมให้ใช้งานผ่านไซต์ Tableau Cloud ที่ได้รับอนุญาตเท่านั้น
10081ไม่_สามารถ_เรียกคืน_ข้อมูลเมตา_IDPปลายทางข้อมูลเมตาของ EAS หายไปในการแก้ไขปัญหานี้ ให้ตรวจสอบว่าได้กำหนดค่า EAS อย่างถูกต้อง และมีการเรียกผู้ออกที่ถูกต้อง
10082ไม่ได้_ระบุ_ผู้ออก_เซิร์ฟเวอร์_การให้สิทธิ์ผู้ออกหายไปหากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบว่ามีการเรียกผู้ออกที่ถูกต้อง หากต้องการเปลี่ยน URL ผู้ออก คุณสามารถใช้คำสั่ง vizportal.oauth.external_authorization_server.issuer ได้
10083JWT_ไม่ดีส่วนหัว JWT มีปัญหาต่างๆการอ้างสิทธิ์ 'kid' (ID ข้อมูลลับ) หรือ 'clientId' (ผู้ออก) หายไปจากส่วนหัว JWT หากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบว่ามีข้อมูลนี้รวมอยู่ด้วย
10084ข้อผิดพลาด_การแยกวิเคราะห์_JWTJWT มีปัญหาต่างๆหากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบสิ่งต่อไปนี้
  • ค่า 'aud' (กลุ่มเป้าหมาย) ที่อ้างอิงใน JWT ใช้ค่า “tableau” สำหรับค่านี้ ต้องคำนึงถึงตัวอักษรพิมพ์ใหญ่และพิมพ์เล็ก
  • 'aud' (กลุ่มเป้าหมาย) และ 'sub’ (หัวเรื่อง) จะรวมอยู่ใน JWT
10085ไม่_สามารถ_ดึง_คีย์_JWTJWT ไม่พบคีย์ไม่พบข้อมูลลับ

หากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบว่ามีการเรียกผู้ออกที่ถูกต้อง หากต้องการเปลี่ยน URL ผู้ออก คุณสามารถใช้คำสั่ง vizportal.oauth.external_authorization_server.issuer ได้

10087ใช้_อัลกอริทึม_JWS_ที่อยู่ในรายการที่ถูกบล็อก_เพื่อ_ลงนามปัญหาเกี่ยวกับอัลกอริทึมการลงนาม JWTในการแก้ไขปัญหานี้ คุณสามารถลบอัลกอริทึมการลงนามออกได้ หากต้องการข้อมูลเพิ่มเติม โปรดดูvizportal.oauth.external_authorization_server.blocklisted_jws_algorithms
10088ขนาด_คีย์_RSA_ไม่ถูกต้องปัญหาเกี่ยวกับข้อกำหนดการลงนาม JWTหากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบด้วย EAS หรือ IdP โดย JWT จะลงนามด้วยคีย์ RSA ขนาด 2048
10091JTI_ถูก_ใช้แล้วต้องใช้ JWT ที่ไม่ซ้ำกันมีการใช้ JWT นี้ในกระบวนการตรวจสอบสิทธิ์แล้ว หากต้องการแก้ไขปัญหานี้ EAS หรือ IdP ต้องสร้าง JWT ใหม่
10092NOT_IN_DOMAIN_ALLOW_LISTไม่ได้ระบุโดเมนของเนื้อหาที่ฝังหากต้องการแก้ไขปัญหานี้ ตรวจสอบว่าการตั้งค่า unrestrictedEmbedding ตั้งค่าเป็นพารามิเตอร์ true หรือ domainAllowlist รวมถึงโดเมนที่มีการฝังเนื้อหา Tableau โดยใช้เมธอดอัปเดตการตั้งค่าการฝังสำหรับไซต์(ลิงก์จะเปิดในหน้าต่างใหม่)ใน REST API ของ Tableau
10094ขาด_JTI_ที่จำเป็นขาด ID ของ JWTหากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบว่า 'jti' (JWT ID) อยู่ใน JWT หรือไม่
10096JWT_EXPIRATION_EXCEEDS_CONFIGURED_EXPIRATION_PERIOD 'exp’ (เวลาหมดอายุ) เกินระยะเวลาที่ใช้ได้สูงสุดที่เป็นค่าเริ่มต้น ในการแก้ไขปัญหานี้ โปรดดู การอ้างสิทธิ์ที่ลงทะเบียนแล้ว(ลิงก์จะเปิดในหน้าต่างใหม่) ที่จำเป็นต้องใช้สำหรับ JWT ที่ถูกต้องและเพื่อตรวจสอบว่าใช้ค่าที่ถูกต้อง หากต้องการเปลี่ยนระยะเวลาที่ใช้ได้สูงสุด คุณสามารถใช้คำสั่งvizportal.oauth.external_authorization_server.max_expiration_period_in_minutesได้
10097SCOPES_MALFORMEDปัญหาเกี่ยวกับการอ้างสิทธิ์ขอบเขตข้อผิดพลาดนี้สามารถเกิดขึ้นได้เมื่อการอ้างสิทธิ์ 'scp’ (ขอบเขต) หายไปจาก JWT หรือไม่ได้ส่งผ่านเป็นประเภทรายการ หากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบว่า 'scp ' รวมอยู่ใน JWT และส่งผ่านเป็นประเภทรายการหรือไม่ หากต้องการความช่วยเหลือในการแก้ไขปัญหาเกี่ยวกับ JWT โปรดดูที่ตัวแก้ไขปัญหา(ลิงก์จะเปิดในหน้าต่างใหม่)บนไซต์ auth0
10098JWT_UNSIGNED_OR_ENCRYPTEDJWT ไม่ได้ลงนามหรือเข้ารหัสTableau ไม่รองรับ JWT ที่ไม่ได้ลงนามหรือเข้ารหัสไว้
10099SCOPES_MISSING_IN_JWTการอ้างสิทธิ์ขอบเขตที่ขาดหายไปJWT ไม่มีการอ้างสิทธิ์ 'scp ' (ขอบเขต) ที่จำเป็น หากต้องการแก้ไขปัญหานี้ ให้ตรวจสอบว่า 'scp' อยู่ใน JWT หรือไม่ หากต้องการความช่วยเหลือในการแก้ไขปัญหาเกี่ยวกับ JWT โปรดดูที่ตัวแก้ไขปัญหา(ลิงก์จะเปิดในหน้าต่างใหม่)บนไซต์ auth0
10100JTI_PERSISTENCE_FAILEDข้อผิดพลาด JWT ID ที่ไม่คาดคิดเกิดข้อผิดพลาดที่ไม่คาดคิดกับ 'jti' (JWT ID) หากต้องการแก้ไขปัญหานี้ ต้องสร้าง JWT ที่มี 'jti' ใหม่
10103JWT_MAX_SIZE_EXCEEDEDJWT เกินขนาดสูงสุดข้อผิดพลาดนี้อาจเกิดขึ้นเมื่อขนาด JWT เกิน 8,000 ไบต์ เมื่อต้องการแก้ไขปัญหานี้ โปรดตรวจสอบว่ามีการส่งต่อการอ้างสิทธิ์ที่จำเป็นเท่านั้นไปยัง Tableau Server.
ขอบคุณสำหรับข้อเสนอแนะของคุณส่งข้อเสนอแนะของคุณเรียบร้อยแล้ว ขอขอบคุณ