OpenID Connect

คุณสามารถกำหนดค่า Tableau Server ให้รองรับ OpenID Connect (OIDC) สำหรับการลงชื่อเพียงครั้งเดียว (SSO) ได้ OIDC เป็นโปรโตคอลการตรวจสอบสิทธิ์มาตรฐานที่ช่วยให้ผู้ใช้เข้าสู่ระบบผู้ให้บริการข้อมูลประจำตัว (IdP) เช่น Google หรือ Salesforce หลังจากที่ผู้ใช้เข้าสู่ระบบ IdP ของตนเรียบร้อยแล้ว ผู้ใช้จะเข้าสู่ระบบ Tableau Server โดยอัตโนมัติ

การกำหนดค่า OIDC ต้องดำเนินการหลายขั้นตอน หัวข้อในส่วนนี้จะให้ข้อมูลทั่วไปเกี่ยวกับการใช้ Tableau Server ร่วมกับ OIDC และให้ข้อมูลลำดับการกำหนดค่า IdP และ Tableau Server

หมายเหตุ: ข้อมูลเกี่ยวกับการตรวจสอบสิทธิ์ OIDC ใช้กับทั้งการตรวจสอบสิทธิ์ OIDC ที่กำหนดค่าใน TSM ในระหว่างการตั้งค่า Tableau Server หรือการตรวจสอบสิทธิ์ OIDC ที่กำหนดค่าไว้กับพูลข้อมูลประจำตัว เว้นแต่จะระบุไว้เป็นอย่างอื่น

ภาพรวมของการตรวจสอบสิทธิ์

ส่วนนี้จะอธิบายกระบวนการตรวจสอบสิทธิ์ของ OpenID Connect (OIDC) ร่วมกับ Tableau Server

แผนภาพที่แสดงการโต้ตอบระหว่าง Tableau Server, ไคลเอนต์ และ OpenID Connect

1. ผู้ใช้พยายามเข้าสู่ระบบ Tableau Server จากคอมพิวเตอร์ไคลเอ็นต์

2. Tableau Server จะเปลี่ยนเส้นทางคำขอสำหรับการตรวจสอบสิทธิ์ไปยังเกตเวย์ IdP

3. ผู้ใช้จะได้รับแจ้งให้ป้อนข้อมูลเข้าสู่ระบบและตรวจสอบสิทธิ์กับ IdP สำเร็จ IdP จะตอบสนองด้วย URL เปลี่ยนเส้นทางกลับไปที่ Tableau Server URL เปลี่ยนเส้นทางมีรหัสการให้สิทธิ์แก่ผู้ใช้

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

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

6. IdP จะส่งคืนโทเค็นการเข้าถึงและโทเค็น ID ไปที่ Tableau Server

  • การตรวจสอบโทเค็นเว็บ JSON (JWT): ตามค่าเริ่มต้น Tableau จะทำการตรวจสอบ IdP JWT ระหว่างการสำรวจ Tableau จะเรียกคีย์สาธารณะที่ jwks_uri ระบุในเอกสารสำรวจการกำหนดค่า IdP Tableau จะตรวจสอบโทเค็น ID เพื่อดูวันหมดอายุแล้วจึงยืนยันลายเซ็นเว็บ JSON (JWS), ผู้ออกใบรับรอง (IdP) และ ID ของไคลเอ็นต์ คุณสามารถเรียนรู้เพิ่มเติมเกี่ยวกับกระบวนการ JWT ได้ในเอกสาร OpenID, 10 ลายเซ็นและการเข้ารหัส และมาตรฐานที่เสนอของ IETF, โทเค็นเว็บ JSON เราขอแนะนำให้เปิดใช้งานการตรวจสอบ JWT เอาไว้ นอกจากว่า IdP ของคุณจะไม่รองรับ

  • โทเค็น ID คือชุดของคู่คีย์แอตทริบิวต์สำหรับผู้ใช้ คู่คีย์จะเรียกว่าการอ้างสิทธิ์ นี่คือตัวอย่างของการอ้างสิทธิ์ IdP สำหรับผู้ใช้

    "sub"                     : "7gYhRR3HiRRCaRcgvY50ubrtjGQBMJW4rXbpPFpg2cptHP62m2sqowM7G1LwjN5"
    "email"                   : "alice@example.com",
    "email_verified"          : true,
    "name"                    : "Alice Adams",
    "given_name"              : "Alice",
    "family_name"             : "Adams",
    "phone_number"            : "+359 (99) 100200305",
    "profile"                 : "https://tableau.com/users/alice"		

