ช่วยให้ผู้ใช้เปลี่ยนรหัสผ่านได้ง่ายๆ ด้วยการเพิ่ม URL ที่เป็นที่รู้จักสำหรับการเปลี่ยนรหัสผ่าน

เปลี่ยนเส้นทางคำขอไปยัง /.well-known/change-password ไปยัง URL สำหรับการเปลี่ยนรหัสผ่าน

ตั้งค่าการเปลี่ยนเส้นทางจาก /.well-known/change-password ไปยังหน้าเปลี่ยนรหัสผ่านของเว็บไซต์ วิธีนี้จะทำให้เครื่องมือจัดการรหัสผ่านไปยังส่วนต่างๆ ของผู้ใช้ไปยังหน้านั้นได้โดยตรง

เกริ่นนำ

ดังที่คุณทราบ รหัสผ่านไม่ใช่วิธีที่ดีที่สุดในการจัดการบัญชี โชคดีที่มีเทคโนโลยีใหม่ๆ อย่าง WebAuthn และเทคนิคอย่างเช่น รหัสผ่านที่สามารถใช้งานได้เพียงครั้งเดียว ที่ช่วยให้เราเข้าใกล้โลกความเป็นจริงได้โดยไม่ต้องมีรหัสผ่าน อย่างไรก็ตาม เทคโนโลยีเหล่านี้ยังอยู่ระหว่างการพัฒนาและสิ่งต่างๆ จะไม่เปลี่ยนแปลงอย่างรวดเร็ว นักพัฒนาซอฟต์แวร์จำนวนมากยังคงต้องจัดการกับรหัสผ่านเป็นเวลาอย่างน้อย 2-3 ปีข้างหน้า ในขณะที่เรารอให้เทคโนโลยีและเทคนิคใหม่ๆ กลายเป็นผลิตภัณฑ์ ทั่วไป อย่างน้อยเราก็สามารถทำให้รหัสผ่านใช้ได้ง่ายขึ้น

วิธีที่ดีคือให้การสนับสนุนเครื่องมือจัดการรหัสผ่านได้ดียิ่งขึ้น

ประโยชน์ของเครื่องมือจัดการรหัสผ่าน

เครื่องมือจัดการรหัสผ่านสามารถสร้างไว้ในเบราว์เซอร์หรือเป็นแอปของบุคคลที่สามก็ได้ โดยให้ความช่วยเหลือผู้ใช้ได้หลายวิธีดังนี้

ป้อนรหัสผ่านอัตโนมัติเพื่อให้ช่องป้อนข้อมูลที่ถูกต้อง: บางเบราว์เซอร์จะค้นพบการป้อนข้อมูลที่ถูกต้องได้แม้ว่าเว็บไซต์จะไม่ได้รับการเพิ่มประสิทธิภาพเพื่อวัตถุประสงค์นี้ก็ตาม นักพัฒนาเว็บช่วยเครื่องมือจัดการรหัสผ่านได้โดยใส่คำอธิบายประกอบแท็กอินพุต HTML อย่างถูกต้อง

ป้องกันฟิชชิง: เนื่องจากเครื่องมือจัดการรหัสผ่านจะจดจำตำแหน่งที่บันทึกรหัสผ่านไว้ ระบบจึงจะป้อนรหัสผ่านอัตโนมัติได้เฉพาะใน URL ที่เหมาะสมเท่านั้น แต่จะป้อนในเว็บไซต์ฟิชชิงไม่ได้

สร้างรหัสผ่านที่รัดกุมและไม่ซ้ำกัน: เนื่องจากเครื่องมือจัดการรหัสผ่านจะสร้างและจัดเก็บรหัสผ่านที่รัดกุมและไม่ซ้ำกันโดยตรง ผู้ใช้จึงไม่ต้องจำรหัสผ่านดังกล่าวเลย

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

ตรวจหารหัสผ่านที่มีความเสี่ยงและแนะนำให้อัปเดต: เครื่องมือจัดการรหัสผ่านสามารถตรวจจับรหัสผ่านที่ใช้ซ้ำ วิเคราะห์เอนโทรปีและจุดอ่อนของรหัสผ่านเหล่านั้น หรือแม้แต่ตรวจจับรหัสผ่านที่อาจรั่วไหลหรือรหัสผ่านที่ทราบว่าไม่ปลอดภัยจากแหล่งที่มาต่างๆ เช่น ฉันเคยถูกจำนำ

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

