สิ่งที่คุณควรรู้ก่อนรวม WebAuthn
แนะนำแนวคิดพื้นฐานของ WebAuthn เพื่อช่วยให้คุณตัดสินใจได้ดีขึ้นเมื่อรวม WebAuthn
WebAuthn มอบทางเลือกที่ปลอดภัยและเป็นมิตรต่อผู้ใช้มากกว่าการใช้รหัสผ่านแบบดั้งเดิม ความนิยมของมันกำลังเพิ่มขึ้น โดยมีเว็บไซต์จำนวนมากขึ้นที่ยอมรับเทคโนโลยีนี้ หากคุณกระตือรือร้นที่จะรวม WebAuthn เข้ากับเว็บไซต์ของคุณเอง คุณไม่ได้อยู่คนเดียว อย่างไรก็ตาม เนื่องจากเป็นเทคโนโลยีที่ค่อนข้างใหม่ คุณอาจมีคำถามเกี่ยวกับมันมากมาย
เมื่อพิจารณาการรวม WebAuthn เข้ากับเว็บไซต์หรือแอปพลิเคชันของคุณ การเข้าใจแนวคิดหลักและข้อพิจารณาเหล่านี้จะช่วยให้คุณตัดสินใจได้อย่างรอบรู้ว่า จะดำเนินการในตอนนี้หรือไม่
WebAuthn และ Passkeys คืออะไร?
มาทำความชัดเจนเกี่ยวกับคำจำกัดความ:
- Web Authentication API (WebAuthn) เป็นการขยายของ Credential Management API ซึ่งช่วยให้มีการยืนยันตัวตนที่แข็งแกร่งด้วยการเข้ารหัสคีย์สาธารณะ ทำให้มัลติแฟคเตอร์ที่ปลอดภัยและไร้รหัสผ่าน (MFA) เป็นไปได้โดยไม่ต้องใช้ข้อความ SMS
- Passkeys แทนที่น่าสนใจของ WebAuthn ที่ใช้แทนวิธีการแบบ "รหัสผ่าน + ปัจจัยที่สอง" ที่หลายคนต้องทน ในบริบทนี้ passkeys คือกรณีการใช้งานเฉพาะภายในมาตรฐาน WebAuthn
ฉันสามารถใช้ passkey ข้ามอุปกรณ์ได้ไหม
ใช่ คุณสามารถใช้ Passkey บนอุปกรณ์หลายตัวได้สองวิธี:
- การซิงค์ผ่าน Password Managers: บริการจัดการรหัสผ่านยอดนิยม เช่น iCloud Keychain, Google Password Manager, และ 1Password ช่วยให้คุณซิงค์ Passkeys ที่ถูกระบุเป็น "ข้ามแพลตฟอร์ม" ในการตอบกลับการลงทะเบียน เช่น แท็ก "ซิงค์" ของ GitHub สามารถใช้งานบนอุปกรณ์ต่าง ๆ ได้
- QRCode และ Bluetooth: วิธีการอื่นคือการใช้ QR codes และ Bluetooth สำหรับการลงชื่อเข้าใช้จากอุปกรณ์อื่น วิธีนี้ให้ความยืดหยุ่นในการเข้าถึงบัญชีของพวกเขาบนแพลตฟอร์มต่าง ๆ
มันสามารถเป็นวิธีการยืนยันตัวตนเพียงวิธีเดียวได้ไหม
อย่างแน่นอน WebAuthn เป็นปัจจัยการยืนยันตัวตนที่มีความปลอดภัยสูง Passkey ประกอบไปด้วย "user ID" และในระหว่างการยืนยันตัวตน เซิร์ฟเวอร์จะได้รับ "user ID" ที่ได้รับการยืนยันเป็นตัวระบุ "user ID" นี้อาจเป็น universally unique identifier (UUID) หรือระบุตัวตนที่ไม่ซ้ำอื่น ๆ เช่น อีเมล หมายเลขโทรศัพท์ หรือชื่อผู้ใช้ ผู้ใช้สามารถเลือกที่จะ ป้อน "user ID" ของตนก่อนแล้วค่อยค้นหา passkey ที่ถูกต้อง หรือเลือก passkey จากรายการที่เกี่ยวข้องกับโดเมนปัจจุบัน
ความเข้ากันได้ในวันนี้เป็นอย่างไร
WebAuthn สามารถใช้ในบริบทปลอดภัย (HTTPS) และได้รับการสนับสนุนในเบราว์เซอร์เวอร์ชันล่าสุดเกือบทั้งหมด สำหรับข้อมูลความเข้ากันได้เพิ่มเติม โปรดดูที่ MDN documentation
โดเมนเป็นตัวระบุที่สำคัญของ passkey
ในการดำเนินการ WebAuthn ไม่ว่าจะเป็นการลงทะเบียนหรือการยืนยันการใช้ "rp ID" (relying party ID) เป็นฟิลด์บังคับ ซึ่งแสดงชื่อโฮสต์โดเมนของหน้าเว็บปัจจุบัน หากไม่ตรงกับโดเมนปัจจุบัน เบราว์เซอร์จะปฏิเสธคำขอ นั่นหมายความว่า passkeys จะผูกอยู่กับโดเมนเฉพาะ และไม่มีวิธีการย้าย passkeys ที่มีอยู่ไปยังโดเมนอื่น นอกจากนี้ passkeys ไม่สามารถใช้งานข้ามโดเมนต่าง ๆ ได้ สำหรับรายละเอียดเพิ่มเติม โปรดดูที่ issue นี้
เปรียบเทียบกับแอพยืนยันตัวตน (TOTP)
เมื่อเปรียบเทียบ WebAuthn กับวิธีการยืนยันตัวตนสองขั้นแบบดั้งเดิม เช่น Time-based One-Time Passwords (TOTP) และแอพยืนยันตัวตน พบข้อดีหลายอย่าง WebAuthn มอบประสบการณ์การยืนยันตัวตนที่เป็นมิตรต่อผู้ใช้และปลอดภัยมากกว่า โดยไม่เหมือนกับ TOTP ที่ต้องใส่รหัสซึ่งเปลี่ยนไปเรื่อย ๆ ด้วยตนเอง หรือนักยืนยันตัวตนที่อาจถูกโจมตีได้หากอุปกรณ์ถูกขโมย WebAuthn พึ่งพาฮาร์ดแวร์ที่ปลอดภัยและไบโอเมตริกส์เพื่อการยืนยันตัวตนที่ไร้รอยต่อและแข็งแรง
อย่างไรก็ตาม สิ่งสำคัญที่ควรทราบคือ TOTP ยังมีข้อดีของตัวเอง เช่น การสำรองง่ายและการใช้ได้ข้ามอุปกรณ์ ทำให้มันเข้ากันได้กับเกือบทุกอุปกรณ์
สรุป
WebAuthn น่าตื่นเต้นอย่างไม่ต้องสงสัย แต่เหมือนกับเทคโนโลยีใหม่ ๆ ที่ลุ่มลึกเช่นนี้ การทำความเข้าใจอย่างถ้วนถี่ก่อนที่จะยอมรับมันมีความสำคัญ บทความนี้มุ่งหมายให้คุณมีความรู้ที่จำเป็นเพื่อทำการตัดสินใจอย่างสติสมใจเมื่อพิจารณาการรวม WebAuthn ในขณะที่คุณพิจารณาประโยชน์อย่างที่มีศักยภาพของมัน โปรดจำไว้ว่าการอยู่ในระหว่างกระแสข้อมูลคือกุญแจสู่ความสำเร็จ โอกาสที่เสลา Logto ฟีเจอร์ใหญ่ถัดไปของเราจะสนับสนุน WebAuthn มอบโอกาสที่มากยิ่งขึ้นสำหรับการยืนยันตัวตนที่ไร้รอยต่อและปลอดภัย