/.well-known/change-password
adresine gelen isteği change-passwords URL'sine yönlendirme
/.well-known/change-password
adresinden web sitenizin şifre değiştirme sayfasına bir yönlendirme ayarlayın. Bu sayede şifre yöneticileri, kullanıcılarınızı doğrudan ilgili sayfaya yönlendirebilir.
Giriş
Bildiğiniz gibi şifreler, hesapları yönetmenin en iyi yolu değildir. Neyse ki WebAuthn gibi yeni teknolojiler ve şifre kullanmadığımız bir dünyaya yaklaşmamıza yardımcı olan tek kullanımlık şifreler gibi teknikler var. Ancak bu teknolojiler hâlâ geliştiriliyor ve her şey hızla değişmeyecek. Birçok geliştiricinin en az önümüzdeki birkaç yıl boyunca şifrelerle ilgilenmeye devam etmesi gerekecek. Yeni çıkan teknolojilerin ve tekniklerin yaygınlaşmasını beklerken en azından şifrelerin kullanımını kolaylaştırabiliriz.
Bunu yapmanın iyi bir yolu, şifre yöneticilerine daha iyi destek sunmaktır.
Şifre yöneticilerinin avantajları
Şifre yöneticileri, tarayıcılara yerleştirilmiş veya üçüncü taraf uygulamaları olarak sağlanabilir. Kullanıcılara çeşitli şekillerde yardımcı olabilirler:
Doğru giriş alanı için şifreyi otomatik doldurma: Bazı tarayıcılar, web sitesi bu amaç için optimize edilmemiş olsa bile doğru girişi sezgisel olarak bulabilir. Web geliştiricileri, HTML giriş etiketlerini doğru bir şekilde ekleyerek şifre yöneticilerine yardımcı olabilir.
Kimlik avını önleme: Şifre yöneticileri, şifrenin kaydedildiği yeri hatırladığından şifre, kimlik avı web sitelerinde değil yalnızca uygun URL'lerde otomatik olarak doldurulabilir.
Güçlü ve benzersiz şifreler oluşturun: Güçlü ve benzersiz şifreler doğrudan şifre yöneticisi tarafından oluşturulup depolandığından, kullanıcıların şifrenin tek bir karakterini hatırlaması gerekmez.
Şifre yöneticisi kullanarak şifre oluşturma ve otomatik doldurma, web'de çok faydalı bir özelliktir. Ancak şifrelerin yaşam döngüsü göz önüne alındığında, gerektiğinde şifreleri güncellemek, oluşturma ve otomatik doldurma kadar önemlidir. Bu avantajdan yararlanmak için şifre yöneticileri yeni bir özellik ekliyor:
Zayıf şifreleri tespit etme ve güncellemelerini önerme: Şifre yöneticileri, yeniden kullanılan şifreleri tespit edebilir, şifrelerin entropisi ve zayıflıklarını analiz edebilir ve hatta Have I Been Pwned gibi kaynaklardan sızmış olabilecek şifreleri veya güvenli olmadığı bilinen şifreleri tespit edebilir.
Şifre yöneticileri, kullanıcıları sorunlu şifreler konusunda uyarabilir ancak kullanıcılardan ana sayfadan şifre değiştirme sayfasına gitmelerini istemenin yanı sıra şifre değiştirme işlemini (siteden siteye değişiklik gösterir) gerçekleştirmelerinin istenmesi, kullanıcıların canını sıkar. Şifre yöneticileri kullanıcıyı doğrudan şifre değiştirme URL'sine yönlendirebilseydi çok daha kolay olurdu. Bu noktada şifre değiştirmek için bilinen bir URL kullanışlı olur.
Web sitesi, kullanıcıyı şifre değiştirme sayfasına yönlendiren iyi bilinen bir URL yolunu ayırarak kullanıcıları şifrelerini değiştirmeleri için kolayca doğru yere yönlendirebilir.
"Şifre değiştirmek için iyi bilinen bir URL" ayarlayın
.well-known/change-password
, şifre değiştirmek için bilinen bir URL olarak önerilmektedir. Tek yapmanız gereken, sunucunuzu .well-known/change-password
isteklerini web sitenizin şifre değiştirme URL'sine yönlendirecek şekilde yapılandırmaktır.
Örneğin, web sitenizin https://example.com
ve şifre değiştirme URL'sinin https://example.com/settings/password
olduğunu varsayalım. Sunucunuzu, https://example.com/.well-known/change-password
için gelen istekleri https://example.com/settings/password
adresine yönlendirecek şekilde ayarlamanız yeterlidir. Bu kadar basit. Yönlendirme için 302 Found
, 303 See
Other
veya 307
Temporary Redirect
HTTP durum kodunu kullanın.
Alternatif olarak, http-equiv="refresh"
kullanarak .well-known/change-password
URL'nizde <meta>
etiketiyle HTML yayınlayabilirsiniz.
<meta http-equiv="refresh" content="0;url=https://example.com/settings/password">
Şifre değiştirme sayfanızın HTML'sini tekrar ziyaret edin
Bu özelliğin amacı, kullanıcının şifre yaşam döngüsünün daha akıcı olmasını sağlamaktır. Kullanıcının şifresini sorunsuz bir şekilde güncellemesini sağlamak için iki şey yapabilirsiniz:
- Şifre değiştirme formunuzda geçerli şifrenin girilmesi gerekiyorsa şifre yöneticisinin bilgileri otomatik olarak doldurmasına yardımcı olmak için
<input>
etiketineautocomplete="current-password"
kodunu ekleyin. - Şifre yöneticisinin oluşturulmuş bir şifre önermesine yardımcı olmak için yeni şifre alanı için (çoğu durumda, kullanıcının yeni şifreyi doğru girdiğinden emin olmak amacıyla kullanılan iki alan)
<input>
etiketineautocomplete="new-password"
ekleyin.
Oturum açma formu en iyi uygulamaları sayfasından daha fazla bilgi edinin.
Gerçek dünyada nasıl kullanılır?
Örnekler
Apple Safari'nin uygulaması sayesinde /.well-known/change-password
, bazı büyük web sitelerinde bir süredir kullanılabiliyor:
Bunları kendiniz deneyip kendi videolarınızda da aynısını yapın.
Tarayıcı uyumluluğu
Şifre değiştirmek için kullanılan bilinen bir URL, 2019'dan beri Safari'de destekleniyor. Chrome'un şifre yöneticisi, 86 sürümünden itibaren (Ekim 2020'nin sonlarında kararlı sürüm olarak yayınlanması planlanmaktadır) bu özelliği desteklemeye başlıyor. Chromium tabanlı diğer tarayıcılar da bu özelliği destekleyebilir. Firefox, bunu uygulamaya değeceğini düşünmüş ancak Ağustos 2020'den itibaren bunu yapmayı planladığını bildirmemiştir.
Chrome'un şifre yöneticisi davranışı
Chrome'un şifre yöneticisinin, güvenlik açığı bulunan şifreleri nasıl ele aldığına göz atalım.
Chrome'un şifre yöneticisi şifre sızıntılarını kontrol edebilir. about://settings/passwords
adresine giderek kullanıcılar, Şifreleri kontrol et komutunu saklanan şifrelere göre çalıştırabilir ve güncellenmesi önerilen şifrelerin listesini görebilir.
Güncellenmesinin önerildiği bir şifrenin yanındaki Şifreyi değiştir düğmesini tıkladığınızda tarayıcı:
/.well-known/change-password
doğru şekilde ayarlandıysa web sitesinin şifre değiştirme sayfasını açın./.well-known/change-password
ayarlanmamışsa ve Google yedek URL'yi bilmiyorsa web sitesinin ana sayfasını açın.
/.well-known/change-password
mevcut olmasa bile sunucu 200 OK
döndürürse ne olur?Şifre yöneticileri, kullanıcıyı bu URL'ye yönlendirmeden önce /.well-known/change-password
adresine istek göndererek bir web sitesinin şifre değiştirmek için bilinen bir URL'yi destekleyip desteklemediğini belirlemeye çalışır. İstek 404 Not Found
döndürürse, URL'nin kullanılabilir olmadığı açıktır ancak 200 OK
yanıtı, URL'nin kullanılabildiği anlamına gelmez. Bunun nedeni, birkaç uç durumun söz konusu olmasıdır:
- Sunucu tarafı oluşturma web sitesi,
200 OK
içeren bir içerik olmadığında "Bulunamadı" mesajını gösterir. - Sunucu tarafı oluşturma özelliğine sahip bir web sitesi, "Bulunamadı" sayfasına yönlendirildikten sonra içerik olmadığında
200 OK
ile yanıt verir. - Tek sayfalık bir uygulama, kabuk ile
200 OK
ile yanıt verir ve içerik olmadığında, istemci tarafında "Bulunamadı" sayfasını oluşturur.
Bu uç durumlar için kullanıcılar bir "Bulunamadı" sayfasına yönlendirilir ve bu durum karışıklığa yol açar.
Bu nedenle, sunucunun gerçekten içerik olmadığında 404 Not Found
ile yanıt verecek şekilde yapılandırılıp yapılandırılmadığını belirlemek için rastgele bir sayfa isteyerek önerilen standart bir mekanizma vardır. Aslında URL de ayrılmıştır:
/.well-known/resource-that-should-not-exist-whose-status-code-should-not-be-200
.
Örneğin Chrome, önceden /.well-known/change-password
kullanan bir şifre değişikliği URL'sinin doğru şekilde değiştirilip beklenmeyeceğini belirlemek için bu URL yolunu kullanır.
/.well-known/change-password
'ü dağıtırken sunucunuzun, var olmayan içerikler için 404 Not Found
döndürdüğünden emin olun.
Geri bildirim
Spesifikasyonla ilgili geri bildiriminiz varsa lütfen spesifikasyon deposunda sorun bildirin.
Kaynaklar
- Şifre Değiştirmeye Yönelik İyi Bilinen bir URL
- HTTP durum kodlarının güvenilirliğini algılama
- Giriş formu ile ilgili en iyi uygulamalar
Fotoğraf: Matthew Brodeur, Unsplash