• ai
  • OAuth 2.0
  • OIDC
  • agent

ทำไมผลิตภัณฑ์ของคุณต้องการ OAuth 2.0 และ OIDC — โดยเฉพาะในยุค AI

เรียนรู้ว่าทำไม OAuth 2.0 และ OpenID Connect (OIDC) ถึงสำคัญสำหรับการยืนยันตัวตนแบบใหม่ โดยเฉพาะในยุคของ AI, เอเจนต์, และอุปกรณ์อัจฉริยะ บทความนี้ครอบคลุมการใช้งานหลัก ๆ, เมื่อไหร่ที่ควรใช้โปรโตคอลเหล่านี้, และวิธีการเลือกผู้ให้บริการออกัธที่เหมาะสมสำหรับการขยายตัวและความปลอดภัย

Guamian
Guamian
Product & Design

หยุดเสียเวลาเป็นสัปดาห์กับการยืนยันตัวตนผู้ใช้
เปิดตัวแอปที่ปลอดภัยเร็วขึ้นด้วย Logto ผสานการยืนยันตัวตนผู้ใช้ภายในไม่กี่นาทีและมุ่งเน้นที่ผลิตภัณฑ์หลักของคุณ
เริ่มต้นใช้งาน
Product screenshot

ตั้งแต่เริ่มต้น Logto ถูกสร้างขึ้นบนความเชื่อมั่นในมาตรฐานเปิด เราเลือกที่จะปฏิบัติตามโปรโตคอลอย่าง OIDC, OAuth 2.0, และ SAML — ไม่เพียงเพราะมันถูกใช้กันอย่างแพร่หลาย, แต่เพราะพวกมันแสดงถึงการปฏิบัติที่มั่นคงและปลอดภัยซึ่งไว้วางใจกันในอุตสาหกรรม การรักษาความปลอดภัยเป็นสิ่งสำคัญสำหรับเราเสมอ เช่นเดียวกับการยึดมั่นในจิตวิญญาณของโอเพ่นซอร์ส, และการปฏิบัติตามแนวทางที่ดีที่สุดใน การจัดการอัตลักษณ์ลูกค้า (CIAM) และการยืนยันตัวตนแบบใหม่

แต่เราก็เรียนรู้สิ่งหนึ่งระหว่างทาง:

OAuth 2.0 และ OIDC นั้นไม่ง่ายสำหรับทุกคน สำหรับนักพัฒนาที่ใหม่กับโปรโตคอลเหล่านี้ แนวคิดบางอย่างอาจรู้สึกแปลกและบางครั้งก็ยากที่จะเข้าใจได้ สิ่งนี้นำไปสู่ความท้าทายจริง ๆ ขณะที่เราพยายามทำให้ประสบการณ์ของนักพัฒนาง่ายขึ้นโดยไม่ลดทอนความปลอดภัยลง

สิ่งสองสิ่งที่โดดเด่น:

  1. แม้ว่าเราจะพยายามอย่างหนักเพื่อให้การบูรณาการราบรื่นที่สุดเท่าที่จะเป็นไปได้ แต่ก็ยังมีช่วงการเรียนรู้เกี่ยวกับการทำความเข้าใจแนวคิดพื้นฐานอย่าง ID tokens, access tokens, และวิธีการทำงาน
  2. คำถามที่พบบ่อยคือ: “ฉันสามารถข้ามการรีไดเรกที่หน้าจอเข้าสู่ระบบได้หรือไม่?” น่าเสียดาย การรีไดเรกเป็นส่วนสำคัญของการทำงานของ OIDC และจำเป็นสำหรับการยืนยันตัวตนที่ปลอดภัย

Community.png

คำถามที่พบบ่อยจากผู้ใช้ Discord ของเรา (โดยมี ID และรูปประทับของพวกเขาถูกซ่อนไว้เพื่อความเป็นส่วนตัว)

ทุกการตัดสินใจมาพร้อมกับสิ่งที่ต้องแลกเปลี่ยน — แต่บางครั้ง, การเลือกที่คุณทำตั้งแต่ต้นกลับมีค่านัยสำคัญเมื่อการใช้งานใหม่ ๆ ปรากฏขึ้น และเราได้ก้าวเข้าสู่ยุคใหม่: ยุคของ AI

