FedCM güncellemeleri: Otomatik yeniden kimlik doğrulama için kaynak denemesi

Otomatik yeniden kimlik doğrulama için yeni bir kaynak denemesi de dahil olmak üzere FedCM'de birkaç güncellemeyle tanışın.

Federated Credential Management API (FedCM), gizliliği korumaya yönelik kimlik federasyonu için bir web API'sidir. Kimlik federasyonuyla, bir RP (bağımlı taraf) kullanıcıya yeni bir kullanıcı adı ve şifre gerektirmeden hesap sağlaması için bir IdP'den (kimlik sağlayıcı) ihtiyaç duyar.

FedCM, tarayıcının RP ve IdP bilgilerinin paylaşıldığı bağlamı anlamasını, kullanıcıyı paylaşılan bilgi ve ayrıcalık düzeyleri hakkında bilgilendirmesini ve istenmeyen kötüye kullanımı önlemesini sağlayan, amaca yönelik bir API'dir.

Güncellemeler

Chrome'un FedCM uygulamasında birkaç güncelleme yapıldı:

API'de yapılan tüm geçmiş güncellemeler için Federated Credential Management API güncellemeleri'ne göz atın.

FedCM'nin en son sürümünde, FedCM'yi kullanarak ilk kimlik doğrulamalarından sonra geri döndüklerinde kullanıcıların otomatik olarak yeniden kimlik doğrulamasını sağlayan yeni bir otomatik yeniden kimlik doğrulama özelliği bulunmaktadır. Chrome 112 sürümünden itibaren otomatik yeniden kimlik doğrulama özelliği kaynak denemesi olarak kullanılabilir.

Otomatik yeniden kimlik doğrulama

Şu anda, bir kullanıcı FedCM aracılığıyla bir IdP ile bir RP üzerinde birleşik hesap oluşturduktan sonra, web sitesini bir sonraki ziyaretinde kullanıcı arayüzünde aynı adımları uygulaması gerekmektedir. Yani, oturum açma akışına devam etmek için kullanıcının açıkça onaylaması ve yeniden kimlik doğrulaması yapması gerekir. FedCM'nin ana hedeflerinden biri gizli izlemeyi önlemektir. Bu kullanıcı deneyimi, kullanıcı birleşik hesabı oluşturmadan önce mantıklıdır, ancak kullanıcı bir kez geçtikten sonra gereksiz ve kullanışsız hale gelir. Kullanıcı, RP ile IdP arasında iletişime izin verilmesine izin verdikten sonra, daha önce onayladığı bir şey için başka bir açık kullanıcı onayını zorunlu kılmanın gizlilik veya güvenlik açısından faydası yoktur. Bu nedenle Chrome, RP'lerin geri gelen kullanıcıları için seçebileceği daha basit bir kullanıcı deneyimini kullanıma sunuyor.

