เปลี่ยนเส้นทางคำขอไปยัง /.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
จะเรียกใช้ตรวจสอบรหัสผ่านกับรหัสผ่านที่จัดเก็บไว้และดูรายการรหัสผ่านที่แนะนำสำหรับการอัปเดตได้
เมื่อคลิกปุ่มเปลี่ยนรหัสผ่านข้างรหัสผ่านที่แนะนำให้อัปเดต เบราว์เซอร์จะดำเนินการดังนี้
- เปิดหน้าเปลี่ยนรหัสผ่านของเว็บไซต์หากตั้งค่า
/.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
สำหรับเนื้อหาที่ไม่มีอยู่
ความคิดเห็น
หากมีความคิดเห็นเกี่ยวกับข้อกำหนด โปรดส่งปัญหาไปยังที่เก็บข้อมูลจำเพาะ
แหล่งข้อมูล
- URL ที่รู้จักกันดีสำหรับ การเปลี่ยนรหัสผ่าน
- การตรวจหาความน่าเชื่อถือของรหัสสถานะ HTTP
- แนวทางปฏิบัติแนะนำสำหรับแบบฟอร์มลงชื่อเข้าใช้
รูปภาพโดย Matthew Brodeur ใน Unsplash