กำหนดค่าโมดูลการตรวจสอบสิทธิด้วยเกตเวย์อิสระ

แนวปฏิบัติด้านความปลอดภัยทั่วไปจะอนุญาตให้คำขอที่ผ่านการตรวจสอบสิทธิแล้วเท่านั้นสามารถผ่านไฟร์วอลล์ภายในของเซิร์ฟเวอร์ DMZ ได้ เกตเวย์อิสระรองรับวิธีการตรวจสอบสิทธิแบบดั้งเดิมของ Tableau Server แต่ยังรวมถึงพร็อพเพอร์ตี้การกำหนดค่าที่อนุญาตให้รวมโมดูลที่โหลดได้ Apache httpd สำหรับการตรวจสอบสิทธิแบบกำหนดเอง

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

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

หากต้องการกำหนดค่าโมดูลการตรวจสอบสิทธิ คุณต้องทำตามขั้นตอนต่อไปนี้

  1. สร้างไฟล์การกำหนดค่าโมดูลการตรวจสอบสิทธิ เมื่อการตั้งค่าเสร็จสิ้น แต่ละโมดูลและคำสั่งการกำหนดค่าจะถือว่าเป็นตัวเลือก Include ซึ่งทำให้ไฟล์ที่รวมเป็นส่วนหนึ่งตามตรรกะของการกำหนดค่า httpd โดยรวม
  2. คัดลอกไฟล์การกำหนดค่าไปยังคอมพิวเตอร์แต่ละเครื่องที่เรียกใช้เกตเวย์อิสระ ไฟล์ทั้งหมดจะต้องคัดลอกไปยังตำแหน่งเดียวกันบนคอมพิวเตอร์ของเกตเวย์อิสระแต่ละเครื่อง แต่ละไฟล์แมปกับพร็อพเพอร์ตี้การกำหนดค่าที่จัดการโดย Tableau Server
  3. ตั้งค่าพร็อพเพอร์ตี้การกำหนดค่าด้วยคำสั่ง tsm configuration set บน Tableau Server

ห้ามแก้ไขไฟล์การกำหนดค่า httpd (httpd.conf) บนเกตเวย์อิสระเนื่องจากเกตเวย์อิสระมีตรรกะในการอัปเดตการกำหนดค่า httpd ตามการเปลี่ยนแปลงที่ทำกับคำสั่ง TSM บน Tableau Server

ตัวอย่างการกำหนดค่าโมดูลการตรวจสอบสิทธิ์

หากต้องการตัวอย่างการกำหนดค่าโมดูลการตรวจสอบสิทธิ์แบบครบวงจร โปรดดูตัวอย่างการกำหนดค่าการตรวจสอบสิทธิ์: SAML ที่มี IdP ภายนอกในคู่มือการปรับใช้ทั่วทั้งองค์กร ตัวอย่างจะอธิบายวิธีตั้งค่าและกำหนดค่า SAML ด้วย IdP ของ Okta และโมดูลการตรวจสอบสิทธิ์ Mellon สำหรับการปรับใช้ Tableau Server บนการปรับใช้ Linux ที่เรียกใช้ใน AWS ถึงแม้ว่าตัวอย่างจะอธิบายถึงกระบวนการสำหรับ Linux เอาไว้เท่านั้น แต่ตัวอย่างการกำหนดค่ายังมีประโยชน์สำหรับ Tableau Server บน Windows อีกด้วย

พร็อพเพอร์ตี้การกำหนดค่า

ตารางต่อไปนี้จะอธิบายไฟล์การกำหนดค่าต่างๆ ที่คุณอาจใช้อ้างอิงได้ แต่ละไฟล์จะแมปกับพร็อพเพอร์ตี้การกำหนดค่าที่ตั้งค่าบน Tableau Server ใช้เครื่องหมายทับในพาธ แม้แต่ใน Windows (แบบแผน Apache httpd) คุณเพียงแค่กำหนดพร็อพเพอร์ตี้ที่จำเป็นในการกำหนดการกำหนดค่าการตรวจสอบสิทธิแบบกำหนดเองของคุณ ข้ามพร็อพเพอร์ตี้การกำหนดค่าที่ไม่จำเป็น