ในบทความนี้, ฉันจะสำรวจเมื่อไหร่ที่ผลิตภัณฑ์ของคุณควรใช้ OIDC และ OAuth 2.0, เมื่อไหร่มันอาจไม่จำเป็น, และทำไมฉันจึงสนับสนุนให้ใช้มาตรฐานเปิดเหล่านี้ตั้งแต่เริ่มต้น — โดยเฉพาะถ้าคุณกำลังสร้างธุรกิจจริงและเลือก CIAM ฉันยังจะอธิบายว่าทำไมการเพิ่มขึ้นของ AI จึงทำให้การตัดสินใจนี้สำคัญกว่าที่เคยเป็นมา

OAuth 2.0 ทำอะไรจริง ๆ (ด้วยการเปรียบเทียบแบบง่าย)

สำหรับผู้อ่านที่ไม่ค่อยคุ้นเคยกับ OAuth 2.0 มากนัก ให้ฉันขออธิบายแนวคิดพื้นฐานสักนิด — เพื่อให้สิ่งต่าง ๆ ชัดเจนยิ่งขึ้น

OAuth 2.0 คือสำหรับการอนุญาตที่มอบหมาย: OAuth 2.0 เป็นโปรโตคอลมาตรฐานในอุตสาหกรรมสำหรับการอนุญาต – มันอนุญาตให้บริการหนึ่งสามารถเข้าถึงข้อมูลบนเซิร์ฟเวอร์ของบริการอื่นในนามเจ้าของทรัพยากรโดยมีความยินยอมของผู้ใช้

ในสถานการณ์ OAuth, ผู้ใช้ (เจ้าของทรัพยากร) มอบสิทธิ์การเข้าถึงที่จำกัดให้แอปพลิเคชันไคลเอนต์ (สิทธิ์ที่ระบุ) กับ API หรือเซิร์ฟเวอร์ทรัพยากร, โดยไม่ต้องแชร์รหัสผ่านของพวกเขา OAuth กำหนดวิธีการร้องขอและออก access token ที่ไคลเอนต์สามารถใช้งานเพื่อเรียก API ที่ปกป้องไว้ได้ ซึ่งเป็นการเปลี่ยนแปลงครั้งสำคัญเมื่อเทียบกับยุคก่อน ๆ ที่แอปอาจจะขอรับรองความถูกต้องเพื่อล็อกอินเข้าถึงบริการอื่น ๆ (ซึ่งมีความเสี่ยงด้านความปลอดภัยอย่างมาก) ด้วย OAuth 2.0, ผู้ใช้อนุมัติการเข้าถึงเฉพาะ และไคลเอนต์ได้รับ token ที่มีเฉพาะสิทธิ์และระยะเวลาที่จำเป็น – ไม่จำเป็นต้องมีการแลกเปลี่ยนรหัสผ่าน, ทำให้ความปลอดภัยดีขึ้นอย่างมาก

ลองคิดว่า OAuth 2.0 เหมือนกับการเช็คอินโรงแรม

คุณ (ผู้ใช้) เป็นเจ้าของห้อง (ข้อมูลของคุณ) แต่แทนที่จะให้คนอื่นคีย์การ์ดทางเข้า (รหัสผ่านของคุณ), คุณไปที่แผนกต้อนรับและขอบัตรชั่วคราว (access token) ที่ใช้ได้สำหรับแขกหรือเพื่อนของคุณในการเข้ายิมหรือสระว่ายน้ำ — ไม่ใช่ทั้งห้อง

พนักงานโรงแรม (ระบบ OAuth) ออก card ที่จำกัดนี้พร้อมกฎเฉพาะ:

  • มันใช้ได้เฉพาะสำหรับยิม (ทรัพยากรเฉพาะ)
  • มันใช้ได้ในเวลาไม่มาก
  • มันไม่อนุญาตให้ใครเข้าห้องของคุณ

oauth-system.png