เมื่อจองเส้นทาง URL ที่รู้จักกันดีซึ่งเปลี่ยนเส้นทางผู้ใช้ไปยังหน้าเปลี่ยนรหัสผ่าน เว็บไซต์จะเปลี่ยนเส้นทางผู้ใช้ไปยังตำแหน่งที่ถูกต้องเพื่อเปลี่ยนรหัสผ่านได้อย่างง่ายดาย

ตั้งค่า "URL ที่รู้จักสำหรับการเปลี่ยนรหัสผ่าน"

.well-known/change-password ได้รับการเสนอให้เป็น URL ที่รู้จักกันดีสำหรับเปลี่ยนรหัสผ่าน ที่คุณต้องทำก็คือกำหนดค่าเซิร์ฟเวอร์ให้เปลี่ยนเส้นทางคำขอสำหรับ .well-known/change-password ไปยัง URL เปลี่ยนรหัสผ่านของเว็บไซต์

ตัวอย่างเช่น สมมติว่าเว็บไซต์ของคุณคือ https://example.com และ URL สำหรับเปลี่ยนรหัสผ่านคือ https://example.com/settings/password คุณต้องตั้งค่าเซิร์ฟเวอร์ให้เปลี่ยนเส้นทางคำขอสำหรับ https://example.com/.well-known/change-password ไปยัง https://example.com/settings/password เท่านี้เอง สําหรับการเปลี่ยนเส้นทาง ให้ใช้รหัสสถานะ HTTP 302 Found, 303 See Other หรือ 307 Temporary Redirect

หรือจะแสดง HTML ที่ URL ของ .well-known/change-password ด้วยแท็ก <meta> โดยใช้ http-equiv="refresh" ก็ได้

<meta http-equiv="refresh" content="0;url=https://example.com/settings/password">

กลับไปดู HTML หน้าเปลี่ยนรหัสผ่าน

เป้าหมายของฟีเจอร์นี้คือการช่วยให้วงจรรหัสผ่านของผู้ใช้ราบรื่นยิ่งขึ้น คุณสามารถทำ 2 สิ่งต่อไปนี้เพื่อให้ผู้ใช้อัปเดตรหัสผ่านได้โดยไม่ติดขัด

  • หากแบบฟอร์มเปลี่ยนรหัสผ่านต้องใช้รหัสผ่านปัจจุบัน ให้เพิ่ม autocomplete="current-password" ลงในแท็ก <input> เพื่อช่วยให้เครื่องมือจัดการรหัสผ่านกรอกรหัสผ่านให้โดยอัตโนมัติ
  • สำหรับช่องรหัสผ่านใหม่ (โดยส่วนใหญ่แล้วจะเป็น 2 ช่องเพื่อให้มั่นใจว่าผู้ใช้ได้ป้อนรหัสผ่านใหม่อย่างถูกต้อง) ให้เพิ่ม autocomplete="new-password" ในแท็ก <input> เพื่อช่วยให้เครื่องมือจัดการรหัสผ่านแนะนำรหัสผ่านที่สร้างขึ้น

ดูข้อมูลเพิ่มเติมได้ที่แนวทางปฏิบัติแนะนำ เกี่ยวกับแบบฟอร์มการลงชื่อเข้าใช้

วิธีนําไปใช้ในชีวิตจริง

ตัวอย่าง

ด้วยการใช้งานของ Apple Safari ทำให้ /.well-known/change-password มีให้บริการในเว็บไซต์สำคัญๆ มาระยะหนึ่งแล้ว

ลองด้วยตัวคุณเอง และทำแบบเดียวกันนี้กับตัวคุณเอง!

ความเข้ากันได้กับเบราว์เซอร์

URL ที่รู้จักกันดีสำหรับการเปลี่ยนรหัสผ่านได้รับการรองรับใน Safari ตั้งแต่ปี 2019 เครื่องมือจัดการรหัสผ่านของ Chrome กำลังเริ่มรองรับการใช้งานตั้งแต่เวอร์ชัน 86 เป็นต้นไป (ซึ่งมีกำหนดการเปิดตัวเวอร์ชันเสถียรช่วงปลายเดือนตุลาคม 2020) และเบราว์เซอร์อื่นๆ ที่ใช้ Chromium อาจมีการเปลี่ยนแปลงตามมา Firefox ถือว่าคุ้มค่าที่จะนำมาใช้งาน แต่ยังไม่ได้ส่งสัญญาณว่าจะใช้ตั้งแต่เดือนสิงหาคม 2020 เป็นต้นไป