พร็อพเพอร์ตี้การกำหนดค่าคำอธิบาย
gateway.tsig.authn_module_blockปรากฏที่ส่วนท้ายของชุดโมดูล Apache httpd ที่โหลดตามปกติ จุดประสงค์คือเพื่อให้ไฟล์มีคำสั่ง LoadModule อย่างน้อยหนึ่งคำสั่ง โมดูลควรระบุด้วยพาธแบบเต็ม
gateway.tsig.authn_global_blockปรากฏหลังการอ้างอิง LoadModule ทั้งหมด และก่อนหน้าคำสั่ง Apache httpd อื่นๆ ส่วนใหญ่ จุดประสงค์คือเพื่อให้จัดเตรียมตำแหน่งสำหรับคำสั่งการกำหนดค่าที่จำเป็นโดยโมดูลที่กำหนดเอง
gateway.tsig.authn_globalbottom_blockปรากฏที่ด้านล่างสุดของไฟล์การกำหนดค่า อีกครั้งที่ระดับส่วนกลาง จุดประสงค์คือเพื่อให้มีตำแหน่งสำหรับคำสั่งการกำหนดค่าที่จำเป็นโดยโมดูลที่กำหนดเองซึ่งต้องมาหลังจากคำสั่งอื่นๆ โดยเฉพาะ (คุณน่าจะไม่ต้องการสิ่งนี้)
gateway.tsig.authn_location_blockปรากฏในบล็อก <Location "/"> ซึ่งครอบคลุมพาธ URL ทั้งหมด
gateway.tsig.authn_directory_blockซึ่งปรากฏขึ้นภายในบล็อก <Directory "/"> ซึ่งครอบคลุมพาธทั้งหมดไปยังไฟล์ที่ให้บริการโดยเกตเวย์อิสระ (คุณไม่น่าจะต้องการสิ่งนี้ ไฟล์ส่วนใหญ่ที่ให้บริการโดยเกตเวย์อิสระเป็นเนื้อหาแบบคงที่ที่ไม่ละเอียดอ่อน เช่น รูปภาพและไฟล์ JavaScript)
gateway.tsig.authn_virtualhost_block

ปรากฏในบล็อก <VirtualHost> หนึ่งหรือสองบล็อก: บล็อกหนึ่งสำหรับ TLS (หากเปิดใช้งาน) และอีกบล็อกหนึ่งสำหรับที่ไม่ใช่ TLS หากกำหนดค่าไว้ ไฟล์เดียวกันจะรวมอยู่ในทั้งสองที่ หากคุณต้องการแยกความแตกต่างระหว่างสองกรณีนี้ คุณสามารถใช้ตัวแปรสภาพแวดล้อม Apache httpd HTTPS มาตรฐานได้

บล็อก <Location "/tsighk">

นอกจากบล็อก <Location "/"> ที่คาดไว้สำหรับการรับส่งข้อมูลคำขอปกติแล้ว ยังมีบล็อก <Location "/tsighk"> ที่ใช้เพื่อให้บริการคำขอดูแลทำความสะอาดภายในเกตเวย์อิสร (HK) คำขอ HK เหล่านี้จะมีเจ้าหน้าที่ตรวจสอบสิทธิของตนเองและจะไม่ทำงานกับโซลูชัน SSO แบบกำหนดเองทั่วไป

คุณอาจต้องแยกโมดูลที่กำหนดเองออกจากการพยายามตรวจสอบสิทธิสำหรับพาธ HK URL อย่างชัดเจน

หากต้องการพิจารณาว่าคุณจำเป็นต้องยกเว้นโมดูลของคุณหรือไม่ ให้กำหนดค่าโมดูลก่อน จากนั้นค้นหาคำขอ HK ในบันทึกการเข้าถึงเกตเวย์อิสระ คุณควรเห็นการตรวจสอบสถานะอย่างน้อยหนึ่งครั้งหรือสองครั้งต่อนาที หากคำขอเหล่านั้นได้รับรหัสตอบกลับ 200 รายการดังกล่าวก็อาจเป็นไปได้ ในทางกลับกัน หากคำขอเหล่านั้นได้รับรหัสตอบกลับ 3xx (การเปลี่ยนพาธไปยังผู้ให้บริการตรวจสอบสิทธิแบบกำหนดเองของคุณ) คุณจำเป็นต้องดำเนินการบางอย่าง

