OpenID Connect (OIDC) คือโปรโตคอลการตรวจสอบสิทธิ์และการอนุญาตที่ทำงานบนเฟรมเวิร์ก OAuth 2.0 เป้าหมายหลักของ OIDC คือการสร้างมาตรฐานให้กับวิธีที่เว็บและแอปพลิเคชันมือถือตรวจสอบสิทธิ์ผู้ใช้และจัดการการเข้าถึงทรัพยากรที่ได้รับการป้องกัน โดยขยายขีดความสามารถของ OAuth 2.0 โดยมอบชั้นข้อมูลประจำตัวที่ยืดหยุ่น ทำงานร่วมกันได้ และปลอดภัย ซึ่งสามารถใช้เพื่อถ่ายโอนข้อมูลผู้ใช้ที่เรียกว่า "การอ้างสิทธิ์" OIDC ได้รับการพัฒนาและดูแลโดย OpenID Foundation โดยได้รับการสนับสนุนจากองค์กรเทคโนโลยีชั้นนำหลายแห่ง เช่น Google, Microsoft และ Facebook
OIDC ได้กลายเป็นองค์ประกอบสำคัญของโซลูชันการตรวจสอบสิทธิ์ผู้ใช้สมัยใหม่ เนื่องจากสามารถจัดการกับความท้าทายหลักหลายประการที่นักพัฒนาต้องเผชิญเมื่อใช้แผนการตรวจสอบสิทธิ์ที่กำหนดเอง ความท้าทายเหล่านี้รวมถึงการจัดการพื้นที่จัดเก็บรหัสผ่านอย่างปลอดภัย การเปิดใช้งานการลงชื่อเพียงครั้งเดียว (SSO) บนหลายแอปพลิเคชัน และการให้การสนับสนุนการรับรองความถูกต้องแบบหลายปัจจัย (MFA) ด้วยการใช้ OIDC นักพัฒนาสามารถถ่ายโอนความรับผิดชอบในการตรวจสอบสิทธิ์ไปยังผู้ให้บริการข้อมูลประจำตัว (IdP) ที่เชื่อถือได้ ทำให้พวกเขามุ่งเน้นไปที่ข้อกำหนดเฉพาะของแอปพลิเคชันของตนได้
ในโฟลว์ OIDC มาตรฐาน มีบทบาทหลักสามบทบาทที่เกี่ยวข้อง ได้แก่ ผู้ใช้ แอปพลิเคชันไคลเอ็นต์ และผู้ให้บริการข้อมูลประจำตัว (IdP)
- ผู้ใช้: ผู้ใช้คือบุคคลที่ต้องการเข้าถึงทรัพยากรที่ได้รับการป้องกันของแอปพลิเคชันไคลเอนต์
- แอปพลิเคชันไคลเอนต์: แอปพลิเคชันไคลเอนต์คือซอฟต์แวร์ที่ต้องการการเข้าถึงข้อมูลผู้ใช้เพื่อทำหน้าที่ของมัน ในบริบทของแพลตฟอร์ม AppMaster นี่อาจเป็นเว็บหรือแอปพลิเคชันมือถือที่สร้างขึ้นโดยใช้เครื่องมือ no-code ที่ใช้งานง่ายของแพลตฟอร์ม
- ผู้ให้บริการข้อมูลประจำตัว (IdP): ผู้ให้บริการข้อมูลประจำตัวเป็นเซิร์ฟเวอร์ที่รับผิดชอบในการตรวจสอบสิทธิ์ผู้ใช้และสร้างโทเค็นที่จำเป็นในการเข้าถึงทรัพยากรที่ได้รับการป้องกัน IdP อาจเป็น Google, Apple, Facebook, Microsoft หรือบริการอื่นใดที่ใช้มาตรฐาน OIDC
สำหรับการนำ OIDC ไปใช้ โดยทั่วไปนักพัฒนาจะปฏิบัติตามชุดขั้นตอนต่างๆ ซึ่งรวมถึง: การลงทะเบียนแอปพลิเคชันของตนกับ IdP ที่เลือก การกำหนดค่าแอปพลิเคชันไคลเอนต์เพื่อให้ผู้ใช้ตรวจสอบสิทธิ์ การจัดการการออกโทเค็น และการจัดการการแลกเปลี่ยนโทเค็นสำหรับข้อมูลผู้ใช้ และสุดท้ายคือการจัดการการเข้าถึง และความปลอดภัยในแอปพลิเคชันโดยใช้โทเค็นที่ให้มา
OIDC มีองค์ประกอบสำคัญสามประการ: โทเค็น ID, จุดสิ้นสุด Userinfo และการค้นพบ มาพูดคุยกันโดยละเอียด:
- โทเค็น ID: โทเค็น ID คือ JSON Web Token (JWT) ที่มีชุดการอ้างสิทธิ์เกี่ยวกับผู้ใช้ที่ได้รับการตรวจสอบสิทธิ์ OIDC กำหนดให้มีการอ้างสิทธิ์มาตรฐานขั้นต่ำ เช่น "sub" (หัวเรื่องหรือตัวระบุผู้ใช้), "aud" (ผู้ชมหรือผู้รับที่ต้องการ) และ "iss" (ผู้ออกหรือหน่วยงานระบุที่ออกโทเค็น) นักพัฒนาอาจกำหนดการอ้างสิทธิ์ที่กำหนดเองเพื่อแสดงข้อมูลผู้ใช้เพิ่มเติม
- Userinfo Endpoint: Userinfo Endpoint เป็นทรัพยากรที่ได้รับการป้องกัน OAuth 2.0 ที่จัดทำโดย IdP ซึ่งส่งคืนการอ้างสิทธิ์เกี่ยวกับผู้ใช้ที่ได้รับการรับรองความถูกต้อง โดยทั่วไปการเรียกร้องเหล่านี้จะถูกใช้โดยแอปพลิเคชันไคลเอนต์เพื่อรับข้อมูลผู้ใช้โดยละเอียดมากขึ้น เช่น ที่อยู่อีเมล ชื่อเต็ม และรูปโปรไฟล์
- การค้นพบ: OIDC รองรับการค้นหาแบบไดนามิกของข้อมูลเมตาที่เผยแพร่โดย IdP ทำให้แอปพลิเคชันไคลเอ็นต์กำหนด endpoints ขอบเขตที่รองรับ และข้อมูลอื่นๆ ที่จำเป็นในการโต้ตอบกับ IdP ได้ง่ายขึ้น โดยทั่วไปข้อมูลเมตานี้จะพร้อมใช้งานที่ endpoint การค้นพบที่รู้จักกันดี และสามารถดึงข้อมูลโดยทางโปรแกรมขณะรันไทม์
ข้อกำหนด OIDC กำหนดโฟลว์มาตรฐานหลายประการที่ตอบสนองประเภทแอปพลิเคชัน ความต้องการ และความสามารถที่หลากหลาย โฟลว์ที่ได้รับความนิยมมากที่สุดบางส่วนคือโฟลว์รหัสการอนุญาต (มีหรือไม่มี PKCE), โฟลว์โดยนัย และโฟลว์แบบไฮบริด แต่ละโฟลว์ตอบสนองความต้องการที่แตกต่างกันและมีระดับความปลอดภัยและความซับซ้อนที่แตกต่างกัน
ในบริบทของแพลตฟอร์ม AppMaster นั้น OIDC สามารถใช้ประโยชน์จากการรับรองความถูกต้องที่ปลอดภัยและราบรื่นสำหรับแอปพลิเคชันเว็บ แบ็กเอนด์ และมือถือ ด้วยการผสานรวมกับ IdP ยอดนิยม AppMaster ช่วยให้นักพัฒนาสามารถมอบประสบการณ์การตรวจสอบความถูกต้องที่สอดคล้องกันในอุปกรณ์ แพลตฟอร์ม และแอปพลิเคชันต่างๆ นอกจากนี้ การใช้ OIDC ทำให้แอปพลิเคชันที่สร้างโดย AppMaster ได้รับประโยชน์จากการรักษาความปลอดภัยที่เพิ่มขึ้น ลดความพยายามในการพัฒนา และประสบการณ์ผู้ใช้ที่ได้รับการปรับปรุง ซึ่งนำไปสู่กระบวนการพัฒนาแอปพลิเคชันที่รวดเร็ว ปลอดภัยยิ่งขึ้น และคุ้มต้นทุน
โดยสรุป OpenID Connect เป็นเฟรมเวิร์กการตรวจสอบสิทธิ์และการอนุญาตที่ทรงพลัง ซึ่งกลายเป็นมาตรฐานจริงสำหรับการตรวจสอบผู้ใช้สมัยใหม่ทั่วทั้งเว็บและระบบนิเวศมือถือ ด้วยคุณสมบัติความปลอดภัยที่แข็งแกร่งและความสามารถในการทำงานร่วมกัน OIDC มอบคุณประโยชน์ที่สำคัญสำหรับทั้งนักพัฒนาและผู้ใช้ปลายทาง ด้วยการรวม OIDC เข้ากับแพลตฟอร์ม AppMaster นักพัฒนาจึงสามารถส่งมอบแอปพลิเคชันคุณภาพสูงด้วยกระบวนการตรวจสอบสิทธิ์ที่คล่องตัว ประสบการณ์ผู้ใช้ที่ยอดเยี่ยม และการรับประกันการจัดการการเข้าถึงที่ปลอดภัยและเชื่อถือได้