ตั้งค่า Single Sign-On (SSO) ด้วย Microsoft Entra ID (SAML)
ด้วยการตั้งค่าที่น้อยที่สุด ตัวเชื่อมต่อนี้ช่วยให้คุณผสานรวมกับ Microsoft Entra ID (เดิมชื่อ Azure AD) สำหรับ SSO สำหรับองค์กร (SSO) ได้อย่างง่ายดาย
สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ SSO และวิธีตั้งค่า SSO ใน Logto โปรดดูเอกสาร SSO สำหรับองค์กร (SAML & OIDC) เพื่อเริ่มต้นใช้งาน
ขั้นตอนที่ 1: สร้างแอปพลิเคชัน Azure AD SSO
เริ่มต้นการผสานรวม Azure AD SSO โดยการสร้างแอปพลิเคชัน SSO ในฝั่ง Azure AD
- ไปที่ Azure portal และลงชื่อเข้าใช้ในฐานะผู้ดูแลระบบ
- เลือกบริการ
Microsoft Entra ID - ไปที่
Enterprise applicationsโดยใช้เมนูด้านข้าง คลิกNew applicationและเลือกCreate your own application
- กรอกชื่อแอปพลิเคชันและเลือก
Integrate any other application you don't find in the gallery (Non-gallery) - เลือก
Setup single sign-on>SAML
- ทำตามคำแนะนำ โดยในขั้นตอนแรก คุณจะต้องกรอกการตั้งค่า SAML พื้นฐานโดยใช้ข้อมูลต่อไปนี้ที่ได้รับจาก Logto
- Audience URI (SP Entity ID): ใช้เป็นตัวระบุที่ไม่ซ้ำกันทั่วโลกสำหรับบริการ Logto ของคุณ ทำหน้าที่เป็น EntityId สำหรับ SP ระหว่างคำขอการยืนยันตัวตน (Authentication request) ไปยัง IdP ตัวระบุตัวนี้มีความสำคัญต่อการแลกเปลี่ยนข้อมูล SAML assertion และข้อมูลที่เกี่ยวข้องกับการยืนยันตัวตนอื่น ๆ อย่างปลอดภัยระหว่าง IdP และ Logto
- ACS URL: Assertion Consumer Service (ACS) URL คือที่อยู่ที่ SAML assertion จะถูกส่งมาด้วยคำขอแบบ POST URL นี้ถูกใช้โดย IdP เพื่อส่ง SAML assertion ไปยัง Logto โดยทำหน้าที่เป็น callback URL ที่ Logto คาดว่าจะได้รับและประมวลผล SAML response ที่มีข้อมูลตัวตนของผู้ใช้
คลิก Save เพื่อดำเนินการต่อ
ขั้นตอนที่ 2: ตั้งค่า SAML SSO ที่ Logto
เพื่อให้การเชื่อมต่อ SAML SSO ทำงานได้ คุณจะต้องนำข้อมูลเมตาของผู้ให้บริการข้อมูลระบุตัวตน (IdP) ส่งกลับไปยัง Logto มาสลับกลับมาที่ฝั่ง Logto และไปที่แท็บ Connection ของตัวเชื่อมต่อ Azure AD SSO ของคุณ
Logto มีวิธีการตั้งค่าข้อมูลเมตาของ IdP ให้เลือก 3 วิธี วิธีที่ง่ายที่สุดคือการระบุ metadata URL ของแอป Azure AD SSO
คัดลอก App Federation Metadata Url จากส่วน SAML Certificates ของแอป Azure AD SSO ของคุณ แล้ววางลงในช่อง Metadata URL ใน Logto
Logto จะดึงข้อมูลเมตาจาก URL ดังกล่าวและตั้งค่าการเชื่อมต่อ SAML SSO ให้อัตโนมัติ
ขั้นตอนที่ 3: กำหนดการแมปแอตทริบิวต์ของผู้ใช้
Logto มีวิธีที่ยืดหยุ่นในการแมปแอตทริบิวต์ของผู้ใช้ที่ได้รับจากผู้ให้บริการข้อมูลระบุตัวตน (IdP) ไปยังแอตทริบิวต์ของผู้ใช้ใน Logto โดย Logto จะซิงค์แอตทริบิวต์ของผู้ใช้ต่อไปนี้จาก IdP โดยอัตโนมัติ:
- id: ตัวระบุที่ไม่ซ้ำของผู้ใช้ Logto จะอ่านการอ้างสิทธิ์ (
nameID) จาก SAML response เป็นรหัส SSO identity ของผู้ใช้ - email: ที่อยู่อีเมลของผู้ใช้ Logto จะอ่านการอ้างสิทธิ์ (
email) จาก SAML response เป็นอีเมลหลักของผู้ใช้โดยค่าเริ่มต้น - name: ชื่อของผู้ใช้
คุณสามารถจัดการตรรกะการแมปแอตทริบิวต์ของผู้ใช้ได้ทั้งฝั่ง Azure AD หรือฝั่ง Logto
-
แมปแอตทริบิวต์ของผู้ใช้ AzureAD ไปยังแอตทริบิวต์ของผู้ใช้ Logto ที่ฝั่ง Logto
ไปที่ส่วน
Attributes & Claimsของแอป Azure AD SSO ของคุณคัดลอกชื่อแอตทริบิวต์ต่อไปนี้ (พร้อมคำนำหน้า namespace) แล้ววางลงในช่องที่เกี่ยวข้องใน Logto
http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddresshttp://schemas.xmlsoap.org/ws/2005/05/identity/claims/name(คำแนะนำ: อัปเดตการแมปค่านี้เป็นuser.displaynameเพื่อประสบการณ์ผู้ใช้ที่ดียิ่งขึ้น)
-
แมปแอตทริบิวต์ของผู้ใช้ AzureAD ไปยังแอตทริบิวต์ของผู้ใช้ Logto ที่ฝั่ง AzureAD
ไปที่ส่วน
Attributes & Claimsของแอป Azure AD SSO ของคุณคลิก
Editและอัปเดตช่องAdditional claimsตามการตั้งค่าแอตทริบิวต์ของผู้ใช้ Logto:- อัปเดตค่าชื่อการอ้างสิทธิ์ตามการตั้งค่าแอตทริบิวต์ของผู้ใช้ Logto
- ลบคำนำหน้า namespace ออก
- คลิก
Saveเพื่อดำเนินการต่อ
ควรได้การตั้งค่าดังนี้:
คุณยังสามารถระบุแอตทริบิวต์ของผู้ใช้เพิ่มเติมที่ฝั่ง Azure AD ได้ Logto จะเก็บบันทึกแอตทริบิวต์ของผู้ใช้ต้นฉบับที่ได้รับจาก IdP ไว้ในฟิลด์ sso_identity ของผู้ใช้
ขั้นตอนที่ 4: กำหนดผู้ใช้ให้กับแอป Azure AD SSO
ไปที่ส่วน Users and groups ของแอปพลิเคชัน Azure AD SSO ของคุณ คลิกที่ Add user/group เพื่อกำหนดผู้ใช้ให้กับแอปพลิเคชัน Azure AD SSO เฉพาะผู้ใช้ที่ถูกกำหนดให้กับแอปพลิเคชัน Azure AD SSO ของคุณเท่านั้นที่จะสามารถยืนยันตัวตนผ่านตัวเชื่อมต่อ Azure AD SSO ได้
ขั้นตอนที่ 5: กำหนดโดเมนอีเมลและเปิดใช้งานตัวเชื่อมต่อ SSO
ระบุ email domains ขององค์กรของคุณในแท็บ SSO experience ของตัวเชื่อมต่อ Logto การดำเนินการนี้จะเปิดใช้งานตัวเชื่อมต่อ SSO เป็นวิธีการยืนยันตัวตนสำหรับผู้ใช้เหล่านั้น
ผู้ใช้ที่มีที่อยู่อีเมลในโดเมนที่ระบุจะถูกเปลี่ยนเส้นทางให้ใช้ตัวเชื่อมต่อ SAML SSO เป็นวิธีการยืนยันตัวตนเพียงวิธีเดียว
โปรดตรวจสอบ เอกสารทางการของ Azure AD สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการเชื่อมต่อ Azure AD SSO