วิธีแก้ปัญหาที่เป็นไปได้ ได้แก่

  • บล็อก <Location "/tsighk"> มีคำสั่ง AuthType None และอาจเพียงพอต่อการแก้ปัญหานี้
  • เกตเวย์อิสระ httpd.conf มีคำสั่ง Apache httpd ProxyPreserveHost On มาตรฐาน หากมีสถานการณ์ผิดปกติที่กำหนดให้ปิดหรือค่าอื่น ค่านั้นสามารถตั้งค่าด้วยรายการการกำหนดค่า TSM gateway.tsig.proxypreservehost
  • คุณอาจต้องใช้คำสั่งเฉพาะโมดูลเพื่อปิดใช้งานโมดูลการตรวจสอบสิทธิของคุณสำหรับ <Location "/tsighk"> คุณไม่สามารถแก้ไขบล็อกนั้นโดยตรงในไฟล์ httpd.conf คุณสามารถสร้างบล็อก <Location "/tsighk"> อื่นในไฟล์ gateway.tsig.authn_global_block ของคุณและให้ Apache httpd รวมเข้าด้วยกันตามตรรกะ ตัวอย่างเช่น mod_auth_mellon บางเวอร์ชัน ซึ่งเป็นโมดูลการตรวจสอบสิทธิโอเพนซอร์สยอดนิยม ต้องใช้ MellonEnable Off สำหรับส่วนที่ไม่ได้ปรับใช้ แม้ว่าจะมีการตั้งค่า AuthType None ในส่วนเหล่านั้นก็ตาม
  • เมื่อสร้างส่วน <Location "/tsighk"> เพิ่มเติมตามที่อธิบายไว้ในหัวข้อย่อยก่อนหน้านี้ คุณอาจพบว่าลำดับของลักษณะที่ปรากฏของส่วนต่างๆ ในไฟล์ httpd.conf ทำให้เกิดการโต้ตอบระหว่างกัน โดยส่วน <Location "/tsighk"> มาตรฐานจะปรากฏก่อนส่วน <Location "/"> มาตรฐาน หากการทดลองของคุณแสดงให้เห็นว่าจำเป็นต้องมีการเรียงลำดับที่แตกต่างกัน คุณอาจต้องกำหนดส่วน <Location "/"> อื่นในบล็อก gateway.tsig.authn_global_block ของคุณ นอกเหนือจากส่วน <Location "/tsighk"> อื่น ซึ่งในกรณีนี้ คุณอาจไม่ต้องใช้อะไรในบล็อก gateway.tsig.authn_location_block

แก้ปัญหาการกำหนดค่าโมดูลการตรวจสอบสิทธิแบบกำหนดเอง

วิธีที่สะดวกในการทำความเข้าใจว่าเกตเวย์อิสระจะเขียนไฟล์ httpd.conf อย่างไร คือการตั้งค่ารายการการกำหนดค่า TSM ด้วยค่าที่ชี้ไปที่ไฟล์ว่างในคอมพิวเตอร์เกตเวย์อิสระ (ไฟล์ต้องมีอยู่ แต่สามารถเว้นว่างได้) จากนั้นคุณสามารถดูไฟล์ httpd.conf ของเกตเวย์อิสระเพื่อทำความเข้าใจได้อย่างชัดเจนว่าคำสั่ง Include สำหรับไฟล์การกำหนดค่าต่างๆ จะปรากฏขึ้นที่ใด

ปัญหาการกำหนดค่าในเกตเวย์อิสระ httpd.conf อาจส่งผลให้บริการ tsig-httpd ไม่สามารถเริ่มทำงานได้ ปัญหาการกำหนดค่าอื่นๆ อาจขัดขวางการรับการอัปเดตการกำหนดค่าจากบริการที่มาพร้อมกับเกตเวย์อิสระบนคลัสเตอร์ Tableau Server วิธีหนึ่งในการกู้คืนหลังจากที่คุณได้แก้ไขต้นเหตุที่ทำให้เกิดปัญหาแล้วคือ คัดลอกTSIG_DATA/config/httpd.conf.stub ไปยัง TSIG_DATA/config/httpd.conf แล้วเริ่มการทำงานของบริการ tsig-httpd ใหม่

สำหรับเคล็ดลับการแก้ไขปัญหาเพิ่มเติม โปรดดูที่การแก้ไขปัญหาเกตเวย์อิสระของ Tableau Server ในคู่มือการปรับใช้ทั่วทั้งองค์กร (EDG) EDG จะมอบตัวอย่างการปรับใช้ Tableau Server บน Linux ขั้นตอนการแก้ไขปัญหามีประโยชน์สำหรับ Tableau Server เวอร์ชัน Windows หรือ Linux