ภาพรวม
เมื่อใช้พาสคีย์ที่ซิงค์ ผู้ใช้จะตรวจสอบสิทธิ์กับผู้ให้บริการพาสคีย์
หากต้องการสร้างและตรวจสอบสิทธิ์ด้วยพาสคีย์ คุณจะต้องใช้ WebAuthn API สำหรับเว็บ หรือ API เครื่องมือจัดการข้อมูลเข้าสู่ระบบสำหรับแอป Android โดย API เหล่านี้จะจัดการการสื่อสารระหว่างไคลเอ็นต์และผู้ให้บริการพาสคีย์
แม้ว่าจะมีการเรียก API เหล่านี้จากไคลเอ็นต์ เช่น หน้าเว็บหรือแอป Android แต่คุณต้องใช้ฟังก์ชันที่เหลือบนเซิร์ฟเวอร์เพื่อให้กรณีการใช้งานการตรวจสอบสิทธิ์เสร็จสมบูรณ์
การใช้งานพาสคีย์ประกอบด้วยฟังก์ชันการทำงาน 2 อย่างดังนี้
- การลงทะเบียนพาสคีย์ ใช้ WebAuthn API หรือ API เครื่องมือจัดการข้อมูลเข้าสู่ระบบเพื่อให้ผู้ใช้สร้างพาสคีย์ได้ จัดเก็บคีย์สาธารณะที่เกี่ยวข้องไว้ในเซิร์ฟเวอร์
- การตรวจสอบสิทธิ์ด้วยพาสคีย์ รับชุดการตรวจสอบสิทธิ์จากเซิร์ฟเวอร์และใช้ WebAuthn API หรือ API ตัวจัดการข้อมูลเข้าสู่ระบบ เพื่ออนุญาตให้ผู้ใช้ลงชื่อเข้าใช้การยืนยันนี้ด้วยพาสคีย์ ยืนยันลายเซ็นในเซิร์ฟเวอร์ หากลายเซ็นถูกต้อง ให้ตรวจสอบสิทธิ์ผู้ใช้
ไลบรารีฝั่งเซิร์ฟเวอร์
แม้ว่าคุณจะสามารถใช้ฟังก์ชันการทำงานของพาสคีย์ฝั่งเซิร์ฟเวอร์ตั้งแต่ต้น แต่เราขอแนะนำให้คุณใช้ไลบรารีแทน
เซิร์ฟเวอร์ที่รองรับการสร้างและการตรวจสอบสิทธิ์พาสคีย์เรียกว่าเซิร์ฟเวอร์ FIDO2 หรือเรียกสั้นๆ ว่าเซิร์ฟเวอร์ FIDO เพิ่มเติม เราจะเรียกไลบรารีฝั่งเซิร์ฟเวอร์ที่ใช้การรองรับพาสคีย์เป็นไลบรารีฝั่งเซิร์ฟเวอร์ FIDO
เหตุผลที่ควรใช้ไลบรารี
การใช้ไลบรารีฝั่งเซิร์ฟเวอร์ของ FIDO มีข้อดีหลายประการดังนี้
- เวลาและประสบการณ์ของนักพัฒนาแอป ข้อกำหนด WebAuthn มีความซับซ้อน ไลบรารีฝั่งเซิร์ฟเวอร์ของ FIDO จะมี API ง่ายๆ สำหรับใช้พาสคีย์ ซึ่งจะช่วยคุณประหยัดเวลาและทรัพยากรในการพัฒนา
- การดูแลรักษา ข้อกำหนด WebAuthn จะยังคงมีการเปลี่ยนแปลงได้ การใช้ไลบรารีล่าสุดที่ได้รับการดูแลอย่างต่อเนื่องจะช่วยให้การใช้งานของคุณอัปเดตอยู่เสมอ
- ความปลอดภัยและการปฏิบัติตามข้อกำหนด คุณต้องการให้การใช้งานพาสคีย์เป็นไปตามข้อกำหนดเฉพาะของ WebAuthn และข้อกำหนดด้านความปลอดภัย ไลบรารีฝั่งเซิร์ฟเวอร์ของ FIDO สามารถช่วยให้คุณทำให้การใช้งานมีความปลอดภัยและเป็นไปตามข้อกำหนดได้ นอกจากนี้ การใช้งานของคุณอาจอยู่ภายใต้กฎระเบียบที่กำหนดให้คุณต้องใช้มาตรฐานความปลอดภัยเฉพาะสำหรับการตรวจสอบสิทธิ์ ทั้งนี้ขึ้นอยู่กับผลิตภัณฑ์และอุตสาหกรรมของคุณ
หากเป็นไปได้ ให้พิจารณาสนับสนุนด้านการเงินสำหรับโปรเจ็กต์โอเพนซอร์สที่ผลิตภัณฑ์ของคุณใช้
ห้องสมุด
- ที่เก็บ GitHub แบบ awesome-webauthn ของ GitHub มีรายการไลบรารีฝั่งเซิร์ฟเวอร์ที่ดูแลจัดการโดยชุมชน คุณจะพบไลบรารีสำหรับ JavaScript และ TypeScript, Go, Python และอื่นๆ
- คอลเล็กชันของไลบรารีมีอยู่ใน passkeys.dev ซึ่งดูแลรักษาโดย W3C WebAuthn Adoption Community Group
- FIDO Alliance อ้างอิงถึงคอลเล็กชันของเซิร์ฟเวอร์ FIDO2