ด้วยวิธีนี้, คุณไม่ต้องให้กุญแจหลักของคุณไป — และระบบก็ยังคงปลอดภัย, แม้ว่าคนอื่นจะได้บัตรที่จำกัดนี้

ลองดูตัวอย่างอื่นกัน OAuth 2.0 ถูกใช้งานอย่างแพร่หลายในสถานการณ์การเข้าสู่ระบบผ่านโซเชียล

ลองคิดว่า คุณกำลังสมัครเข้าใช้แอปใหม่อย่าง Notion, และแทนที่จะสร้างชื่อผู้ใช้และรหัสผ่านใหม่ คุณคลิก “ต่อไปด้วย Google”

นี่คือสิ่งที่เกิดขึ้นเบื้องหลังด้วย OAuth 2.0:

  1. คุณถูกรีไดเรกไปที่หน้าล็อกอินของ Google, ที่ซึ่งคุณล็อกอิน (ถ้าคุณยังไม่ได้ทำ)

  2. Google ถาม:

    “คุณอนุญาตให้แอปนี้ดูโปรไฟล์และที่อยู่อีเมลพื้นฐานของคุณหรือไม่?”

  3. คุณคลิก “อนุญาต”, และ Google ส่ง access token ไปยังแอป

  4. แอปใช้ token นั้นเพื่อ:

    • ยืนยัน ตัวตน ของคุณ (ผ่านอีเมลและข้อมูลโปรไฟล์ของคุณ)
    • สร้างหรือล็อกอินเข้าสู่บัญชีโดยไม่เคยมองเห็นรหัสผ่าน Google ของคุณ

google-sign-in.png

OIDC ทำอะไรจริง ๆ (ด้วยการเปรียบเทียบแบบง่าย)

ตอนนี้ลองมาดูที่ OIDC — มาตรฐานที่ใหม่กว่าและก้าวหน้ากว่า OpenID Connect มุ่งเน้นที่การยืนยันตัวตนและการระบุ: มันคือชั้นการยืนยันตัวตนซึ่งสร้างบน OAuth 2.0 ในขณะที่ OAuth 2.0 เดียวไม่บอกว่าใครคือผู้ใช้ (มันแค่เกี่ยวกับ access token และ scopes), OIDC เพิ่มวิธีมาตรฐานในการจัดการการล็อกอินและตัวตนของผู้ใช้

เมื่อใช้ OIDC, เซิร์ฟเวอร์การอนุญาตยังทำหน้าที่เป็น OpenID Provider (ผู้ให้บริการตัวตน) ที่ยืนยันผู้ใช้และออก ID token ที่มีข้อมูลเกี่ยวกับผู้ใช้ ("identity claims")

สั้น ๆ ว่า OAuth 2.0 ตอบคำถาม "ไคลเอนต์นี้สามารถเข้าถึงทรัพยากรนี้ได้หรือไม่?" และ OIDC ตอบคำถาม "ผู้ใช้ที่เพิ่งล็อกอินเข้ามาคือใคร?" ร่วมกัน, พวกมันอนุญาตให้แอปของคุณยืนยันตัวตนของผู้ใช้และจากนั้นใช้ authorized tokens เพื่อเข้าถึง API ในนามของผู้ใช้

ลองใช้การเปรียบเทียบของโรงแรมในการเข้าใจ OAuth 2.0 vs. OIDC อีกครั้ง

จินตนาการว่าคุณกำลังเช็คอินโรงแรม

  • OAuth 2.0 เหมือนการขอให้โรงแรมปล่อยให้ เพื่อน ของคุณใช้ยิมและสระว่ายน้ำในนามของคุณ

    คุณไปที่แผนกต้อนรับ, ให้สิทธิ์ และโรงแรมให้เพื่อนของคุณมี บัตรผ่านแขก

    โรงแรมไม่สนว่า เพื่อนนั้นคือใคร — แค่พวกเขาได้รับอนุญาตให้ใช้สิ่งอำนวยความสะดวก

    👉 นั่นคือ OAuth: "แอปนี้สามารถเข้าถึงข้อมูลหรือบริการบางอย่างของฉันได้"

  • OIDC เหมือนกับการขอให้โรงแรมตรวจสอบ ว่าใครคือผู้ใช้นั้น ก่อนที่จะให้สิทธิเข้าใช้

    ดังนั้นเพื่อนของคุณต้องแสดง บัตรประจำตัว ด้วย — และตอนนี้โรงแรมรู้ชื่อ, สถานะ, และยืนยันว่าพวกเขาเป็นแขกที่ได้รับการยืนยัน

    👉 นั่นคือ OIDC: "นี่คือใครใช้ผู้ใช้นั้น, และพวกเขาได้ล็อกอินแล้ว"