FedCM otomatik yeniden kimlik doğrulama ("kısacası otomatik yeniden kimlik doğrulama"), kullanıcıların kimliklerini FedCM ile yapılan ilk kimlik doğrulama işleminden sonra döndüklerinde otomatik olarak (RP'ler etkinleştirdiğinde) yeniden doğrular. Buradaki "ilk kimlik doğrulama", kullanıcının aynı tarayıcı örneğinde ilk kez FedCM'nin oturum açma iletişim kutusundaki "Şu kullanıcı olarak devam et..." düğmesine dokunarak bir hesap oluşturduğu veya kısıtlanmış tarafın web sitesinde oturum açtığı anlamına gelir.

Kullanıcının hesap oluşturmak veya kimlik doğrulaması için dokunduğu iletişim kutusu.
Kullanıcının hesap oluşturmak veya kimlik doğrulamak için dokunduğu iletişim kutusu.

Kısıtlanmış taraf, autoReauthn: true ile navigator.credentials.get() numaralı telefonu arayarak otomatik yeniden kimlik doğrulama isteğinde bulunabilir.

const cred = await navigator.credentials.get({
  identity: {
    providers: [{
      configURL: "https://idp.example/fedcm.json",
      clientId: "1234",
    }],
    // NOTE: We are exploring different API options to expose this
    // functionality here:
    // https://github.com/fedidcg/FedCM/issues/429#issuecomment-1426358523
    // You should expect that, as a result of the origin trial, we'll
    // learn more from developers and browser vendors what works best here.
    autoReauthn: true, // default to false
  },
});

Bu çağrıda, otomatik yeniden kimlik doğrulama aşağıdaki koşullarda gerçekleşir:

  • FedCM kullanılabilir. Örneğin, kullanıcı FedCM'yi global olarak veya RP için devre dışı bırakmamıştır.
  • Kullanıcı, bu tarayıcı ile web sitesinde oturum açmak için yalnızca bir FedCM hesabı kullanmıştır.
  • Kullanıcı, IdP'de bu hesapla oturum açmıştır.
  • Son 10 dakika içinde otomatik yeniden kimlik doğrulama işlemi gerçekleşmedi.

Yukarıdaki koşullar karşılandığında FedCM navigator.credentials.get() çağrılır çağrılmaz kullanıcının kimliğini otomatik olarak yeniden doğrulama girişimi başlar.

Bir kullanıcı, FedCM'yi kullanarak bir kısıtlanmış taraf için otomatik olarak yeniden kimlik doğrulaması gerçekleştiriyor

Deneyin

Chrome 112 veya sonraki sürümlerde Chrome işaretini chrome://flags#fedcm-auto-re-authn etkinleştirerek FedCM otomatik yeniden kimlik doğrulamasını yerel olarak deneyebilirsiniz.

Test amacıyla, tarayıcı verilerini kaldırarak 10 dakikalık sessiz süreyi sıfırlayabilirsiniz.

  1. chrome://history adresine gidiş rotasını izle.
  2. Arama geçmişi kutusuna kısıtlanmış tarafın kökenini girin.
  3. Üç nokta simgesini ⋮ tıklayıp Geçmişten kaldır'ı seçin.
  4. Chrome'u yeniden başlatın.

Kaynak denemesine katılma

Chrome 112 ile Chrome 114 arasında sunulan üçüncü taraf kaynak denemesine katılarak bu özelliği web sitenizde de etkinleştirebilirsiniz.

Kaynak denemeleri, yeni özellikleri denemenize ve web standartları topluluğuna bu özelliklerin kullanılabilirliği, pratikliği ve etkililiği hakkında geri bildirimde bulunmanıza olanak tanır. Daha fazla bilgi için Web Geliştiricileri İçin Kaynak Denemeleri Kılavuzu'na bakın. Bu veya başka bir kaynak deneme sürümüne kaydolmak için kayıt sayfasını ziyaret edin.

Üçüncü taraf kaynak deneme sürümüne kaydolmak ve özelliği üçüncü taraflarca etkinleştirmek için:

  1. Kaynak denemesi kayıt sayfasına gidin.
  2. Kaydol düğmesini tıklayın ve jeton istemek için formu doldurun
  3. Yayın kaynağını Web Kaynağı olarak girin.
  4. Jetonu başka kaynaklarda JavaScript ile eklemek için Üçüncü taraf eşleştirme'yi işaretleyin.
  5. Gönder'i tıklayın.
  6. Verilen jetonu bir üçüncü tarafa yerleştirin.

Jetonu bir üçüncü tarafa yerleştirmek için JavaScript kitaplığınıza veya kayıtlı web sitesinin kaynağından sunulan SDK'nıza aşağıdaki kodu ekleyin.

const tokenElement = document.createElement('meta');
tokenElement.httpEquiv = 'origin-trial';
tokenElement.content = 'TOKEN_GOES_HERE';
document.head.appendChild(tokenElement);

TOKEN_GOES_HERE öğesini kendi jetonunuzla değiştirin.

Etkileşimde bulunun ve geri bildirim paylaşın

Test sırasında geri bildirimde bulunmak isterseniz veya herhangi bir sorunla karşılaşırsanız bunları crbug.com adresinde Blink>Identity>FedCM bileşeninin altından paylaşabilirsiniz.

Fotoğraf: Alex Perz, Unsplash