- มาตรฐานไฟล์
auth.mdที่แต่ละบริการโฮสต์ไว้ที่รากโดเมนของตนเอง - บอกเอเจนต์ว่าจะลงทะเบียนแทนผู้ใช้อย่างไร เพื่อให้เอเจนต์ลงทะเบียนผู้ใช้ได้โดยไม่ต้องมีฟอร์มสมัครสมาชิกแยกต่างหาก
- ภายในไฟล์มีข้อมูลเกี่ยวกับ flow ที่รองรับ, scope ที่มีอยู่, และวิธีลงทะเบียนกับบริการ
- ประกอบด้วย 3 ฝ่าย
- agent: ฝ่ายที่ทำงานแทนผู้ใช้
- agent provider: IdP ที่ออก identity assertion ID-JAG
- service: ฝ่ายที่รับ assertion และออก credential
- เอเจนต์จะดึง
auth.mdมา เลือก flow ที่รองรับ จากนั้นแสดง verified identity assertion หรือทำ code verification claim สำหรับผู้ใช้ - รูปแบบการลงทะเบียนถูกนำเสนอในเชิงการตลาดว่ามี 2 แบบ แต่ในเชิงการติดตั้งใช้งานจริงมี 3 แบบ รวม anonymous
- Agent verified: IdP ของเอเจนต์รับรองผู้ใช้ โดยไม่ต้องมีมนุษย์เข้ามาเกี่ยวข้อง
- User claimed: ไม่ต้องมี provider โดยผู้ใช้ยืนยันโค้ดที่เอเจนต์แสดงหลังจากล็อกอิน ใช้ RFC 8628 style claim ceremony (รูปแบบ device flow)
- Anonymous Registration: เอเจนต์ทำงานด้วย pre-claim scope ก่อน แล้วเมื่อผู้ใช้ยืนยันความเป็นเจ้าของจึงยกระดับเป็น post-claim token
- แอปส่วนใหญ่รองรับทั้งสองแนวทาง และให้เอเจนต์เลือกตามสถานการณ์
- มีการออก scoped access token ที่ผูกกับผู้ใช้ให้กับเอเจนต์ โดยมีอายุสั้นและเพิกถอนได้
- ออกบนมาตรฐาน OAuth จึงนำระบบยืนยันตัวตน API เดิมกลับมาใช้ซ้ำได้ทันที
- ออก ID-JAG → แลกเป็น access_token ผ่าน RFC 7523 JWT-bearer grant และทำงานผ่านการค้นหา
/.well-known/oauth-authorization-server
- ออก ID-JAG → แลกเป็น access_token ผ่าน RFC 7523 JWT-bearer grant และทำงานผ่านการค้นหา
- แม้ WorkOS จะเป็นผู้จัดทำ แต่เป็น โปรโตคอลแบบเปิดที่ไม่ผูกกับโครงสร้างพื้นฐานของ WorkOS
- ผสานมาตรฐาน OAuth ที่มีอยู่เดิม (Protected Resource Metadata, ID-JAG) เพื่อให้เผยแพร่และอ่านได้โดยไม่ต้องมีบัญชี
- แอป/บริการสามารถ ควบคุมได้เองโดยตรง ว่าจะยอมรับ flow แบบใดและจะออก credential แบบใด
- ไม่ได้มีแค่สเปก แต่ยังมี ตัวอย่างการติดตั้งใช้งานทั้งฝั่ง agent provider และ service พร้อมไฟล์ AUTH.md ที่ทำหน้าที่เหมือน skill manifest ให้ลองรันได้จริง
- หลายบริการอย่าง Cloudflare, Firecrawl, Resend, monday.com ได้นำไปใช้แล้ว
- สัญญาอนุญาต MIT
2 ความคิดเห็น
แล้วทำไมมันถึงไม่ใช่ AUTH.md ล่ะ ?
auth.md ของ Firecrawl และ Resend.
Cloudflare ถูกยกเป็นกรณีใช้งานแรกบนหน้าแนะนำโปรโตคอล แต่พอกดเข้าไปดูกลับขึ้นว่า
not found :(ครับ