วิธีที่ Logto ใช้ OAuth 2.0 และ OpenID Connect (OIDC)

คุณสมบัติการยืนยันตัวตนหลักของ Logto ถูกสร้างบน OIDC (OpenID Connect)

ที่แก่นของมัน, Logto เป็นผู้ให้บริการ OpenID Connect (OIDC) — มาตรฐานที่สร้างบน OAuth 2.0 ที่มุ่งเน้นในการยืนยันตัวตนของผู้ใช้ที่ปลอดภัย, สมัยใหม่ Logto เป็นโซลูชั่น CIAM มืออาชีพ, ที่อัตลักษณ์เป็นรากฐานที่เราบริหารจัดการ

เราได้ออกแบบ Logto ด้วยความปลอดภัยเป็นพื้นฐาน นั่นหมายถึงการบังคับใช้ PKCE โดยดีฟอลต์, การบล็อกเส้นทางที่ไม่ปลอดภัยอย่าง implicit flow, และพึ่งพา การรีไดเรก เพื่อจัดการการล็อกอินอย่างปลอดภัย

ทำไมต้องมีการรีไดเรก?

OIDC ถูกออกแบบมาเพื่อการยืนยันตัวตนแบบเบราว์เซอร์ มันไม่ใช่แค่การเลือกทางเทคนิค — มันเกี่ยวกับการมอบประสบการณ์ที่ปลอดภัย, สม่ำเสมอให้กับผู้ใช้ในหลายแพลตฟอร์ม การรีไดเรกผู้ใช้ไปยังผู้ให้บริการอัตลักษณ์ (เช่น Logto, Google, หรือ Microsoft) ช่วยให้สิ่งนั้นเป็นไปได้

นี่คือ flux ทั่วไป:

  1. ผู้ใช้คลิก “ลงชื่อเข้าใช้”

    → แอปของคุณส่งพวกเขาไปยังหน้าล็อกอินของ Logto

  2. พวกเขาล็อกอินอย่างปลอดภัย

    → นี่คือที่ที่สิ่งต่าง ๆ อย่าง MFA, ไบโอเมตริกส์, หรือการลงชื่อเข้าสู่ระบบผ่านโซเชียลเกิดขึ้น

  3. Logto ส่งพวกเขากลับมา

    → พร้อมกับ token ที่ปลอดภัยหรือ authorization code

  4. แอปของคุณทำการล็อกอินให้เสร็จสิ้น

    → token ถูกตรวจสอบและผู้ใช้ได้รับการลงชื่อเข้าใช้

รูปแบบนี้อาจดูง่าย แต่ก็นำประโยชน์ที่มีประสิทธิภาพมาด้วย:

  • แอปของคุณไม่จัดการกับข้อมูลรับรองโดยตรง — ซึ่งหมายถึงความเสี่ยงที่น้อยลง
  • มันง่ายต่อการเพิ่มคุณสมบัติอย่าง MFA โดยไม่ต้องเปลี่ยนโค้ดแอป
  • มันทำงานได้ดีสำหรับมือถือ, ด้วย:

และถ้าผลิตภัณฑ์ของคุณครอบคลุมแอปหลายตัว, การรีไดเรกอนุญาตให้มี single sign-on — ผู้ใช้ลงชื่อเข้าใช้หนึ่งครั้ง, และเปลี่ยนแอปได้โดยไม่มีการสะดุด

