將要求重新導向至 /.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-password
到
https://example.com/settings/password
。就是這麼簡單!如果是重新導向,請使用
HTTP 狀態碼
302 Found
、303 See
Other
或 307
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
使用者可以執行檢查密碼,藉此檢查已儲存的密碼
密碼,並且看到一份建議更新的密碼清單。
![](https://web.dev/static/articles/change-password-url/image/fb-check.png?authuser=19&hl=zh-tw)
在系統建議的密碼旁按一下「變更密碼」按鈕, 更新後,瀏覽器就會:
- 如果
/.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