FedCM'ye geçiş

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

FedCM etkinleştirildiğinde tarayıcı, kullanıcı istemlerini görüntüler ve üçüncü taraf çerezleri kullanılmaz.

Genel bakış

Web için Özel Korumalı Alan ve Chrome'un web'den üçüncü taraf çerezlerini kaldırması, Google Kimlik Hizmetleri'nde ve kullanıcı oturum açma işlemlerinde önemli değişiklikler getiriyor.

FedCM, üçüncü taraf çerezlerinin kullanılmasına gerek kalmadan daha gizli oturum açma akışları sağlar. Tarayıcı kullanıcı ayarlarını kontrol eder, kullanıcı istemlerini görüntüler ve yalnızca kullanıcının açık izni verildikten sonra Google gibi bir Kimlik Sağlayıcı ile iletişim kurar.

Çoğu web sitesi için taşıma işlemi, Google Kimlik Hizmetleri JavaScript kitaplığına yapılan geriye dönük uyumlu güncellemelerle sorunsuz şekilde gerçekleştirilir.

Başlamadan önce

Tarayıcınızın ve tarayıcı sürümünüzün FedCM API'yi desteklediğinden emin olun ve gerekirse daha yeni bir sürüme güncelleyin.

Üçüncü taraf çerezleri engellenmiş şekilde oturum açma akışlarını test etmeden önce chrome://flags uygulamasını açın ve deneysel FedCmWithoutThirdPartyCookies özelliğini etkinleştirin. Bu adım yalnızca varsayılan hale gelene kadar gereklidir. Ayrıca, Chrome'da Üçüncü taraf oturum açma ayarının etkinleştirilmesi gerekir.

Web uygulamanızı taşıyın

FedCM'yi etkinleştirmek, potansiyel taşıma etkisini değerlendirmek ve mevcut web uygulamanızda değişiklik yapmanız gerekirse şu adımları uygulayın:

  1. Aşağıdakiler kullanılarak başlatılırken FedCM'yi etkinleştirmek için bir boole işareti ekleyin:

  2. PromptMomentNotication nesnesinde döndürülen opt_out_or_no_session değerinin kullanımlarını kaldırın.

    google.accounts.id.prompt geri çağırma işlemi, kullanıcı gizliliğini iyileştirmek için artık kullanıcı ayarları veya oturum durumuyla ilgili sonuçlar döndürmemektedir.

  3. isDisplayMoment() etkinliklerinin gecikmeli bildirimlerini işlemek için kullanıcı akışlarını ve web sitesi kodunu güncelleyin.

    Kullanıcı gizliliğini iyileştirmek için, ekran an bildirimleri FedCM etkinleştirildiğinde kasıtlı olarak rastgele bir süre ertelenir. Bildirimler, gerçek etkinlik gerçekleştikten bir dakika sonra alınabilir. İstemleri koşullu olarak görüntülemek veya kullanıcı etkileşimini tetiklemek için isDisplayMoment kullanırken kullanıcı deneyimi tasarımınızda değişken süreyi dikkatlice değerlendirin.

  4. position stil özelliklerini data-prompt_parent_id ve intermediate_iframes ürününden 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. Tek tek sayfaların düzenine bağlı olarak, bazı içerikler yer paylaşımlı olabilir.

    Önemli bilgiler gizlendiğinde kullanıcı deneyimini iyileştirmek için sayfa düzenini değiştirin.

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

    Bir iframe, origin ile üst kaynakla tam olarak aynı değilse çapraz kaynak olarak kabul edilir. Örneğin:

    • 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, kaynaklar arası iframe'lerden One Tap API çağrıldığında 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 olmak üzere her iframe'e eklendiğinden emin olmanız gerekir.

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

    • En üstteki 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), One Tap'i barındıran sayfayı (https://onetap.example2.com) daha fazla yerleştiren "iframe B" adlı bir iframe içerir.

    One Tap'in düzgün bir şekilde görüntülenebilmesini sağlamak için özelliğin hem Iframe A hem de iframe B etiketlerine eklenmesi gerekir.

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

    Tüm web siteleri bir CSP tanımlamayı seçmediğinden bu adım isteğe bağlıdır.

  8. Oturum açma 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 kullanmış 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>

    Oturum açma isteklerini AMP'den web sitenizin HTML oturum açma akışına yönlendirmeyi düşünebilirsiniz. İlgili Intermediate Iframe Support API öğesinin bu durumdan etkilenmediğini unutmayın.