คู่มือการเชื่อมต่อ Enterprise SSO
การเชื่อมต่อ tracio.ai กับ SAML, OIDC และ identity provider แบบกำหนดเอง ทีละขั้นตอนสำหรับ Okta, Auth0 และ Azure AD พร้อมตัวอย่างโค้ด
ลูกค้าองค์กรจำเป็นต้องมีการเชื่อมต่อ Single Sign-On (SSO) สำหรับแดชบอร์ด tracio.ai ของตน คู่มือนี้ครอบคลุมวิธีการเชื่อมต่อ tracio.ai กับ identity provider ของคุณโดยใช้ SAML 2.0 หรือ OpenID Connect (OIDC) พร้อมคำแนะนำเฉพาะสำหรับ provider ที่พบบ่อยที่สุดสามราย ได้แก่ Okta, Auth0 และ Azure AD
โปรโตคอลที่รองรับ
tracio.ai รองรับโปรโตคอล SSO สองแบบ ได้แก่ SAML 2.0 และ OpenID Connect โดย SAML เป็นมาตรฐานองค์กรแบบดั้งเดิมที่ identity provider แบบเดิมรองรับอย่างกว้างขวาง ส่วน OIDC เป็นมาตรฐานสมัยใหม่ที่สร้างขึ้นบน OAuth 2.0 มีการติดตั้งใช้งานที่ง่ายกว่าและรองรับอุปกรณ์เคลื่อนที่ได้ดีกว่า เราแนะนำให้ใช้ OIDC สำหรับการเชื่อมต่อใหม่ และ SAML สำหรับองค์กรที่ได้ยึดถือมาตรฐานนี้เป็นหลักแล้ว
ทั้งสองโปรโตคอลทำงานตามขั้นตอนเดียวกัน คือ ผู้ใช้พยายามเข้าถึงแดชบอร์ด tracio.ai จากนั้นถูกเปลี่ยนเส้นทางไปยัง identity provider ของคุณเพื่อยืนยันตัวตน แล้วถูกเปลี่ยนเส้นทางกลับมายัง tracio.ai พร้อม assertion หรือ token ที่ลงลายเซ็นแล้ว tracio.ai จะตรวจสอบความถูกต้องของ assertion สร้างหรืออัปเดตเซสชันของผู้ใช้ และให้สิทธิ์การเข้าถึงตามบทบาทที่แมปไว้
การเชื่อมต่อ Okta
สำหรับ Okta ให้สร้าง application integration ใหม่ในคอนโซลผู้ดูแลระบบ Okta ของคุณ เลือก OIDC เป็นวิธีการลงชื่อเข้าใช้ และเลือก Web Application เป็นประเภทแอปพลิเคชัน ตั้งค่า sign-in redirect URI เป็น https://dashboard.tracio.ai/auth/callback/oidc และตั้งค่า sign-out redirect URI เป็น https://dashboard.tracio.ai/auth/logout
ในแดชบอร์ด tracio.ai ภายใต้ Settings > Authentication ให้กรอกโดเมน Okta, client ID และ client secret ของคุณ tracio.ai จะค้นหา OIDC endpoint โดยอัตโนมัติจาก metadata URL ของ Okta ตั้งค่าการแมปกลุ่มกับบทบาท (group-to-role mapping) เพื่อกำหนดบทบาทของ tracio.ai (Admin, Analyst, Viewer) ตามการเป็นสมาชิกกลุ่มใน Okta
การเชื่อมต่อ Auth0
สร้าง Regular Web Application ใหม่ในแดชบอร์ด Auth0 ของคุณ เพิ่ม https://dashboard.tracio.ai/auth/callback/oidc ลงใน Allowed Callback URLs และเพิ่ม https://dashboard.tracio.ai ลงใน Allowed Logout URLs เปิดใช้งาน connection ที่เหมาะสม (database, social, enterprise) ภายใต้แท็บ Connections ของแอปพลิเคชัน
ใน tracio.ai ให้กรอกโดเมน Auth0, client ID และ client secret ของคุณ endpoint สำหรับ OIDC discovery ของ Auth0 ที่ https://your-domain.auth0.com/.well-known/openid-configuration จะให้ metadata ที่จำเป็นทั้งหมด ใช้ Auth0 Rules หรือ Actions เพื่อรวม claim แบบกำหนดเองไว้ใน ID token สำหรับการแมปบทบาท
การเชื่อมต่อ Azure AD
ในพอร์ทัล Azure ให้ไปที่ Azure Active Directory > App registrations > New registration ตั้งค่า redirect URI เป็น https://dashboard.tracio.ai/auth/callback/oidc ภายใต้ Certificates & secrets ให้สร้าง client secret ใหม่ ภายใต้ API permissions ให้ตรวจสอบว่าได้ให้สิทธิ์ openid, profile และ email แล้ว
ใน tracio.ai ให้กรอก tenant ID, client ID และ client secret ของ Azure AD metadata URL สำหรับ OIDC เป็นไปตามรูปแบบ https://login.microsoftonline.com/{tenant-id}/v2.0/.well-known/openid-configuration แมปกลุ่ม Azure AD หรือ app role กับบทบาทของ tracio.ai ภายใต้การตั้งค่าการแมปบทบาท
การแมปบทบาทและการจัดสรร
tracio.ai รองรับสามบทบาท ได้แก่ Admin (เข้าถึงได้เต็มรูปแบบรวมถึงการจัดการ API key และการเรียกเก็บเงิน), Analyst (สิทธิ์อ่าน/เขียนสำหรับ event, signal และ rule) และ Viewer (สิทธิ์เข้าถึงแดชบอร์ดแบบอ่านอย่างเดียว) บทบาทถูกแมปจากกลุ่มหรือ claim ของ identity provider ของคุณ
นอกจากนี้เรายังรองรับ SCIM 2.0 สำหรับการจัดสรร (provisioning) และการยกเลิกการจัดสรร (deprovisioning) ผู้ใช้แบบอัตโนมัติ เมื่อพนักงานถูกเพิ่มเข้าไปในกลุ่มที่เหมาะสมใน identity provider ของคุณ ระบบจะจัดสรรพวกเขาใน tracio.ai โดยอัตโนมัติพร้อมบทบาทที่ถูกต้อง เมื่อพวกเขาถูกนำออก สิทธิ์การเข้าถึงจะถูกเพิกถอนภายในไม่กี่นาที SCIM ทำให้การจัดการวงจรชีวิตของผู้ใช้ยังคงรวมศูนย์อยู่ใน identity provider ของคุณ