Przekieruj żądanie na adres /.well-known/change-password
na adres URL zmiany hasła.
Ustaw przekierowanie z /.well-known/change-password
na stronę zmiany hasła
Twojej witryny. Umożliwi to menedżerom haseł poruszanie się po kontach użytkowników
bezpośrednio na tę stronę.
Wprowadzenie
Jak pewnie wiesz, hasła nie są najlepszym sposobem zarządzania kont. Na szczęście pojawiają się nowe technologie, WebAuthn i techniki takie jak hasła jednorazowe, pomagają nam zbliżyć się do świata bez haseł. Jednak te technologie są wciąż wciąż rozwijane i nic szybko się nie zmieni. Wiele deweloperzy będą nadal musieli radzić sobie z hasłami lat. Czekając, aż nowe technologie i techniki staną się jest powszechna, możemy przynajmniej ułatwić korzystanie z haseł.
W tym celu warto zapewnić lepszą obsługę menedżerów haseł.
Na czym polega przydatność menedżera haseł
Menedżery haseł mogą być wbudowane w przeglądarki lub udostępniane jako aplikacje innych firm. Mogą pomagać użytkownikom na różne sposoby:
Autouzupełnianie hasła w prawidłowym polu do wprowadzania danych: niektóre przeglądarki mogą znaleźć że dane wejściowe są generowane heurystycznie, nawet jeśli witryna nie jest do tego zoptymalizowana. cel. Programiści stron internetowych mogą pomóc menedżerom haseł, poprawnie dodając adnotacje HTML do kodu HTML .
Zapobiegaj wyłudzaniu informacji: menedżery haseł pamiętają, gdzie zostało hasło. hasło może być automatycznie uzupełniane tylko pod odpowiednimi adresami URL, a nie witryn wyłudzających informacje.
Generuj silne i unikalne hasła: silne i unikalne hasła. generowane i przechowywane bezpośrednio przez menedżera haseł, użytkownicy nie muszą zapamiętaj tylko jeden znak hasła.
Generowanie i autouzupełnianie haseł za pomocą menedżera haseł z powodzeniem działają w sieci, ale biorąc pod uwagę cykl życia, aktualizując hasła , gdy jest wymagane, jest równie ważne jak generowanie i autouzupełnianie. Do Menedżera haseł dodają nową funkcję:
Wykrywanie luk w zabezpieczeniach i zalecanie ich aktualizacji: menedżery haseł mogą wykrywać ponownie używane hasła, analizować entropię i ich słabość oraz nawet wykrywać potencjalnie ujawnione hasła lub takie, które są znane jako niebezpieczne pochodzące z takich źródeł jak have I Been Pwned.
Menedżer haseł może ostrzegać użytkowników o problematycznych hasłach, ale jest ich za dużo. z prośbą o zmianę hasła na stronie głównej bezpośrednio przez proces zmiany hasła (który różni się w zależności od witryny). Byłoby dużo łatwiej, gdyby menedżerowie haseł mogli przejść bezpośrednio do adresu URL zmiany hasła. W tym miejscu a dobrze znany adres URL do zmiany hasła.
Rezerwując dobrze znaną ścieżkę adresu URL, która przekierowuje użytkownika do zmiany hasła, witryna może łatwo przekierowywać użytkowników do właściwego miejsca zmienić swoje hasła.
Skonfiguruj „dobrze znany adres URL do zmiany haseł”
.well-known/change-password
jest proponowanym dobrze znanym adresem URL do zmiany
hasła. Wystarczy, że
aby skonfigurować serwer tak, aby przekierowywał żądania do .well-known/change-password
do adresu URL
zmiany hasła w Twojej witrynie.
Załóżmy na przykład, że Twoja witryna to https://example.com
, a zmiana
URL hasła to https://example.com/settings/password
. Musisz tylko ustawić
na serwer, aby przekierowywał żądanie
https://example.com/.well-known/change-password
do
https://example.com/settings/password
To wszystko. W przypadku przekierowania użyj
kod stanu HTTP
302 Found
, 303 See
Other
lub 307
Temporary Redirect
.
Możesz też wyświetlać kod HTML pod adresem URL .well-known/change-password
za pomocą:
tagu <meta>
z tagiem
http-equiv="refresh"
.
<meta http-equiv="refresh" content="0;url=https://example.com/settings/password">
Otwórz kod HTML strony zmiany hasła
Ta funkcja ma sprawić, że cykl życia haseł użytkowników będzie bardziej płynny. Możesz zrobić 2 czynności, aby umożliwić użytkownikowi zaktualizowanie hasła bez konieczności: utrudnienia:
- Jeśli formularz zmiany hasła wymaga podania obecnego hasła, dodaj
autocomplete="current-password"
do tagu<input>
, aby ułatwić hasło i uzupełnij go automatycznie. - W przypadku nowego pola hasła (często są to dwa pola, dzięki którym
użytkownik wpisał nowe hasło prawidłowo), dodaj
autocomplete="new-password"
do tagu<input>
, aby ułatwić hasło zaproponowanie wygenerowanego hasła.
Więcej informacji znajdziesz w sekcji Korzystanie z formularza logowania .
Wykorzystanie w rzeczywistości
Przykłady
Dzięki przeglądarce Apple Safari
wdrożenie,
/.well-known/change-password
, jest już dostępny na
.
Wypróbuj je i zrób to samo ze swoim.
Zgodność z przeglądarką
Dobrze znany adres URL do zmiany haseł jest obsługiwany w Safari od 2019 r. Menedżer haseł Chrome zaczyna go obsługiwać od wersji 86 (która jest zaplanowana na publikację wersji stabilnej pod koniec października 2020 r.) i inne przeglądarki oparte na Chromium. W przeglądarce Firefox jeśli chodzi o wdrażanie, , ale nie poinformował, że zamierza to zrobić w sierpniu 2020 r.
Działanie menedżera haseł w Chrome
Zobaczmy, jak menedżer haseł Chrome traktuje hasła podatne na ataki.
Menedżer haseł Chrome może sprawdzać, czy jakieś hasła nie zostały ujawnione. Nawigacja
do about://settings/passwords
użytkowników może uruchomić Sprawdzanie haseł
haseł i wyświetlić listę haseł zalecanych do zaktualizowania.
![](https://web.developers.google.cn/static/articles/change-password-url/image/fb-check.png?authuser=6&hl=pl)
Klikając przycisk Zmień hasło obok hasła zalecanego do zostanie zaktualizowana, przeglądarka:
- Otwórz stronę zmiany hasła do witryny, jeśli
/.well-known/change-password
jest być poprawnie skonfigurowane. - Otwórz stronę główną witryny, jeśli usługa
/.well-known/change-password
nie została skonfigurowana a Google nie zna opcji zastępczej.
200 OK
, nawet jeśli /.well-known/change-password
nie istnieje?Menedżery haseł próbują określić, czy witryna obsługuje dobrze znany adres URL
zmień hasła, wysyłając prośbę do /.well-known/change-password
przed
faktyczne przekierowanie użytkownika na ten adres URL. Jeśli żądanie zwraca 404 Not Found
oczywiste jest, że adres URL jest niedostępny, ale odpowiedź 200 OK
nie
niekoniecznie oznacza, że URL jest dostępny, ponieważ występuje kilka skrajnych przypadków:
- Strona renderująca po stronie serwera wyświetla komunikat „Nie znaleziono” gdy nie ma treści
ale dzięki funkcji
200 OK
. - Witryna renderująca po stronie serwera odpowiada z użyciem parametru
200 OK
, gdy nie ma zapytania po przekierowaniu na stronę „Nie znaleziono” stronę. - Aplikacja składająca się z jednej strony odpowiada powłoce z parametrem
200 OK
i wyświetla błąd „Not” znaleziono” po stronie klienta, gdy nie ma treści.
W przypadku tych przypadków skrajnych użytkownicy są przekierowywani do folderu „Not Found” (nie znaleziono) stronę, dzięki czemu być źródłem nieporozumień.
Dlatego istnieje proponowany standard,
aby określić, czy serwer jest skonfigurowany do odpowiadania z użyciem 404 Not Found
gdy faktycznie nie ma żadnej treści, przez żądanie wyświetlenia losowej strony. Właściwie to
Adres URL jest również zarezerwowany:
/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200
Na przykład Chrome używa tej ścieżki adresu URL, by określić, czy może oczekiwać
prawidłowy adres URL do zmiany hasła z /.well-known/change-password
.
Podczas wdrażania /.well-known/change-password
upewnij się, że
Serwer zwraca 404 Not Found
w przypadku każdej nieistniejącej treści.
Prześlij opinię
Jeśli chcesz podzielić się opinią na temat specyfikacji, zgłoś problem zgodnie ze specyfikacją .
Zasoby
- Adres URL, pod którym można wprowadzić zmiany hasła,
- Wykrywanie niezawodności stanu HTTP kody
- Sprawdzone metody dotyczące formularza logowania
Zdjęcie: Matthew Brodeur, Unsplash