Şifre değiştirme işleminde iyi bilinen bir URL ekleyerek kullanıcıların şifre değiştirmelerine yardımcı olun

/.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> etiketine autocomplete="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> etiketine autocomplete="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.

Chrome'un Şifreleri kontrol et işlevi

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

Fotoğraf: Matthew Brodeur, Unsplash