新增可變更密碼的知名網址,協助使用者輕鬆變更密碼

將要求重新導向至 /.well-known/change-password 到變更密碼網址

設定從 /.well-known/change-password 重新導向到變更密碼頁面 這會啟用密碼管理工具,以便瀏覽使用者 直接前往該頁面

簡介

如您所知,密碼不是有效管理 帳戶。 幸好,有些新興技術包括 WebAuthn 和技術,例如 協助我們走向更遠的世界,無需密碼。不過, 技術仍在開發中,不會迅速改變。多個 開發人員至少在接下來幾個月內 還是需要處理密碼 近幾年也在眾多 年度業界獎項和報告中履獲認可等待新興技術和技術發展 可讓密碼更易於使用。

建議您為密碼管理工具提供更良好的支援,

密碼管理工具說明

密碼管理工具可內建於瀏覽器,或以第三方應用程式的形式提供。 為使用者帶來的好處包括:

在正確的輸入欄位中自動填入密碼:部分瀏覽器可以 這麼一來,即使網站未針對這方面進行最佳化,依然可以解讀正確的輸入內容 發展路徑可能包括 縮小技術提議用途的範圍網頁程式開發人員可以正確為 HTML 加上註解,協助密碼管理員 輸入標記

防範網路詐騙:因為密碼管理工具會記住密碼存放位置 密碼時,只能於適當網址自動填入密碼;不包含在 詐騙網站。

產生不重複的高強度密碼:因為高強度且不重複的密碼 是由密碼管理工具直接產生及儲存,使用者不必 記住密碼的單一字元

已使用密碼管理工具產生及自動填入密碼 為使用者提供良好網路體驗,但考量使用者生命週期,更新密碼 都跟產生和自動填入一樣重要。目的地: 妥善運用這項優勢,密碼管理工具也增添了一項新功能:

偵測高強度密碼並建議更新密碼:密碼管理工具可以 偵測重複使用的密碼、分析密碼的熵和弱點,以及 甚至偵測可能外洩的密碼或已知不安全的密碼 ,例如 「Be Been Pwned」等來源。

密碼管理工具可向使用者警告有問題的密碼, 讓使用者從首頁前往變更密碼 並完成實際變更密碼的程序 (這個程序會有什麼影響) 會因網站而異)。如果密碼管理工具 直接前往使用者變更密碼的網址這正是 a 需要變更的已知網址 密碼

透過保留已知網址路徑,將使用者重新導向至變更 密碼網頁後,網站就可以輕鬆將使用者重新導向到正確的位置 變更密碼

設定「變更密碼的已知網址」

要求「.well-known/change-password」做為可供變更的知名網址 密碼。你只需 設定您的伺服器,重新導向 .well-known/change-password 的要求 網站的變更密碼網址

假設您的網站是 https://example.com,而變更 密碼網址為 https://example.com/settings/password。您只需要設定 必須重新導向 https://example.com/.well-known/change-passwordhttps://example.com/settings/password。就是這麼簡單!如果是重新導向,請使用 HTTP 狀態碼 302 Found303 See Other307 Temporary Redirect

您也可以在 .well-known/change-password 網址上使用 設定 <meta> 標記 http-equiv="refresh"

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

再次前往變更密碼頁面的 HTML

這項功能的目的是協助使用者的密碼生命週期更順暢。 您可以執行兩項操作,讓使用者自行更新密碼。 阻礙:

  • 如果變更密碼表單需要目前的密碼,請新增 將 autocomplete="current-password" 傳送至 <input> 標記,以便協助密碼 由管理員自動填入。
  • 新密碼欄位 (在多數情況下提供兩個欄位,可確保 使用者已正確輸入新密碼),然後新增 將 autocomplete="new-password" 傳送至 <input> 標記,以便協助密碼 經理會提供系統產生的密碼建議。

進一步瞭解登入表單的最佳原因 做法

資料在真實世界中的運用方式

範例

感謝 Apple Safari 實作/.well-known/change-password,已可用於某些主要頻道 一段時間:

歡迎你親自試用,並依自己的需求採取相同做法!

瀏覽器相容性

自從起,Safari 已支援可變更密碼的已知網址。 2019 年。 Chrome 的密碼管理工具將自 86 以上版本開始支援 (預計於 2020 年 10 月底推出穩定版) 和其他以 Chromium 為基礎的瀏覽器可能會追蹤Firefox 認為值得一試 實作 但還不確定預計在 2020 年 8 月實施。

Chrome 的密碼管理工具行為

以下介紹 Chrome 密碼管理員如何處理高強度密碼。

Chrome 的密碼管理工具可檢查是否有密碼外洩。瀏覽網路 給 about://settings/passwords 使用者可以執行檢查密碼,藉此檢查已儲存的密碼 密碼,並且看到一份建議更新的密碼清單。

Chrome 的檢查密碼功能

在系統建議的密碼旁按一下「變更密碼」按鈕, 更新後,瀏覽器就會:

  • 如果 /.well-known/change-password 是,請開啟網站的變更密碼頁面 才能正確設定
  • 如果未設定 /.well-known/change-password,請開啟網站首頁 而 Google 又不知道這種備用行為
如果伺服器傳回 200 OK,即使 /.well-known/change-password 不存在呢?

密碼管理工具會試著判斷網站是否支援知名網址 傳送要求給「/.well-known/change-password」,變更密碼。 實際上會將使用者導向至這個網址如果要求傳回 404 Not Found 很可能會明顯知道網址無法使用,但 200 OK 回應則不會 表示網址是否可供使用,因為在以下情況中:

  • 伺服器端轉譯網站顯示「找不到」沒有內容時 但使用 200 OK
  • 在沒有網路的情況下,伺服器端轉譯網站會以 200 OK 回應 導向「找不到網頁」後的內容頁面。
  • 單頁應用程式使用 200 OK 回應殼層,並轉譯「Not」 找到」沒有內容時顯示。

針對這些極端情況,系統會將使用者導向至「找不到」網頁 造成混淆

這就是為什麼設計標準 機制 判斷伺服器是否設為以 404 Not Found 回應 假借網頁,以請求隨機網頁。其實 我也保留了以下 URL: /.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200。 例如,Chrome 會使用這個網址路徑,判斷網址是否預期 預先從 /.well-known/change-password 取得正確的密碼變更網址。

部署 /.well-known/change-password 時,請確定 伺服器針對任何不存在的內容傳回 404 Not Found

意見回饋

如果你對規格有任何意見,請將問題回報為規格 存放區

資源

相片來源:Matthew Brodeur,來源為 Unsplash