เปิดใช้งานการมอบหมาย Kerberos

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

  • คุณจำเป็นต้องรู้ว่าใครกำลังเข้าถึงข้อมูล (ชื่อของผู้ดูจะปรากฏในบันทึกการเข้าถึงสำหรับแหล่งข้อมูล)

  • แหล่งข้อมูลของคุณมีการรักษาความปลอดภัยในระดับแถว ซึ่งผู้ใช้แต่ละคนจะมีสิทธิ์เข้าถึงแถวที่ต่างกัน

แหล่งข้อมูลที่รองรับ

Tableau รองรับการมอบหมาย Kerberos ด้วยแหล่งข้อมูลต่อไปนี้

  • Cloudera: Hive/Impala
  • Denodo
  • Hortonworks
  • Oracle
  • PostgreSQL
  • Spark
  • SQL Server
  • Teradata
  • Vertica

ไม่รองรับ MSAS บนแพลตฟอร์ม Linux

ข้อกำหนด

การมอบหมาย Kerberos จำเป็นต้องใช้ Active Directory

  • ต้องกำหนดค่าที่เก็บข้อมูลประจำตัวของ Tableau Server ให้ใช้ Active Directory
  • คอมพิวเตอร์ที่ติดตั้ง Tableau Server จะต้องเข้าร่วมโดเมน Active Directory
  • ไม่รองรับ MIT Kerberos KDC

การเขียนเว็บและการตรวจสอบสิทธิ์ Kerberos ของผู้ใช้

เมื่อกำหนดค่า “เชื่อมต่อกับข้อมูล” สำหรับเป้าหมายที่กำหนด คุณสามารถเลือกการตรวจสอบสิทธิ์แบบผสานรวมหรือ Windows เป็นวิธีการตรวจสอบสิทธิ์ที่ต้องการได้ อย่างไรก็ตาม สำหรับสถานการณ์การเขียนเว็บ ลักษณะการทำงานเริ่มต้นจะเป็นการใช้บัญชีบริการ Kerberos (“บัญชี Run As”) แทน

หากต้องการเปิดใช้งานข้อมูลประจำตัวผู้ใช้ในสถานการณ์การเขียนเว็บด้วยการมอบสิทธิ์ของ Kerberos คุณต้องทำการกำหนดค่าเพิ่มเติมโดยใช้ TSM เรียกใช้คำสั่งต่อไปนี้:

tsm configuration set -k native_api.WebAuthoringAuthModeKerberosDelegation -v true
tsm pending-changes apply

หลังจากกำหนดค่าแล้ว การมอบสิทธิ์ของ Kerberos จะกลายเป็นการดำเนินการเริ่มต้นเมื่อเลือกการตรวจสอบสิทธิ์แบบผสานรวมกับการเขียนเว็บ อย่างไรก็ตาม การตั้งค่านี้จะไม่ปิดกั้นการเข้าถึงบัญชีบริการสำหรับ Creator เนื้อหา Creator ยังคงสามารถเผยแพร่เนื้อหาที่เชื่อมต่อกับบัญชีบริการ Run As ได้โดยใช้ Tableau Desktop หรือวิธีการอื่นๆ

ดูข้อมูลเพิ่มเติมเกี่ยวกับบัญชีบริการ “เรียกใช้เป็น” ได้ที่ เปิดใช้งานการเข้าถึงบัญชีบริการ Kerberos

กระบวนการกำหนดค่า

