ข้ามไปยังเนื้อหาหลัก

ตั้งค่า 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

  1. ไปที่ Azure portal และลงชื่อเข้าใช้ในฐานะผู้ดูแลระบบ
  2. เลือกบริการ Microsoft Entra ID
  3. ไปที่ Enterprise applications โดยใช้เมนูด้านข้าง คลิก New application และเลือก Create your own application
Azure AD create application
  1. กรอกชื่อแอปพลิเคชันและเลือก Integrate any other application you don't find in the gallery (Non-gallery)
  2. เลือก Setup single sign-on > SAML
Azure AD set up SSO
  1. ทำตามคำแนะนำ โดยในขั้นตอนแรก คุณจะต้องกรอกการตั้งค่า SAML พื้นฐานโดยใช้ข้อมูลต่อไปนี้ที่ได้รับจาก Logto
Azure AD SP config
  • 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

Azure AD Metadata URL

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

  1. แมปแอตทริบิวต์ของผู้ใช้ AzureAD ไปยังแอตทริบิวต์ของผู้ใช้ Logto ที่ฝั่ง Logto

    ไปที่ส่วน Attributes & Claims ของแอป Azure AD SSO ของคุณ

    คัดลอกชื่อแอตทริบิวต์ต่อไปนี้ (พร้อมคำนำหน้า namespace) แล้ววางลงในช่องที่เกี่ยวข้องใน Logto

    • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/emailaddress
    • http://schemas.xmlsoap.org/ws/2005/05/identity/claims/name (คำแนะนำ: อัปเดตการแมปค่านี้เป็น user.displayname เพื่อประสบการณ์ผู้ใช้ที่ดียิ่งขึ้น)
Azure AD default attribute mapping
  1. แมปแอตทริบิวต์ของผู้ใช้ AzureAD ไปยังแอตทริบิวต์ของผู้ใช้ Logto ที่ฝั่ง AzureAD

    ไปที่ส่วน Attributes & Claims ของแอป Azure AD SSO ของคุณ

    คลิก Edit และอัปเดตช่อง Additional claims ตามการตั้งค่าแอตทริบิวต์ของผู้ใช้ Logto:

    • อัปเดตค่าชื่อการอ้างสิทธิ์ตามการตั้งค่าแอตทริบิวต์ของผู้ใช้ Logto
    • ลบคำนำหน้า namespace ออก
    • คลิก Save เพื่อดำเนินการต่อ

    ควรได้การตั้งค่าดังนี้:

Azure AD_Logto attribute mapping

คุณยังสามารถระบุแอตทริบิวต์ของผู้ใช้เพิ่มเติมที่ฝั่ง 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 ได้

Azure AD assign users

ขั้นตอนที่ 5: กำหนดโดเมนอีเมลและเปิดใช้งานตัวเชื่อมต่อ SSO

ระบุ email domains ขององค์กรของคุณในแท็บ SSO experience ของตัวเชื่อมต่อ Logto การดำเนินการนี้จะเปิดใช้งานตัวเชื่อมต่อ SSO เป็นวิธีการยืนยันตัวตนสำหรับผู้ใช้เหล่านั้น

ผู้ใช้ที่มีที่อยู่อีเมลในโดเมนที่ระบุจะถูกเปลี่ยนเส้นทางให้ใช้ตัวเชื่อมต่อ SAML SSO เป็นวิธีการยืนยันตัวตนเพียงวิธีเดียว

โปรดตรวจสอบ เอกสารทางการของ Azure AD สำหรับรายละเอียดเพิ่มเติมเกี่ยวกับการเชื่อมต่อ Azure AD SSO