Logto ไม่สนับสนุนการเก็บรวบรวมรหัสผ่านในแอปของคุณโดยตรง นั่นเป็นความตั้งใจ ROPC flow ไม่แนะนำสำหรับ แนวปฏิบัติที่ดีที่สุดของ OAuth 2.0 ด้านความปลอดภัย ด้วยเหตุผลที่ดี — มันมีความปลอดภัยน้อยกว่าและยากที่จะขยายความปลอดภัย

Logto ยังเป็นผู้ให้บริการ OAuth 2.0/OIDC (Identity Provider)

Logto ไม่ใช่แค่เซิร์ฟเวอร์ยืนยันตัวตน — มันเป็น OAuth 2.0, OpenID Connect (OIDC), และ Identity Provider (IdP) อย่างเต็มรูปแบบ นั่นหมายความว่ามันสามารถบริหารจัดการอัตลักษณ์ของผู้ใช้อย่างปลอดภัย และออก token ที่แอปพลิเคชันอื่น ๆ เชื่อถือได้

นอกจากการขับเคลื่อนประสบการณ์การล็อกอินสำหรับแอปของคุณเอง, Logto ยังสนับสนุน การใช้งานแอปภายนอก, ให้บริการภายนอกพึ่ง Logto เป็นแหล่งอัตลักษณ์ของพวกเขา

นั่นหมายความว่าในการปฏิบัติอย่างไร?

ในฐานะ Identity Provider (IdP), Logto จัดการการยืนยันผู้ใช้, จัดการข้อมูลรับรอง, และออก authentication token เมื่อผู้ใช้ลงชื่อ ท Logto สามารถให้พวกเขาเข้าถึงแอปต่าง ๆ — แม้จากผู้ในองค์กรอื่น — โดยไม่ต้องล็อกอินอีกครั้ง มันเป็นแนวคิดเดียวกับ “ลงชื่อเข้าใช้ด้วย Google” หรือ “ลงชื่อเข้าใช้ด้วย Microsoft”

มีแอปสองประเภทในบริบทนี้:

  • แอปภายใน: แอปที่คุณสร้างและควบคุมเต็มที่, บูรณาการโดยตรงกับ Logto
  • แอปของบุคคลที่สาม: บริการภายนอกที่สร้างโดยพันธมิตรหรือผู้พัฒนานอกองค์กรของคุณ

Logto อนุญาตให้ผู้ใช้ของคุณลงชื่อเข้าใช้แอปของบุคคลที่สามโดยใช้บัญชี Logto ที่มีอยู่ของพวกเขา — เช่นเดียวกับที่ผู้ใช้ในองค์กรลงชื่อเข้าใช้เครื่องมืออย่าง Slack ด้วยข้อมูลประจำตัวของ Google Workspace นี่ช่วยให้คุณสามารถ:

  • เสนอ single sign-on (SSO) ในระบบของคุณ
  • สร้าง แพลตฟอร์มเปิด, ที่ผู้พัฒนาบุคคลที่สามสามารถเพิ่ม “ลงชื่อเข้าใช้ด้วย Logto” ในแอปของพวกเขาได้

เมื่อไหร่ที่คุณต้องการจริง ๆ OAuth 2.0 และ OIDC?

  1. ถ้าคุณเคยใช้ Auth0 (หรือคล้ายกัน): Auth0 เป็นผู้ให้บริการ OAuth 2.0 และ OIDC อยู่แล้ว มันบริหารการเข้าสู่ระบบของผู้ใช้, การออก token, และการบูรณาการกับ API หรือแอปของคุณ
  2. การอนุญาต M2M: การสื่อสารระหว่างเซิร์ฟเวอร์กับเซิร์ฟเวอร์ (client credentials flow) เครื่องจักร (หรือบริการเบื้องหลัง) จำเป็นต้องสื่อสารอย่างปลอดภัยโดยไม่มีผู้ใช้
  3. การใช้อุปกรณ์: ทีวีอัจฉริยะ, คอนโซล, อุปกรณ์ IoT: อุปกรณ์อย่างทีวีหรือเครื่องพิมพ์จำเป็นต้องยืนยันตัวตนของผู้ใช้ การใช้อุปกรณ์เป็นส่วนหนึ่งของ OIDC
  4. คุณมีความต้องการในการทำงานร่วมกัน: คุณไม่ได้เพียงแค่ยืนยันตัวตนของผู้ใช้ — คุณกำลังสร้าง ecosystem ที่ แอปภายนอก, พันธมิตร, หรือเอเจนต์ สามารถบูรณาการกับแพลตฟอร์มของคุณและเข้าถึงข้อมูลผู้ใช้อย่างปลอดภัย