ส่วนนี้จะแสดงตัวอย่างของกระบวนการเพื่อเปิดใช้งานการมอบหมาย Kerberos กรณีใช้งานยังรวมถึงชื่อตัวอย่างที่จะช่วยอธิบายความสัมพันธ์ระหว่างองค์ประกอบการกำหนดค่า

  1. Tableau Server จะต้องมีตั๋วบริการ Kerberos เพื่อมอบหมายในนามของผู้ใช้ที่เริ่มต้นการเรียกไปยังฐานข้อมูล คุณต้องสร้างบัญชีโดเมนที่จะใช้เพื่อมอบหมายไปยังฐานข้อมูลที่กำหนด บัญชีนี้เรียกว่าบัญชีบริการ “เรียกใช้งานในฐานะ” ในหัวข้อนี้ ผู้ใช้ตัวอย่างที่กำหนดค่าเป็นบัญชีมอบสิทธิ์/เรียกใช้เป็นคือ tabsrv@example.com

    ต้องกำหนดค่าบัญชีให้กับผู้ใช้และบัญชี Active Directory บน Windows Server ที่เชื่อมต่อกับโดเมนผู้ใช้

    • เปิดหน้าคุณสมบัติของบัญชีบริการ “เรียกใช้เป็น” คลิกที่แท็บมอบสิทธิ์ แล้วเลือกเชื่อถือผู้ใช้รายนี้สำหรับการมอบสิทธิ์ให้กับบริการที่กำหนดเท่านั้น และใช้โปรโตคอลการตรวจสอบสิทธิ์ทั้งหมด
  2. สร้างไฟล์คีย์แท็บสำหรับบัญชีบริการ “เรียกใช้งานในฐานะ”

    ตัวอย่างเช่น คำสั่งต่อไปนี้จะสร้างคีย์แท็บ (tabsrv-runas.keytab) โดยใช้เครื่องมือ ktutil:

    sudo ktutil
    ktutil:  addent -password -p tabsrv@EXAMPLE.COM -k 2 -e <encryption scheme>

    สคีมาการเข้ารหัสสำหรับคำสั่งนี้ ได้แก่ RC4-HMAC, aes128-cts-hmac-sha1-96 และ aes256-cts-hmac-sha1-96 ปรึกษาทีมไอทีของคุณเกี่ยวกับสคีมาการเข้ารหัสที่ถูกต้องสำหรับสภาพแวดล้อมและแหล่งข้อมูลของคุณ

    ktutil:  wkt tabsrv-runas.keytab

    Tableau Server จะใช้บัญชีบริการ “เรียกใช้งานในฐานะ” และคีย์แท็บที่เกี่ยวข้องเพื่อตรวจสอบสิทธิ์ และทำการเชื่อมต่อโดยตรงกับฐานข้อมูล

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

    mkdir /var/opt/keytab                
    sudo cp -p tabsrv-runas.keytab /var/opt/keytab                 
    sudo chown $USER /var/opt/keytab/tabsrv-runas.keytab                  
    chgrp tableau /var/opt/keytab/tabsrv-runas.keytab                  
    chmod g+r /var/opt/keytab/tabsrv-runas.keytab 
    					
  4. เรียกใช้คำสั่ง TSM ต่อไปนี้เพื่อเปิดใช้งานการมอบหมาย Kerberos ตั้งค่าบัญชีบริการการมอบหมาย และเชื่อมโยงไฟล์คีย์แท็บกับบัญชีบริการ:

    					
    tsm configuration set -k wgserver.delegation.enabled -v true
    tsm configuration set -k native_api.datasource_impersonation_runas_principal -v tabsrv@EXAMPLE.COM
    tsm configuration set -k native_api.datasource_impersonation_runas_keytab_path -v /var/opt/keytab/tabsrv-runas.keytab
    tsm configuration set -k native_api.protocol_transition_a_d_short_domain -v false
    tsm configuration set -k native_api.protocol_transition_uppercase_realm -v true

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

  5. เรียกใช้คำสั่ง TSM ต่อไปนี้เพื่อปรับใช้การเปลี่ยนแปลงกับ Tableau Server:

    tsm pending-changes apply

    หากการเปลี่ยนแปลงที่รอดำเนินการจำเป็นต้องรีสตาร์ทเซิร์ฟเวอร์ คำสั่ง pending-changes apply จะแสดงข้อความแจ้งเพื่อแจ้งให้คุณทราบว่าจะรีสตาร์ท โดยข้อความแจ้งนี้จะปรากฏขึ้นแม้ว่าเซิร์ฟเวอร์จะหยุดทำงาน แต่ในกรณีนี้จะไม่มีการรีสตาร์ท คุณสามารถระงับข้อความแจ้งได้โดยใช้ตัวเลือก --ignore-prompt แต่การดำเนินการนี้จะไม่เปลี่ยนลักษณะการรีสตาร์ท หากการเปลี่ยนแปลงไม่จำเป็นต้องใช้การรีสตาร์ท ระบบจะปรับใช้การเปลี่ยนแปลงนั้นโดยไม่มีข้อความแจ้ง หากต้องการข้อมูลเพิ่มเติม โปรดดู tsm pending-changes apply

  6. เปิดใช้งานการมอบสิทธิ์ให้การเชื่อมต่อข้อมูล

    ดูเพิ่มเติม

    แก้ปัญหา Kerberos

ขอบคุณสำหรับข้อเสนอแนะของคุณส่งข้อเสนอแนะของคุณเรียบร้อยแล้ว ขอขอบคุณ