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

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

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

บทนำ

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

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

ความช่วยเหลือของเครื่องมือจัดการรหัสผ่าน

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

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

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

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

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

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

เครื่องมือจัดการรหัสผ่านสามารถเตือนผู้ใช้เกี่ยวกับรหัสผ่านที่เกิดปัญหา แต่ ความยุ่งยากในการขอให้ผู้ใช้นำทางจากหน้าแรกไปยังการเปลี่ยนรหัสผ่าน เพิ่มเติม นอกเหนือไปจากการทำตามขั้นตอนจริงในการเปลี่ยนรหัสผ่าน (ซึ่ง แตกต่างกันไปในแต่ละไซต์) เครื่องมือจัดการรหัสผ่านจะง่ายขึ้นมาก ให้ผู้ใช้ไปยัง 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 พร้อมใช้งาน เนื่องจากมีกรณีพิเศษบางกรณี:

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

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

เราจึงต้องมีมาตรฐาน กลไก เพื่อพิจารณาว่ามีการกำหนดค่าเซิร์ฟเวอร์ให้ตอบสนองด้วย 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