Bağlı taraflar için geçiş anahtarı geliştirici kılavuzu

Geçiş anahtarlarını hizmetinize nasıl entegre edebileceğinizi öğrenin.

Geçiş anahtarı sisteminin anatomisi

Geçiş anahtarı sistemi birkaç bileşenden oluşur:

  • Güvenen taraf: Geçiş anahtarı bağlamında, güvenen taraf (kısaca RP), geçiş anahtarı verme ve kimlik doğrulama işlemlerini gerçekleştirir. RP, geçiş anahtarları oluşturan veya geçiş anahtarlarıyla kimlik doğrulayan bir web sitesi ya da uygulama olan bir istemci ve istemcideki geçiş anahtarları tarafından oluşturulan kimlik bilgilerini kaydetmek, depolamak ve doğrulamak için bir sunucu işletmelidir. Geçiş anahtarı mobil uygulaması, Digital Asset Links gibi işletim sistemi tarafından sağlanan ilişkilendirme mekanizması kullanılarak bir RP sunucu alanına bağlanmalıdır.
  • Authenticator: İşletim sistemi tarafından sunulan ekran kilidi özelliğini kullanarak geçiş anahtarları oluşturup doğrulayabilen bir bilgi işlem cihazı (ör. cep telefonu, tablet, dizüstü bilgisayar veya masaüstü bilgisayar).
  • Şifre yöneticisi: Son kullanıcının cihazlarına yüklenen ve geçiş anahtarlarını sunan, depolayan ve senkronize eden yazılımlar(ör. Google Şifre Yöneticisi).

Kayıt akışı

Yeni bir geçiş anahtarı oluşturup kaydetmek için bir web sitesinde WebAuthn API'yi veya bir Android uygulamasında Credential Manager kitaplığını kullanın.

Yeni bir geçiş anahtarı oluşturmak için birkaç temel bileşen sağlamanız gerekir:

  • RP kimliği: Güvenen tarafın kimliğini web alanı biçiminde sağlayın.
  • Kullanıcı bilgileri: Kullanıcının kimliği, kullanıcı adı ve görünen adı.
  • Hariç tutulacak kimlik bilgileri: Yinelenen kayıtları önlemek için daha önce saklanan geçiş anahtarlarıyla ilgili bilgiler.
  • Geçiş anahtarı türleri: Kimlik doğrulayıcı olarak cihazın kendisinin ("platform kimlik doğrulayıcısı") mi yoksa çıkarılabilir bir güvenlik anahtarının ("platformlar arası / dolaşım kimlik doğrulayıcısı") mı kullanılacağı. Ayrıca, arayanlar kimlik bilgisinin bulunabilir olup olmayacağını belirleyebilir. Böylece kullanıcı, oturum açmak için bir hesap seçebilir.

Bir RP, geçiş anahtarı oluşturulmasını istediğinde ve kullanıcı bunu ekran kilidiyle doğruladığında yeni bir geçiş anahtarı oluşturulur ve herkese açık anahtar kimlik bilgisi döndürülür. Bunu sunucuya gönderin ve kimlik bilgilerini gelecekteki kimlik doğrulama için kimlik bilgisi kimliği ve ortak anahtarla birlikte saklayın.

Kayıt akışı

Geçiş anahtarı oluşturma ve kaydetme hakkında ayrıntılı bilgi edinin:

Kimlik doğrulama akışı

Kayıtlı bir geçiş anahtarıyla kimlik doğrulamak için web sitesinde WebAuthn API'yi veya Android uygulamasında Credential Manager kitaplığını kullanın.

Geçiş anahtarıyla kimlik doğrulamak için sağlanması gereken birkaç temel bileşen vardır:

  • RP kimliği: Güvenen tarafın kimliğini web alanı biçiminde sağlayın.
  • Zorluk: Tekrar saldırılarını önleyen, sunucu tarafından oluşturulan bir zorluk.

Bir RP, geçiş anahtarıyla kimlik doğrulama isteğinde bulunduktan ve kullanıcı bunu ekran kilidini açarak doğruladıktan sonra ortak anahtar kimlik bilgisi döndürülür. Bunu sunucuya gönderin ve imzayı depolanan ortak anahtarla doğrulayın.

Kimlik doğrulama akışı

Geçiş anahtarıyla kimlik doğrulama hakkında ayrıntılı bilgi edinin:

Sunucu tarafı entegrasyonları

Geçiş anahtarı oluşturulduktan sonra sunucunun, sorgu, kullanıcı bilgileri, hariç tutulacak kimlik bilgisi kimlikleri gibi anahtar parametreleri sağlaması gerekir. Ardından, istemciden gönderilen oluşturulmuş ortak anahtar kimlik bilgisini doğrular ve ortak anahtarı veritabanında depolar. Geçiş anahtarıyla kimlik doğrulama için sunucunun, kullanıcının oturum açmasına izin vermek üzere kimlik bilgisini dikkatli bir şekilde doğrulaması ve imzayı onaylaması gerekir.

Sunucu tarafı kılavuzlarımızdan daha fazla bilgi edinin:

Mevcut (eski) kimlik doğrulama mekanizmaları

Mevcut hizmetinizde geçiş anahtarlarını desteklediğinizde, şifreler gibi eski kimlik doğrulama mekanizmasından geçiş anahtarlarına geçiş bir günde gerçekleşmez. Zayıf kimlik doğrulama yöntemini mümkün olan en kısa sürede ortadan kaldırmak isteyeceğinizi biliyoruz ancak bu durum, kullanıcılarda kafa karışıklığına neden olabilir veya bazı kullanıcıları geride bırakabilir. Şimdilik mevcut kimlik doğrulama yöntemini kullanmaya devam etmenizi öneririz.

