Ş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 yönlendirme ayarlayın. Bu sayede şifre yöneticileri, kullanıcılarınızı doğrudan ilgili sayfaya yönlendirebilir.

Giriş

Bildiğiniz gibi, hesapları yönetmenin en iyi yolu şifreler 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 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öneticileri için 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 bile hatırlaması gerekmez.

Şifre yöneticisi kullanarak şifre oluşturma ve otomatik doldurma, web'de oldukça 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 yolu ayırarak kullanıcıları şifrelerini değiştirmek için doğru yere kolayca 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 isteklerine 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 isteğini 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 mevcut şifre gerekiyorsa şifre yöneticisinin otomatik olarak doldurmasına yardımcı olmak için <input> etiketine autocomplete="current-password" ekleyin.
  • Yeni şifre alanı için (çoğu durumda, kullanıcının yeni şifreyi doğru girmesini sağlamak amacıyla iki alan bulunur) şifre yöneticisinin oluşturulmuş bir şifre önermesine yardımcı olmak üzere <input> etiketine autocomplete="new-password" ekleyin.

Giriş formu en iyi uygulamaları başlıklı makalede 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, bu özelliği uygulamanın faydalı olduğunu düşünüyor ancak Ağustos 2020 itibarıyla bu özelliği uygulamayı planladığını belirtmedi.

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, sızdırılmış şifreleri kontrol edebilir. about://settings/passwords bölümüne giderek kullanıcılar, depolanan şifreler için Şifreleri kontrol et'i ç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 değilken 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üyorsa URL'nin kullanılamadığını anlayabilirsiniz. Ancak 200 OK yanıtı, URL'nin kullanılabildiği anlamına gelmez. Bunun birkaç nedeni vardır:

  • Sunucu tarafı oluşturma işlemi uygulanan bir web sitesi, içerik olmadığında "Bulunamadı" ifadesini gösterir ancak 200 OK ile birlikte 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, içerik olmadığında istemci tarafında 200 OK kabuğuyla yanıt verir ve "Bulunamadı" sayfasını oluşturur.

Bu uç durumlarda kullanıcılar "Bulunamadı" sayfasına yönlendirilir ve bu durum kafa karışıklığına 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 isteğinde bulunarak ö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, /.well-known/change-password kaynağından önceden doğru bir şifre değiştirme URL'si alıp alamayacağını 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