Home Arrow Icon Knowledge base Arrow Icon Global Arrow Icon ฉันสามารถใช้ Authy แทน Google Authenticator ใน Laravel Fortify


ฉันสามารถใช้ Authy แทน Google Authenticator ใน Laravel Fortify


Laravel Fortify เป็นแพ็คเกจการตรวจสอบความถูกต้องแบ็กเอนด์สำหรับ Laravel ที่รองรับการตรวจสอบความถูกต้องแบบสองปัจจัย (2FA) ผ่านรหัสผ่านครั้งเดียวตามเวลา (TOTP) มันมีความยืดหยุ่นและไม่เชื่อเรื่องพระเจ้าสำหรับผู้ใช้แอปพลิเคชันไคลเอนต์ TOTP ซึ่งหมายความว่ามันไม่ได้ผูกคุณไว้กับ Google Authenticator โดยเฉพาะและสามารถทำงานกับแอพ Authentication ที่ใช้ TOTP ได้รวมถึง Authy

สิ่งที่ Laravel Fortify ทำสำหรับ 2FA

Laravel Fortify จัดเตรียมตรรกะแบ็กเอนด์เพื่อสร้างปุ่มลับ 2FA เก็บไว้อย่างปลอดภัยสร้างรหัสการกู้คืนและตรวจสอบโทเค็น TOTP ระหว่างการเข้าสู่ระบบ มันใช้คีย์ลับสองปัจจัยของผู้ใช้เพื่อตรวจสอบรหัสผ่านครั้งเดียวที่สร้างขึ้นโดยแอพ Authenticator ใด ๆ ที่รองรับอัลกอริทึม TOTP มาตรฐาน (RFC 6238) Fortify ตัวเองไม่ได้สั่งหรือ จำกัด แอพมือถือหรือเดสก์ท็อปที่ผู้ใช้ต้องใช้

การใช้ Authy แทน Google Authenticator

Authy และ Google Authenticator เป็นทั้งแอพ Authenticator ที่ใช้ TOTP ทั้งสองสร้างรหัส 6 หลักทุก 30 วินาทีตามคีย์ลับที่ใช้ร่วมกันระหว่างการตั้งค่า (โดยทั่วไปโดยการสแกนรหัส QR) Laravel Fortify ทำงานได้อย่างราบรื่นกับแอปไคลเอนต์ใด ๆ ที่รองรับมาตรฐานนี้ ดังนั้นคุณสามารถใช้ Authy แทน Google Authenticator กับ Laravel Fortify

ประเด็นสำคัญเกี่ยวกับ Authy และ Google Authenticator ในบริบทนี้:

- ความเข้ากันได้: Authy ใช้มาตรฐาน TOTP เดียวกันกับ Google Authenticator ดังนั้นการตั้งค่า 2FA ใด ๆ ใน Laravel Fortify จะทำงานกับแอพทั้งสองโดยไม่ต้องเปลี่ยนแบ็กเอนด์ Laravel ของคุณ

-ประสบการณ์ของผู้ใช้: Authy มีข้อได้เปรียบบางประการมากกว่า Google Authenticator เช่นโทเค็นการซิงค์ข้ามอุปกรณ์ (การสนับสนุนแบบมัลติอุปกรณ์) การสำรองข้อมูลคลาวด์ที่เข้ารหัสและแอพเดสก์ท็อป (ในอดีตปัจจุบันเป็นศูนย์กลางมือถือ) ซึ่งสามารถสร้างประสบการณ์การใช้งานที่ดีขึ้น

- ความปลอดภัย: Authy มีตัวเลือกสำหรับการป้องกัน PIN และความปลอดภัยทางชีวภาพบนแอพและการสำรองข้อมูลที่เข้ารหัสในขณะที่ Google Authenticator ขาดการสำรองข้อมูลคลาวด์ที่เข้ารหัสและการซิงค์แบบหลายอุปกรณ์ ฟีเจอร์เหล่านี้อาจทำให้การตรวจสอบเป็นมิตรกับผู้ใช้มากขึ้นและยืดหยุ่นต่อการสูญเสียอุปกรณ์จากมุมมองของผู้ใช้

- การตั้งค่าใน Laravel Fortify: การเปลี่ยนแปลงเพียงอย่างเดียวในการใช้งาน Laravel Fortify ของคุณคือการให้รหัส QR หรือคีย์ลับแก่ผู้ใช้สำหรับการสแกนใน Authy แทน Google Authenticator เนื่องจากแอพทั้งสองอ่านรูปแบบเดียวกันรหัส QR Fortify สร้างผลงานนอกกรอบด้วยแอพทั้งสอง

ข้อควรพิจารณาในการใช้งาน

1. การแสดงรหัส QR Frontend: เมื่อเปิดใช้งาน 2FA Fortify มักจะสร้างรหัส QR ตามคีย์ลับ รหัส QR นี้สามารถสแกนได้โดยแอพ Authy หรือ Google Authenticator ส่วนหน้าของคุณเพียงแค่ต้องแสดงรหัส QR นี้และผู้ใช้สามารถเลือกแอพที่ต้องการได้ ไม่จำเป็นต้องมีการเปลี่ยนแปลงรหัสแบ็กเอนด์

2. ขั้นตอนการยืนยัน: บางครั้งปัญหาหนึ่งที่พบกับ Laravel Fortify คือการเปิดใช้งาน 2FA โดยไม่ต้องยืนยันรหัสที่ป้อนอาจล็อคผู้ใช้หากพวกเขายังไม่เสร็จสิ้นการตั้งค่าอย่างถูกต้อง การใช้ขั้นตอนการยืนยันที่ผู้ใช้ป้อนรหัสที่สร้างโดย Authy (หรือ Google Authenticator) หลังจากการสแกนรหัส QR เป็นแนวปฏิบัติที่ดีที่สุด สิ่งนี้ใช้โดยไม่คำนึงถึงแอพการตรวจสอบความถูกต้องที่ใช้

3. รหัสการกู้คืน: Fortify ให้รหัสการกู้คืนสำหรับ 2FA บายพาสหากผู้ใช้สูญเสียการเข้าถึงแอพ Authenticator รหัสเหล่านี้ทำงานได้อย่างอิสระจากการเลือกแอพ (Authy หรือ Google Authenticator)

สรุปความแตกต่างจากมุมมองของผู้ใช้

- ข้อดีของ Authy: **
- การสนับสนุนแบบหลายอุปกรณ์และการซิงค์อัตโนมัติของโทเค็น 2FA
- การสำรองข้อมูลคลาวด์ที่เข้ารหัสเพื่อหลีกเลี่ยงการสูญเสียโทเค็นในการสูญเสียอุปกรณ์
- PIN เสริมและความปลอดภัยทางชีวภาพสำหรับแอพ
- รองรับแอพเดสก์ท็อปและเบราว์เซอร์ (แม้ว่าแอพเดสก์ท็อปบางตัวจะถูกยกเลิกตั้งแต่ต้นปี 2567)
- การรับรองความถูกต้องตามพุช (แม้ว่าจะไม่ใช่ TOTP มาตรฐาน แต่เกี่ยวข้องกับการใช้งานอื่น ๆ มากขึ้น)

- ข้อดีของ Google Authenticator: **
- เป็นที่รู้จักและสนับสนุนโดยบริการมากมาย
- แอพที่ง่ายกว่าโครงสร้างพื้นฐานการสำรองที่ซับซ้อนน้อยกว่า (ไม่มีบัญชีไม่มีการสำรองข้อมูล)
- ออฟไลน์ทั้งหมดหลังจากการตั้งค่าเริ่มต้น (ไม่มีการสำรองข้อมูลคลาวด์)

จากมุมมองการรวม Laravel Fortify ความแตกต่างเหล่านี้ไม่มีผลใด ๆ เนื่องจากรหัส TOTP จากแอพทั้งสองได้รับการตรวจสอบในลักษณะเดียวกันโดย Fortify

บันทึกเพิ่มเติมเกี่ยวกับการใช้งานป้อมปราการ

Laravel Fortify ไม่ได้ให้มุมมองส่วนหน้าหรือ UI; ให้บริการแบ็กเอนด์สำหรับการตรวจสอบสิทธิ์ นักพัฒนาหลายคนใช้ Fortify กับ Laravel Jetstream หรือชุด UI อื่น ๆ โดยไม่คำนึงถึง UI กุญแจสำคัญคือ Fortify สร้างรหัส 2FA Secret และตรวจสอบรหัสออกจากการเลือกแอพ Authenticator ให้กับผู้ใช้

หากจำเป็นต้องมีการปรับแต่งเพื่อปรับปรุง UX หรือจัดการการกู้คืนบัญชีได้ดีขึ้น (การเพิ่มธง "two_factor_confirmed" การปรับแต่งมุมมอง ฯลฯ ) สามารถนำไปใช้ในเลเยอร์ Fortify แต่เป็นอิสระจากตัวเลือกระหว่าง Authy และ Google Authenticator

บทสรุป

ใช่คุณสามารถใช้ Authy แทน Google Authenticator ใน Laravel Fortify โดยไม่ต้องเปลี่ยนแปลงการใช้งานแบ็กเอนด์ 2FA ของคุณ แอพทั้งสองใช้มาตรฐาน TOTP เดียวกันที่รองรับอย่างเต็มที่โดย Fortify การเลือก Authy สามารถเสนอคุณสมบัติการใช้งานและการสำรองข้อมูลที่เพิ่มขึ้นสำหรับผู้ใช้ของคุณโดยเฉพาะอย่างยิ่งในสถานการณ์ของการสูญเสียอุปกรณ์หรือการเข้าถึงหลายอุปกรณ์ แต่จากมุมมองของนักพัฒนา Laravel การรวมยังคงเหมือนเดิม ผู้ใช้เพียงสแกนรหัส QR ที่จัดทำโดย Fortify ด้วยแอพที่ต้องการเพื่อตั้งค่า 2FA

ความยืดหยุ่นนี้คือการออกแบบทำให้ Laravel Fortify ทำงานร่วมกับแอพใด ๆ ที่สร้างรหัส TOTP มาตรฐานรวมถึง แต่ไม่ จำกัด เฉพาะ Google Authenticator, Authy, Microsoft Authenticator และอื่น ๆ