Bunun birkaç nedeni vardır:

  • Geçiş anahtarıyla uyumlu olmayan bir ortamda kullanıcılar var: Geçiş anahtarı desteği, birden fazla işletim sistemi ve tarayıcıda yaygınlaşıyor ancak eski sürümleri kullananlar henüz geçiş anahtarlarını kullanamıyor.
  • Geçiş anahtarı ekosistemi henüz olgunlaşmadı: Geçiş anahtarı ekosistemi gelişiyor. Farklı ortamlar arasındaki kullanıcı deneyimi ayrıntıları ve teknik uyumluluk iyileştirilebilir.
  • Kullanıcılar henüz geçiş anahtarıyla yaşamaya hazır olmayabilir: Yeni şeyleri denemekten çekinen kullanıcılar vardır. Geçiş anahtarı ekosistemi olgunlaştıkça geçiş anahtarlarının nasıl çalıştığını ve neden faydalı olduğunu anlayacaklar.

Mevcut kimlik doğrulama mekanizmanızı yeniden gözden geçirin

Geçiş anahtarları, kimlik doğrulama işleminizi daha basit ve güvenli hale getirirken eski mekanizmaları kullanmaya devam etmek bir boşluk bırakmaya benzer. Mevcut kimlik doğrulama mekanizmalarınızı yeniden gözden geçirip iyileştirmenizi öneririz.

Şifreler

Güçlü şifreler oluşturmak ve bunları her web sitesi için yönetmek kullanıcılar açısından zorlu bir görevdir. Sisteme yerleştirilmiş bir şifre yöneticisi veya bağımsız bir şifre yöneticisi kullanmanız önemle tavsiye edilir. Web siteleri ve uygulamalar, oturum açma formunda küçük bir değişiklik yaparak güvenlik ve oturum açma deneyimi açısından büyük bir fark yaratabilir. Bu değişiklikleri nasıl yapabileceğinizi öğrenin:

İki faktörlü kimlik doğrulama

Şifre yöneticisi kullanmak, kullanıcıların şifreleri yönetmesine yardımcı olsa da tüm kullanıcılar bu araçları kullanmaz. Bu tür kullanıcıları korumak için tek kullanımlık şifre (OTP) adı verilen ek bir kimlik bilgisi istenmesi yaygın bir uygulamadır. Tek kullanımlık şifreler genellikle e-posta, SMS mesajı veya Google Authenticator gibi bir kimlik doğrulama uygulaması aracılığıyla sağlanır. OTP'ler genellikle yalnızca sınırlı bir süre için geçerli olan, dinamik olarak oluşturulmuş kısa metinler olduğundan hesap ele geçirme olasılığını azaltır. Bu yöntemler, geçiş anahtarı kadar güçlü olmasa da kullanıcıları yalnızca şifreyle bırakmaktan çok daha iyidir.

OTP'yi iletme yöntemi olarak SMS'i seçerseniz kullanıcı deneyimini kolaylaştırmak için aşağıdaki en iyi uygulamalara göz atın.

Kimlik federasyonu

Kimlik federasyonu, kullanıcıların güvenli ve kolay bir şekilde oturum açmasına olanak tanıyan başka bir seçenektir. Kimlik birleştirme sayesinde web siteleri ve uygulamalar, kullanıcıların üçüncü taraf kimlik sağlayıcıdan alınan kimliklerini kullanarak oturum açmasına olanak tanıyabilir. Örneğin, Google ile oturum açma, geliştiriciler için mükemmel dönüşümler sağlar ve kullanıcılar, şifre tabanlı kimlik doğrulamaya kıyasla bu yöntemi daha kolay ve tercih edilebilir bulur. Kimlik federasyonu, geçiş anahtarlarını tamamlayıcı bir özelliktir. Web sitesi veya uygulama, tek bir adımda kullanıcının temel profil bilgilerini edinebildiği için kayıt işlemi için idealdir. Geçiş anahtarları ise yeniden kimlik doğrulama sürecini kolaylaştırmak için mükemmeldir.

Chrome'un 2024'te üçüncü taraf çerezlerini kullanımdan kaldırmasının ardından, bazı kimlik federasyonu sistemlerinin nasıl oluşturulduklarına bağlı olarak etkilenebileceğini unutmayın. Bu etkinin azaltılması için Federated Credential Management API (kısaca FedCM) adlı yeni bir tarayıcı API'si geliştiriliyor. Bir kimlik sağlayıcı işletiyorsanız ayrıntıları inceleyin ve FedCM'yi kullanmanız gerekip gerekmediğini öğrenin.

Sihirli bağlantı ile oturum açma, bir hizmetin e-posta üzerinden oturum açma bağlantısı gönderdiği bir kimlik doğrulama yöntemidir. Kullanıcılar, kimliklerini doğrulamak için bu bağlantıyı tıklayabilir. Bu özellik, kullanıcıların şifre hatırlamadan oturum açmasına yardımcı olsa da tarayıcı/uygulama ile e-posta istemcisi arasında geçiş yapmak zor olabilir. Ayrıca, kimlik doğrulama mekanizması e-postaya dayandığından e-posta sağlayıcının zayıf güvenliği, kullanıcı hesaplarını riske atabilir.

Eğitici kaynaklar

Web

Geçiş anahtarlarını web sitenize entegre etmek için Web Authentication API (WebAuthn)'yi kullanın. Daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atın:

Android

Geçiş anahtarlarını Android uygulamanıza entegre etmek için Kimlik Bilgisi Yöneticisi kitaplığını kullanın. Daha fazla bilgi edinmek için aşağıdaki kaynaklara göz atın:

kullanıcı deneyimi

Geçiş anahtarı kullanıcı deneyimi önerileri hakkında bilgi edinin: