FedCM'ye geçiş

Bu kılavuz, Federated Credential Management API (FedCM) tarafından web uygulamanızda yapılan değişiklikleri anlamanıza yardımcı olur.

FedCM etkinleştirildiğinde tarayıcı kullanıcı istemleri gösterir ve üçüncü taraf çerezleri kullanılmaz.

Genel Bakış

FedCM, üçüncü taraf çerezlerinin kullanılmasını gerektirmeden daha gizli oturum açma akışları sağlar. Tarayıcı, kullanıcı ayarlarını kontrol eder, kullanıcı istemlerini gösterir ve yalnızca açık bir kullanıcı izni verildikten sonra Google gibi bir kimlik sağlayıcıyla iletişim kurar.

Çoğu web sitesi için taşıma işlemi, Google Kimlik Hizmetleri JavaScript kitaplığındaki geriye dönük uyumlu güncellemeler sayesinde sorunsuz bir şekilde gerçekleşir.

Otomatik oturum açma özelliğiyle ilgili güncellemeler

Google Kimlik Hizmetleri için Federated Credential Management (FedCM) Beta, Ağustos 2023'te kullanıma sunuldu. Birçok geliştirici API'yi test etti ve değerli geri bildirimler sağladı.

Google'ın geliştiricilerden duyduğu yanıtlardan biri, FedCM otomatik oturum açma akışıyla ilgili kullanıcı hareketi zorunluluğuyla ilgili. Chrome, daha iyi gizlilik için kullanıcıların web sitesini FedCM kullanıma sunulmadan önce onaylamış olsalar bile her Chrome örneğinde web sitesinde Google Hesabı ile oturum açmak istediklerini yeniden onaylamalarını zorunlu kılar. Tek seferlik bu yeniden onay, kullanıcının oturum açma niyetini göstermek için Tek Tıklama isteminde tek bir tıklamayla yapılır. Bu değişiklik, bazı web sitelerinde otomatik oturum açma dönüşüm oranlarında başlangıçta bir kesintiye neden olabilir.

Chrome, M121'de FedCM otomatik oturum açma akışı kullanıcı deneyiminde kısa süre önce bir değişiklik yaptı. Yeniden onay yalnızca üçüncü taraf çerezleri kısıtlandığında gereklidir. Bunun anlamı şudur:

  1. FedCM otomatik oturum açma özelliği, geri gelen kullanıcılar için yeniden onay gerektirmez. Kullanıcılar FedCM kullanıcı arayüzüyle yeniden onay verirse bu yeniden onay, 3PCD sonrası dönem için kullanıcı hareketi koşuluna dahil edilir.

  2. FedCM otomatik oturum açma özelliği, üçüncü taraf çerezleri şu anda kullanıcılar tarafından manuel olarak kısıtlandığında veya gelecekteki Chrome'da varsayılan olarak kısıtlandığında yeniden onay durumunu kontrol eder.

Bu değişiklikle birlikte, otomatik oturum açma dönüşüm oranlarında yaşanabilecek kesintileri azaltmak için tüm otomatik oturum açma geliştiricilerin FedCM'ye en kısa sürede geçmesini öneririz.