ทำไม OAuth และ OIDC จึงมีความสำคัญกว่าที่เคยในยุค AI

ในยุค AI, เราเห็นการเพิ่มขึ้นของความต้องการในการเชื่อมต่อและการเข้าถึงใหม่ ๆ — โดยเฉพาะในด้านเอเจนต์อัตโนมัติ, อุปกรณ์อัจฉริยะ, และการสื่อสารระหว่างระบบกับระบบ แนวโน้มเหล่านี้ทำให้ OAuth 2.0 และ OIDC สำคัญกว่าที่เคย ตัวอย่างเช่น:

  1. Remote MCP servers

    คุณสร้างเซิร์ฟเวอร์ MCP ระยะไกลและต้องการให้เอเจนต์บุคคลที่สามเชื่อมต่อกับมัน เอเจนต์เหล่านี้ต้องการการเข้าถึงที่ปลอดภัยในการร้องขอบริบท, ปฏิบัติการ, และแลกเปลี่ยนข้อมูล — ทั้งหมดโดยไม่ต้องประนีประนอมกับความไว้วางใจของผู้ใช้ OAuth ให้กลไกการมอบสิทธิการเข้าถึงอย่างปลอดภัย

  2. การเปิดผลิตภัณฑ์ของคุณสู่การบูรณาการ

    คุณดำเนินธุรกิจบริการของคุณเอง — สมมุติเครื่องมือการจัดการโครงการหรือแพลตฟอร์มลูกค้า — และคุณต้องการให้ผลิตภัณฑ์หรือเอเจนต์อื่นบูรณาการกับมัน นั่นอาจหมายถึงการดึงข้อมูล, เปิดกระบวนการทำงาน, หรือฝังคุณสมบัติของคุณลงในสภาพแวดล้อมอื่น ๆ OAuth 2.0/OIDC ช่วยให้ควบคุมการเข้าถึงที่ละเอียดอ่อนโดยใช้ token ที่มีการแยกประเภท โดยไม่ต้องแชร์ข้อมูลของผู้ใช้

  3. การสร้างเอเจนต์ของคุณเอง

    คุณกำลังสร้างเอเจนต์หรือผู้ช่วย AI และต้องการให้มันติดต่อกับแอปและเซิร์ฟเวอร์ MCP อื่น ๆ — การกำหนดตารางการประชุม, ส่งอีเมล, โพสต์อัปเดต, หรือสืบค้นข้อมูล เหล่านี้ต้องการการเข้าถึงที่ปลอดภัย, ได้รับการยืนยันตัวตนไปยังบริการของบุคคลที่สาม OAuth 2.0 เป็นวิธีที่เอเจนต์ของคุณได้รับอำนาจให้นำเสนอในนามของผู้ใช้

  4. การเพิ่มขึ้นของอุปกรณ์อัจฉริยะ

    อุปกรณ์ฮาร์ดแวร์เช่นแปลภาษา AI หรือเครื่องบันทึกเสียงประชุมอัจฉริยะกำลังมีความสามารถมากขึ้นด้วย LLMs และด้วยค่าใช้จ่ายต่ำลงและประสิทธิภาพสูงขึ้น อุปกรณ์เหล่านี้กำลังเข้าสู่ตลาดมากขึ้น เรื่อย ๆ อุปกรณ์เหล่านี้มักต้องการวิธีในการยืนยันตัวตนของผู้ใช้และเข้าถึงบริการที่อยู่บนคลาวด์ — โดยเฉพาะอย่างยิ่งเมื่อมีอินเทอร์เฟสการใส่ข้อมูลที่จำกัด นั่นคือที่ที่การไหลการใช้อุปกรณ์ของ OAuth ประเภท device authorization flow และการยืนยันตัวตนที่ใช้ OIDC มีความสำคัญ

