การตรวจสอบสิทธิ์ที่เชื่อถือได้
เมื่อคุณฝังมุมมอง Tableau Server ลงในหน้าเว็บ ทุกคนที่เข้าชมดูต้องเป็นผู้ใช้ที่ได้รับสิทธิ์อนุญาตบน Tableau Server เมื่อผู้ใช้เยี่ยมชมหน้า ผู้ใช้จะได้รับแจ้งให้ลงชื่อเข้าใช้ Tableau Server ก่อนจึงจะสามารถเห็นมุมมองได้ หากคุณมีวิธีการตรวจสอบสิทธิ์ผู้ใช้บนเว็บเพจหรือในเว็บแอปพลิเคชันอยู่แล้ว คุณสามารถเลี่ยงข้อความแจ้งนี้และช่วยให้ผู้ใช้ไม่ต้องเข้าสู่ระบบสองครั้งด้วยการตั้งค่าการตรวจสอบสิทธิ์ที่เชื่อถือได้
การตรวจสอบสิทธิ์ที่เชื่อถือได้หมายความว่าคุณได้ตั้งค่าความสัมพันธ์ที่เชื่อถือได้ระหว่าง Tableau Server และเว็บเซิร์ฟเวอร์ตั้งแต่หนึ่งรายการขึ้นไป เมื่อ Tableau Server ได้รับคำขอจากเว็บเซิร์ฟเวอร์ที่เชื่อถือได้เหล่านี้ จะถือว่าเว็บเซิร์ฟเวอร์ของคุณจัดการการตรวจสอบสิทธิ์ถูกต้องทุกอย่างที่จำเป็น
หมายเหตุ: จะต้องกำหนดค่าเบราว์เซอร์ของไคลเอ็นต์ให้อนุญาตคุกกี้บุคคลที่สาม หากคุณต้องการใช้การตรวจสอบสิทธิ์ที่เชื่อถือได้กับมุมมองแบบฝัง
วิธีการทำงานของการตรวจสอบสิทธิ์ที่เชื่อถือได้
แผนภาพด้านล่างจะอธิบายวิธีการทำงานของการตรวจสอบสิทธิ์ที่เชื่อถือได้ระหว่างเว็บเบราว์เซอร์ของไคลเอ็นต์ เว็บเซิร์ฟเวอร์ของคุณ และ Tableau Server
การเข้าชมหน้าเว็บของผู้ใช้: เมื่อผู้ใช้เข้าชมหน้าเว็บที่มีมุมมอง Tableau Server แบบฝัง หน้าเว็บจะส่งคำขอ GET ถึงเว็บเซิร์ฟเวอร์ของคุณสำหรับ HTML ของหน้านั้น
ส่ง POST ของเว็บเซิร์ฟเวอร์ไปที่ Tableau Server: เว็บเซิร์ฟเวอร์จะส่งคำขอ POST ถึง Tableau Server ที่เชื่อถือได้ (ยกตัวอย่างเช่น https://<server_name>/trusted
ไม่ใช่ https://<server_name>
) คำขอ POST ต้องมีพารามิเตอร์ username
ค่า username
ต้องเป็นชื่อผู้ใช้ของผู้ใช้ Tableau Server ที่ได้รับสิทธิ์อนุญาต หาก Tableau Server โฮสต์หลายไซต์เอาไว้ และมุมมองอยู่บนไซต์อื่นที่ไม่ใช่ไซต์เริ่มต้น จะต้องเพิ่มคำขอ POST เข้าในพารามิเตอร์ target_site
ด้วย
Tableau Server จะสร้างตั๋ว: Tableau Server จะตรวจสอบที่อยู่ IP หรือชื่อโฮสต์ของเว็บเซิร์ฟเวอร์ (192.168.1.XXX ในแผนภาพข้างต้น) ที่ส่งคำขอ POST หากมีระบุเว็บเซิร์ฟเวอร์เป็นโฮสต์ที่เชื่อถือได้ Tableau Server จะสร้างตั๋วในรูปแบบสตริงที่ไม่ซ้ำกัน ต้องแลกตั๋วภายในสามนาทีหลังจากออกตั๋วแล้ว Tableau Server จะตอบกลับคำขอ POST โดยใช้ตั๋วนั้น หรือหากเกิดข้อผิดพลาดขึ้นและไม่สามารถสร้างตั๋วได้ Tableau Server จะตอบกลับด้วยค่า -1
เซิร์ฟเวอร์ต้องมีที่อยู่ IPv4 ระบบไม่รองรับที่อยู่ IPv6 หากต้องการข้อมูลเพิ่มเติม โปรดดูTableau Server ได้ส่งคืนค่าตั๋วเป็น -1
เว็บเซิร์ฟเวอร์จะส่งผ่าน URL เป็นเบราว์เซอร์: เว็บเซิร์ฟเวอร์จะสร้าง URL ให้กับมุมมองและแทรกลงใน HTML ของหน้า โดยจะรวมตั๋วด้วย (ยกตัวอย่างเช่น https://<server_name>/trusted/<unique_ticket>/views/<view_name>
). เว็บเซิร์ฟเวอร์จะส่ง HTML กลับไปที่เว็บเบราว์เซอร์ของไคลเอ็นต์
เบราว์เซอร์จะส่งคำขอมุมมองจาก Tableau Server: เว็บเบราว์เซอร์ของไคลเอ็นต์จะส่งคำขอ GET ถึง Tableau Server โดยจะเพิ่ม URL ให้กับตั๋ว
Tableau Server จะแลกตั๋ว: Tableau Server จะแลกตั๋ว สร้างเซสชัน นำผู้ใช้เข้าสู่ระบบ ลบตั๋วออกจาก URL แล้วจึงส่ง URL สุดท้ายของมุมมองแบบฝังให้กับไคลเอ็นต์
เซสชันจะอนุญาตให้ผู้ใช้เข้าถึงมุมมองที่ผู้ใช้จะเห็น หากพวกเขาเข้าสู่ระบบเซิร์ฟเวอร์ หากต้องการกำหนดค่าเริ่มต้น ผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์ด้วยตั๋วที่เชื่อถือได้จะมีการเข้าถึงที่จำกัดเฉพาะมุมมองที่มีเท่านั้น ผู้ใช้จะไม่สามารถเข้าถึงเวิร์กบุ๊ก หน้าโครงการ หรือเนื้อหาอื่นๆ ที่โฮสต์บนเซิร์ฟเวอร์ได้
หากต้องการเปลี่ยนการใช้งาน ให้ดูตัวเลือก wgserver.unrestricted_ticket
ที่ตัวเลือกการกำหนดค่า tsm ที่ตั้งค่าไว้
วิธีการจัดเก็บตั๋วที่เชื่อถือได้
Tableau Server จะจัดเก็บตั๋วที่เชื่อถือได้ในที่เก็บของ Tableau Server โดยใช้กระบวนการต่อไปนี้
- Tableau Server สร้างตั๋วสองส่วน โดยส่วนแรกคือ ID ไม่ซ้ำกันที่เข้ารหัสแบบ Base64 (UUID) และส่วนที่สองคือสตริงลับแบบสุ่ม 24 อักขระ
- Tableau Server จะแฮชสตริงลับและจัดเก็บพร้อมกับ ID ที่ไม่ซ้ำในที่เก็บ การแฮชจะใช้สตริงลับเป็นอินพุต และใช้อัลกอริทึมในการคำนวณสตริงที่ไม่ซ้ำ สตริงที่ไม่ซ้ำนี้จะปกป้องความปลอดภัยของสตริงลับจากผู้ใช้ที่ไม่ได้รับอนุญาต
- Tableau Server จะส่ง UUID แบบ Base64 และสตริงสุ่ม 24 อักขระดั้งเดิมถึงไคลเอ็นต์
- ไคลเอ็นต์จะส่ง UUID แบบ Base64 และสตริงลับ 24 อักขระดั้งเดิมถึง Tableau Server เป็นส่วนหนึ่งของคำขอมุมมอง
- Tableau Server จะค้นหาคู่สตริงที่ใช้ UUID แบบ Base64 จากนั้นจึงแฮชสตริงลับเพื่อตรวจสอบว่าตรงกับแฮชที่จัดเก็บไว้ในที่เก็บ
กระบวนการนี้จะช่วยรับรองว่าเนื้อหาของตั๋วที่เชื่อถือได้ที่จัดเก็บเอาไว้ใน Tableau Server จะไม่สามารถนำไปใช้เพื่อปลอมแปลงเป็นผู้ใช้หรือเข้าถึงเนื้อหาที่ป้องกันโดยการตรวจสอบสิทธิ์ แต่เนื่องจากตั๋วที่เชื่อถือได้เต็มรูปแบบจะส่งผ่าน HTTP ระหว่าง Tableau Server และไคลเอ็นต์ กระบวนการจึงอาศัยการส่งข้อมูล HTTP ที่ปลอดภัยและเข้ารหัส ดังนั้น เราขอแนะนำให้คุณปรับใช้เฉพาะตั๋วที่เชื่อถือได้บน SSL/TLS หรือการเข้ารหัสเครือข่ายอีกชั้นหนึ่งเท่านั้น