Otomatik oturum açma akışında, web siteniz FedCM'yi etkinleştirmeyi seçse bile GIS JavaScript, eski bir Chrome'da (M121'den önce) FedCM'yi tetiklemez.

Kullanıcı yolculuğu farklılıkları

FedCM'nin kullanıldığı ve FedCM'nin olmadığı One Tap deneyimleri, aralarında küçük farklar olsa da benzerdir.

Tek oturum gerçekleştiren yeni kullanıcı

FedCM kullanılırken One Tap, uygulama adı yerine alan adını gösterir.

FedCM kullanma FedCM olmadan
FedCM kullanan tek oturumlu yeni kullanıcı FedCM içermeyen tek oturumlu yeni kullanıcı

Tek oturumlu geri gelen kullanıcı (otomatik oturum açma devre dışı bırakılmış)

FedCM kullanıldığında One Tap, uygulama adı yerine alan adını gösterir.

FedCM kullanma Birleşik Kimlik Bilgisi Yönetimi olmadan
FedCM'yi kullanan tek oturumlu geri gelen kullanıcı yolculuğu (otomatik oturum açma devre dışıyken) FedCM'siz tek oturumlu geri gelen kullanıcı yolculuğu (otomatik oturum açma devre dışıyken)

Tek oturum gerçekleştiren geri gelen kullanıcı (otomatik oturum açma etkin)

FedCM'yi kullanan kullanıcılar, İptal düğmesini tıklamak yerine 5 saniye içinde otomatik oturum açma özelliğini iptal etmek için X simgesini tıklayabilir.

FedCM kullanma Birleşik Kimlik Bilgisi Yönetimi olmadan
FedCM'yi kullanan tek oturumlu geri gelen kullanıcı yolculuğu (otomatik oturum açma etkin) FedCM'siz tek oturumlu geri gelen kullanıcı yolculuğu (otomatik oturum açma etkin)

Birden çok oturum

FedCM kullanıldığında One Tap, uygulama adı yerine alan adını gösterir.

FedCM kullanma Birleşik Kimlik Bilgisi Yönetimi olmadan
FedCM kullanan birden çok oturum gerçekleştiren kullanıcı FedCM'siz birden çok oturum gerçekleştiren kullanıcı

Başlamadan önce

Tarayıcı ayarlarınızın ve sürümünüzün FedCM API'yi desteklediğini kontrol edin. En son sürüme güncelleme yapmanız önerilir.

  • FedCM API, Chrome 117 veya sonraki sürümlerde kullanılabilir.

  • Chrome'da Üçüncü taraf oturum açma ayarı etkinleştirildi.

  • Chrome Tarayıcı sürümünüz 119 veya daha eskiyse chrome://flags uygulamasını açıp deneysel FedCmWithoutThirdPartyCookies özelliğini etkinleştirin. Chrome Tarayıcı 120 veya sonraki sürümlerde bu adıma gerek yoktur.

Web uygulamanızı taşıma

FedCM'yi etkinleştirmek, olası taşıma etkisini değerlendirmek ve gerekirse mevcut web uygulamanızda değişiklik yapmak için aşağıdaki adımları uygulayın:

1. Aşağıdakileri kullanarak ilk başlatma sırasında FedCM'yi etkinleştirmek için bir boole işareti ekleyin:

2. Kodunuzda isDisplayMoment(), isDisplayed(), isNotDisplayed() ve getNotDisplayedReason() yöntemlerinin kullanımını kaldırın.

Kullanıcı gizliliğini iyileştirmek için google.accounts.id.prompt geri çağırma işlevi artık PromptMomentNotication nesnesinde herhangi bir görüntüleme anı bildirimi döndürmez. Görüntüleme anı ile ilgili yöntemlere dayanan tüm kodları kaldırın. Bunlar isDisplayMoment(), isDisplayed(), isNotDisplayed() ve getNotDisplayedReason() yöntemleridir.

3. Kodunuzda getSkippedReason() yönteminin kullanımını kaldırın.

Atlama anı (isSkippedMoment()), PromptMomentNotication nesnesinde google.accounts.id.prompt geri çağırma işlevinden çağrılmaya devam eder ancak ayrıntılı neden sağlanmaz. getSkippedReason() yöntemine bağlı olan tüm kodları kodunuzdan kaldırın.

FedCM etkinleştirildiğinde reddedilen an bildirimi (isDismissedMoment()) ve ilgili ayrıntılı neden yönteminin (getDismissedReason()) değişmeyeceğini unutmayın.

4. position stil özelliklerini data-prompt_parent_id ve intermediate_iframes öğesinden kaldırın.

Tarayıcı, kullanıcı istemlerinin boyutunu ve konumunu kontrol eder. Masaüstünde One Tap için özel konumlar desteklenmez.

5. Gerekirse sayfa düzenini güncelleyin.

Tarayıcı, kullanıcı istemlerinin boyutunu ve konumunu kontrol eder. Sayfaların düzenine bağlı olarak, bazı içerikler üzerine yerleştirilebilir. Çünkü masaüstünde tek dokunuş için özel konumlar stil özelliği, data-prompt_parent_id, intermediate_iframes, özelleştirilmiş iFrame ve diğer reklam öğesi yöntemleri gibi hiçbir şekilde desteklenmez.

Önemli bilgiler gizlendiğinde kullanıcı deneyimini iyileştirmek için sayfa düzenini değiştirin. Varsayılan konumda olduğunu varsaysa bile kullanıcı deneyiminizi Tek Dokunma istemi etrafında oluşturmayın. FedCM API tarayıcı uyumlu olduğundan, farklı tarayıcı tedarikçi firmaları, istemin konumunu biraz farklı şekilde yerleştirebilir.

6. Web uygulamanız kaynak farklı iframe'lerden One Tap API'yi çağırıyorsa allow="identity-credentials-get" özelliğini üst çerçeveye ekleyin.

Kaynağı, üst kaynakla tam olarak aynı değilse iframe'ler çapraz kaynak olarak kabul edilir. Örnek:

  • Farklı alanlar: https://example1.com ve https://example2.com
  • Farklı üst düzey alanlar: https://example.uk ve https://example.jp
  • Alt alan adları: https://example.com ve https://login.example.com

    Kullanıcı gizliliğini iyileştirmek için One Tap API, kaynakta farklı olan iframe'lerden çağrılırken her üst çerçeve iframe etiketine allow="identity-credentials-get" özelliğini eklemeniz gerekir:

    <iframe src="https://your.cross-origin/onetap.page" allow="identity-credentials-get"></iframe>
    

    Uygulamanız başka bir iframe içeren bir iframe kullanıyorsa özelliğin tüm alt iframe'ler dahil her iframe'e eklendiğinden emin olmanız gerekir.

    Örneğin, aşağıdaki senaryoyu inceleyin:

  • Üst doküman (https://www.example.uk), bir sayfayı (https://logins.example.com) yerleştiren "Iframe A" adlı bir iframe içerir.

  • Bu yerleştirilmiş sayfa (https://logins.example.com), "Iframe B" adlı bir iframe de içerir. Bu iframe, One Tap'i barındıran bir sayfayı (https://onetap.example2.com) daha da yerleştirir.

    One Tap'in düzgün şekilde görüntülenebilmesi için özellik hem iframe A hem de iframe B etiketlerine eklenmelidir.

    One Tap isteğinin gösterilmemesiyle ilgili sorulara hazır olun. Farklı kaynaklara sahip diğer siteler, One Tap barındıran sayfalarınızı iframe'lerinin içine yerleştirebilir. Son kullanıcılardan veya diğer site sahiplerinden, One Tap'in gösterilmemesiyle ilgili daha fazla destek kaydı alabilirsiniz. Güncellemeleri yalnızca site sahipleri kendi sayfalarında yapabilir. Bununla birlikte, bu güncellemelerin etkisini azaltmak için şunları yapabilirsiniz:

  • Geliştirici dokümanlarınızı, sitenizi çağıracak şekilde iframe'i doğru şekilde ayarlama talimatlarını içerecek şekilde güncelleyin. Belgelerinizde bu sayfaya bağlantı verebilirsiniz.

  • Gerekiyorsa geliştirici SSS sayfanızı güncelleyin.

  • Yaklaşan bu değişikliği destek ekibinize bildirin ve sorguya verilecek yanıtı önceden hazırlayın.

  • FedCM geçişinin sorunsuz olması için etkilenen iş ortakları, müşteriler veya site sahipleriyle proaktif olarak iletişime geçin.

7. Bu yönergeleri İçerik Güvenliği Politikanıza (İGP) ekleyin.

Tüm web siteleri CSP tanımlamayı tercih etmediğinden bu adım isteğe bağlıdır.

  • Web sitenizde CSP kullanılmıyorsa herhangi bir değişiklik yapmanız gerekmez.

  • CSP'niz mevcut One Tap için çalışıyorsa ve connect-src, frame-src, script-src, style-src veya default-src kullanmıyorsanız herhangi bir değişiklik yapmanız gerekmez.

  • Aksi takdirde, İGP'nizi ayarlamak için bu kılavuzu takip edin. Doğru CSP ayarı olmadan FedCM One Tap sitede gösterilmez.

8. Giriş için Accelerated Mobile Pages (AMP) desteğini kaldırın.

AMP için kullanıcı oturum açma desteği, web uygulamanızın uygulamış olabileceği isteğe bağlı bir Coğrafi Bilgi Sistemi özelliğidir. Böyle bir durumda,

Aşağıdakilere yapılan tüm referansları silin:

  • amp-onetap-google özel öğesi ve

  • <script async custom-element="amp-onetap-google" src="https://cdn.ampproject.org/v0/amp-onetap-google-0.1.js"></script>
    

    AMP'den gelen oturum açma isteklerini web sitenizin HTML oturum açma akışına yönlendirebilirsiniz. İlgili Intermediate Iframe Support API'nin bu durumdan etkilenmediğini unutmayın.

Taşıma işleminizi test etme ve doğrulama

Önceki adımlara göre gerekli değişiklikleri yaptıktan sonra taşıma işleminin başarılı olup olmadığını doğrulayabilirsiniz.

  1. Tarayıcınızın FedCM'yi desteklediğini ve mevcut bir Google Hesabı oturumunuzun olduğunu onaylayın.

  2. Uygulamanızdaki Tek Dokunuş sayfalarına gidin.

  3. Tek Dokunma isteğinin gösterildiğini ve temel içeriğin üzerine güvenli bir şekilde yerleştirildiğini doğrulayın.

  4. One Tap'ı kullanarak uygulamanızda oturum açarken uç noktanıza veya geri çağırma yönteminize doğru kimlik bilgisinin döndürüldüğünü onaylayın.

  5. Otomatik oturum açma etkinse iptal işleminin çalıştığını ve uç noktanıza veya geri çağırma yönteminize doğru kimlik bilgilerinin döndürüldüğünü doğrulayın.

One Tap bekleme süresi

Sağ üst köşedeki Tek Dokunma'yı tıkladığınızda istem kapatılır ve Tek Dokunma isteminin geçici olarak gösterilmesini engelleyen bekleme süresi başlar. Chrome'da, bekleme süresi sona ermeden önce Tek Dokunma isteminin tekrar gösterilmesini istiyorsanız adres çubuğundaki kilit simgesini ve İzni Sıfırla düğmesini tıklayarak bekleme durumunu sıfırlayabilirsiniz.

Otomatik oturum açma sessiz dönemi

FedCM kullanılarak otomatik oturum açma One Tap özelliği test edilirken her otomatik oturum açma denemesi arasında 10 dakikalık bir sessiz dönem vardır. Sessiz dönem sıfırlanamaz. Otomatik oturum açma özelliğini tekrar tetiklemek için 10 dakika beklemeniz veya test için farklı bir Google Hesabı kullanmanız gerekir.

Yararlı kaynaklar

Özel Korumalı Alan Analiz Aracı (PSAT), FedCM gibi alternatif API'lerin benimsenmesine yardımcı olacak bir Chrome Geliştirici Araçları uzantısıdır. Bu araç, sitenizde etkilenen özellikleri tarar ve önerilen değişikliklerin bir listesini sunar.