การทำงานของเครื่องมือจัดการรหัสผ่านของ Chrome

มาดูวิธีที่เครื่องมือจัดการรหัสผ่านของ Chrome จัดการกับรหัสผ่านที่มีช่องโหว่กัน

เครื่องมือจัดการรหัสผ่านของ Chrome สามารถตรวจสอบรหัสผ่านที่รั่วไหลได้ การไปที่ผู้ใช้ about://settings/passwords จะเรียกใช้ตรวจสอบรหัสผ่านกับรหัสผ่านที่จัดเก็บไว้และดูรายการรหัสผ่านที่แนะนำสำหรับการอัปเดตได้

ฟังก์ชันตรวจสอบรหัสผ่านของ Chrome

เมื่อคลิกปุ่มเปลี่ยนรหัสผ่านข้างรหัสผ่านที่แนะนำให้อัปเดต เบราว์เซอร์จะดำเนินการดังนี้

  • เปิดหน้าเปลี่ยนรหัสผ่านของเว็บไซต์หากตั้งค่า /.well-known/change-password ไว้ถูกต้องแล้ว
  • เปิดหน้าแรกของเว็บไซต์หากไม่ได้ตั้งค่า /.well-known/change-password และ Google ไม่ทราบวิดีโอสำรอง
จะเกิดอะไรขึ้นหากเซิร์ฟเวอร์แสดงผล 200 OK แม้ว่าจะไม่มี /.well-known/change-password อยู่ก็ตาม

เครื่องมือจัดการรหัสผ่านจะพยายามพิจารณาว่าเว็บไซต์รองรับ URL ที่รู้จักกันดีสำหรับเปลี่ยนรหัสผ่านหรือไม่ โดยส่งคำขอไปยัง /.well-known/change-password ก่อนที่จะส่งผู้ใช้ไปยัง URL นี้จริงๆ หากคำขอแสดงผล 404 Not Found ก็เห็นได้ชัดว่า URL ไม่พร้อมใช้งาน แต่การตอบกลับ 200 OK ไม่ได้หมายความว่า URL นั้นพร้อมใช้งานเสมอไปเนื่องจากมีกรณีที่เป็นปัญหา 2-3 กรณีต่อไปนี้

  • เว็บไซต์ที่แสดงผลฝั่งเซิร์ฟเวอร์จะแสดงข้อความ "ไม่พบ" เมื่อไม่มีเนื้อหา แต่แสดงด้วย 200 OK
  • เว็บไซต์ที่แสดงผลฝั่งเซิร์ฟเวอร์ตอบสนองด้วย 200 OK เมื่อไม่มีเนื้อหาหลังจากเปลี่ยนเส้นทางไปยังหน้า "ไม่พบ" แล้ว
  • แอปหน้าเดียวตอบสนองด้วย Shell ด้วย 200 OK และแสดงหน้า "ไม่พบ" ในฝั่งไคลเอ็นต์เมื่อไม่มีเนื้อหา

สำหรับกรณีที่เป็นปัญหาที่สุดเหล่านี้ ระบบจะส่งต่อผู้ใช้ไปยังหน้า "ไม่พบ" ซึ่งอาจก่อให้เกิดความสับสน

เราจึงมีกลไกมาตรฐานที่เสนอเพื่อระบุว่าเซิร์ฟเวอร์ได้รับการกำหนดค่าให้ตอบกลับด้วย 404 Not Found หรือไม่ ทั้งที่ไม่มีเนื้อหาจริงๆ โดยขอหน้าแบบสุ่ม อันที่จริง URL ก็มีการจองไว้ด้วย: /.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200 เช่น Chrome จะใช้เส้นทาง URL นี้เพื่อระบุว่าจะคาดหวัง URL การเปลี่ยนรหัสผ่านที่เหมาะสมจาก /.well-known/change-password ล่วงหน้าได้หรือไม่

เมื่อทำให้ /.well-known/change-password ใช้งานได้ โปรดตรวจสอบว่าเซิร์ฟเวอร์ของคุณแสดงผล 404 Not Found สำหรับเนื้อหาที่ไม่มีอยู่

ความคิดเห็น

หากมีความคิดเห็นเกี่ยวกับข้อกำหนด โปรดส่งปัญหาไปยังที่เก็บข้อมูลจำเพาะ

แหล่งข้อมูล

รูปภาพโดย Matthew Brodeur ใน Unsplash