7. Tableau Server จะระบุผู้ใช้จากการอ้างสิทธิ์ IdP และดำเนินการตามคำขอการตรวจสอบสิทธิ์จากขั้นตอนที่ 1 Tableau Server จะค้นหาบันทึกบัญชีของผู้ใช้ที่จัดเก็บไว้ในที่เก็บโดยการจับคู่ “sub” (ตัวระบุหัวเรื่อง) เพื่อระบุบัญชีผู้ใช้ที่ถูกต้อง หากไม่มีการจัดเก็บบัญชีผู้ใช้ที่มีค่าการอ้างสิทธิ์ย่อยเอาไว้ Tableau Server จะค้นหาชื่อผู้ใช้ในที่เก็บที่ตรงกับการอ้างสิทธิ์ “อีเมล” จาก IdP เมื่อการจับคู่ชื่อผู้ใช้สำเร็จ Tableau Server จะจัดเก็บการอ้างสิทธิ์ย่อยที่เกี่ยวข้องไว้ในบันทึกของผู้ใช้ในที่เก็บ คุณจะสามารถกำหนดค่า Tableau Server ให้ใช้การอ้างสิทธิ์ที่แตกต่างกันสำหรับกระบวนการนี้ได้ ดูข้อกำหนดสำหรับการใช้ OpenID Connect

8. Tableau Serverอนุญาตให้สิทธิ์ผู้ใช้

วิธีที่ Tableau ทำงานกับ OpenID Connect

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

  • Tableau Server รองรับเฉพาะโฟลว์รหัสการให้สิทธิ์ OpenID ตามที่อธิบายไว้ในข้อมูลจำเพาะสุดท้ายของ OpenID Connect

  • Tableau Server ใช้การสำรวจหรือ URL ของผู้ให้บริการเพื่อดึงเมตาดาต้าของ OpenID หรือคุณสามารถโฮสต์เอกสารการสำรวจแบบคงที่ใน Tableau Server ได้ หากต้องการข้อมูลเพิ่มเติม โปรดดูกำหนดค่า Tableau Server สำหรับ OpenID Connect

  • Tableau Server รองรับการตรวจสอบสิทธิ์ไคลเอ็นต์ client_secret_basic และ client_secret_post.

  • Tableau Server คาดหวังค่า kid ในส่วนหัว JOSE ของแอตทริบิวต์ id_token ค่านี้ตรงกับหนึ่งในคีย์ที่พบในเอกสารเซต JWK ซึ่งมีการระบุ URI โดยค่า jwks_uri ในเอกสารเรียนรู้เพิ่มเติม OpenID จะต้องแสดงค่า kid แม้ว่าจะมีเพียงคีย์เดียวในเอกสารเซต JWK

  • Tableau Server รวมการรองรับ OpenID สำหรับพารามิเตอร์ x5c ของ JWK หรือสำหรับการใช้การรับรอง X.509

  • ตามค่าเริ่มต้น Tableau Server จะละเว้นการตั้งค่าพร็อกซีและส่งคำขอ OpenID ทั้งหมดไปยัง IdP โดยตรง

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

แอตทริบิวต์ผู้ใช้ในการอ้างสิทธิ์ OIDC

เริ่มต้นใน Tableau Server 2026.2 เป็นต้นไป เมื่อกําหนดค่าและเปิดใช้งานการตั้งค่าความสามารถแล้ว คุณสามารถส่งการอ้างสิทธิ์แอตทริบิวต์ผู้ใช้ใน JSON Web Token (JWT) ที่ส่งโดยผู้ให้บริการข้อมูลประจําตัว (IdP) ไปยัง Tableau Cloud ในระหว่างการเข้าสู่ระบบ แอตทริบิวต์ผู้ใช้เหล่านี้สามารถใช้ร่วมกับฟังก์ชันแอตทริบิวต์ผู้ใช้ ((USERATTRIBUTE(), USERATTRIBUTEINCLUDES()) ของ Tableau เพื่อควบคุมและปรับแต่งเนื้อหาแบบไดนามิก Tableau จะตรวจสอบการอ้างสิทธิ์ จากนั้นจึงเปิดให้เข้าถึงเนื้อหา

หากต้องการข้อมูลเพิ่มเติม โปรดดูปรับแต่งและควบคุมการเข้าถึงข้อมูลโดยใช้แอตทริบิวต์ผู้ใช้

ตัวอย่าง JWT

"sub"                     : "7gYhRR3HiRRCaRcgvY50ubrtjGQBMJW4rXbpPFpg2cptHP62m2sqowM7G1LwjN5"
"email"                   : "alice@example.com",
"email_verified"          : true,
"name"                    : "Alice Adams",
"given_name"              : "Alice",
"family_name"             : "Adams",
"phone_number"            : "+359 (99) 100200305",
"profile"                 : "https://tableau.com/users/alice",		
"region"			 	  : ["South", "South West"]