เมื่อคุณอาจไม่ต้องการ OAuth 2.0/OIDC

แน่นอนมีบางกรณีที่คุณอาจไม่ต้องการ OAuth 2.0 หรือ OIDC — อย่างน้อยก็ไม่ในตอนนี้ พูดอีกอย่างคือ, ถ้าเคสการใช้งานปัจจุบันของคุณง่ายหรือครบวงจร, โปรโตคอลเหล่านี้อาจไม่ก่อให้เกิดคุณค่าในทันที

อย่างไรก็ตาม, เมื่อตัวผลิตภัณฑ์ของคุณเติบโตหรือระบบนิเวศน์ของคุณขยาย, ความต้องการ OAuth 2.0 และ OIDC มักจะปรากฏชัดเจนกว่ามากในระยะยาว

  1. แอปภายในง่าย ๆ

    ถ้าแอปของคุณถูกใช้โดยทีมเล็กภายในบริษัทเท่านั้นและไม่ต้องการรวมเข้ากับบริการของบุคคลที่สามหรือเปิด API, ระบบยืนยันตัวตนอิงชื่อผู้ใช้-รหัสผ่านพื้นฐาน (เช่น, การใช้ cookie session) อาจเพียงพอ

  2. ไม่ต้องการการยืนยันตัวตนของผู้ใช้

    ถ้าผลิตภัณฑ์ของคุณไม่มีบัญชีผู้ใช้หรือคุณสมบัติที่รู้ตัวตน — เช่น เว็บไซต์เนื้อหาสาธารณะหรือเครื่องมือเซิร์ฟเวอร์ต่อเซิร์ฟเวอร์ที่ใช้คีย์ API คงที่ — OIDC ไม่จำเป็น

  3. ไม่ต้องการการเข้าถึงแบบมอบหมาย

    OAuth เหมาะสมเมื่อคุณต้องการให้ผู้ใช้อนุญาตให้แอปของคุณเข้าถึงข้อมูลของพวกเขาในระบบอื่น ๆ (เช่น, Google Drive) ถ้าคุณไม่ได้รวมเข้ากับ API ของบุคคลที่สามหรือสร้างวอร์กโฟลว์หลายบริการ, OAuth เพิ่มความซับซ้อนโดยมีคุณค่าน้อย

  4. สภาพแวดล้อมเดียว, ความเสี่ยงน้อยที่สุด

    สำหรับโปรโตไทป์ระยะแรก, MVPs, หรือเครื่องมือทดสอบภายในที่ความเรียบง่ายและความเร็วเหนือกว่าความต้องการด้านความปลอดภัย, คุณอาจเลื่อนการใช้งาน OAuth/OIDC ออกไปจนถึงภายหลัง

คิดสุดท้ายเกี่ยวกับการเลือกกลยุทธ์การยืนยันตัวตนที่เหมาะสม

คุณอาจไม่ต้องการ OAuth 2.0 หรือ OIDC ทันที — และนั่นก็ยังโอเค ในระยะเริ่มต้น, โซลูชั่นที่ง่ายมักทำงานได้ดีตามที่ต้องการ แต่เมื่อตัวผลิตภัณฑ์ของคุณเติบโตขึ้น, เมื่อนักพัฒนาที่ใช้ AI กลายเป็นส่วนผสมสำคัญของความก้าวหน้าในผลิตภัณฑ์, และเมื่อระบบนิเวศน์ของคุณเปิดให้พันธมิตรและบุคคลที่สาม, การยืนยันตัวตนที่ปลอดภัยและมีมาตรฐานไม่ใช่แค่เป็นสิ่งที่ดีที่จะมีไว้ แต่กลายเป็นสิ่งที่จำเป็น

แทนที่จะตามหลังคนอื่น, มันคุ้มค่าที่จะวางรากฐานในตอนนี้ การใช้งาน OAuth 2.0 และ OIDC ไม่ใช่แค่การแก้ปัญหาที่มีในปัจจุบัน — มันเกี่ยวกับการเตรียมพร้อมสำหรับสิ่งที่กำลังจะมาถึง