Genel Bakış

Hesap bağlama, Google Hesabı sahiplerinin hizmetlerinize hızlı, sorunsuz ve güvenli bir şekilde bağlanmasını sağlar. Platformunuzdaki bir kullanıcının verilerini Google uygulamaları ve hizmetleriyle paylaşmak için Google Hesabı Bağlama özelliğini kullanmayı seçebilirsiniz.

Güvenli OAuth 2.0 protokolü, bir kullanıcının Google Hesabını platformunuzdaki hesabıyla güvenli bir şekilde bağlamanızı sağlar ve böylece Google uygulamalarının ve cihazların hizmetlerinize erişmesine izin verirsiniz.

Kullanıcılar hesaplarını bağlayabilir veya mevcut hesapların bağlantısını kaldırabilir ve isteğe bağlı olarak Google Hesabı Bağlama özelliğiyle platformunuzda yeni bir hesap oluşturabilir.

Kullanım alanları

Google Hesabı Bağlama işleminin uygulanmasının nedenlerinden bazıları şunlardır:

  • Platformunuzdaki kullanıcı verilerini Google uygulamaları ve hizmetleriyle paylaşın.

  • Video ve film içeriğinizi Google TV'yi kullanarak oynatın.

  • Google Home uygulamasını ve Google Asistan'ı kullanarak Google Smart Home'a bağlı cihazları yönetin ve kontrol edin. "Ok Google ışıkları aç".

  • Konuşma İşlemleri ile kullanıcı için özelleştirilmiş Google Asistan deneyimleri ve işlevleri oluşturma, "Ok Google, Starbucks'tan her zamankimi sipariş et."

  • Google Hesaplarını bir ödül iş ortağı hesabına bağladıktan sonra YouTube'da uygun canlı yayınları görüntüleyerek kullanıcıların ödül kazanmasını sağlayın.

  • Kaydolma sırasında, bir Google Hesap profilinden paylaşılan paylaşılan verilerle yeni hesapları önceden doldurun.

Desteklenen özellikler

Google Hesabı Bağlama özelliğinin desteklediği özellikler:

  • OAuth Bağlama dolaylı akışını kullanarak verilerinizi hızlı ve kolay bir şekilde paylaşın.

  • OAuth Bağlama yetkilendirme kodu akışıyla güvenliği artırın.

  • Mevcut kullanıcılarınızda oturum açın veya Google tarafından doğrulanmış yeni kullanıcıları platformunuza kaydedin, izinlerini alın ve Basitleştirilmiş bağlantı ile verileri güvenli bir şekilde paylaşın.

  • Uygulama kaydırma ile zorlukları azaltın. Güvenilir bir Google uygulamasından, dokunarak Android veya iOS uygulamanızı güvenli bir şekilde açar ve bir kez dokunarak kullanıcıya izin verir, hesapları bağlar.

  • Yalnızca gerekli verileri paylaşmak için özel kapsamlar tanımlayarak kullanıcı gizliliğini iyileştirin ve verilerinin ne şekilde kullanıldığını açıkça tanımlayarak kullanıcı güvenini artırın.

  • Platformunuzda barındırılan verilere ve hizmetlere erişim, hesapların bağlantısı kaldırıldığında iptal edilebilir. İsteğe bağlı jeton iptal uç noktası uygulamak, Google tarafından başlatılan etkinliklerle senkronize kalmanızı sağlarken Hesaplar Arası Koruma (RISC), platformunuzda gerçekleşen bağlantıyı kaldırma etkinlikleri hakkında Google'ı bilgilendirmenize olanak tanır.

Hesap bağlama akışları

Hepsi Google tabanlı olan ve OAuth 2.0 uyumlu yetkilendirme ve jeton değişimi uç noktalarını yönetmenizi veya kontrol etmenizi gerektiren 3 Google Hesabı Bağlama akışı vardır.

Bağlama işlemi sırasında, hesap sahiplerinin hesaplarını bağlamalarına ve veri paylaşmalarına izin vermenizin ardından bireysel Google Hesaplarına ait erişim jetonlarını Google'a verirsiniz.

OAuth Bağlantısı ('Web OAuth')

Bu, kullanıcıları bağlantı için web sitenize yönlendiren temel OAuth akışıdır. Kullanıcı, hesabında oturum açmak için web sitenize yönlendirilir. Oturum açtıktan sonra kullanıcı, hizmetinizde verilerinin Google ile paylaşılmasına izin verir. Bu noktada kullanıcının Google Hesabı ve hizmetiniz bağlanır.

OAuth Bağlantısı, yetkilendirme kodunu ve dolaylı OAuth akışlarını destekler. Hizmetiniz, örtülü akış için OAuth 2.0 uyumlu bir yetkilendirme uç noktası barındırmalı ve yetkilendirme kodu akışı kullanılırken hem yetkilendirme hem de jeton exchange uç noktasını göstermelidir.

Şekil 1. Web OAuth özellikli bir kullanıcının telefonunda hesap bağlama

OAuth tabanlı Uygulama Çevirisi Bağlantısı ('Uygulama Dönüşümü

Bağlantı oluşturmaları için kullanıcıları uygulamanıza gönderen bir OAuth akışı.

OAuth Tabanlı Uygulama Çevirisi Bağlantı, doğrulanmış Android veya iOS mobil uygulamalarınız ile Google'ın platformu arasında geçiş yapan kullanıcılara, önerilen veri erişimi değişikliklerini inceleme ve platformunuzda hesaplarını Google hesaplarına bağlama izni vermelerini sağlar. App Flip'i etkinleştirmek için hizmetiniz yetkilendirme kodu akışını kullanarak OAuth Bağlantısı veya OAuth tabanlı Google Oturum Açma Bağlantısı'nı desteklemelidir.

Uygulama çevirme hem Android hem de iOS için desteklenir.

İşleyiş şekli:

Google uygulaması, uygulamanızın kullanıcının cihazında yüklü olup olmadığını kontrol eder:

  • Uygulama bulunursa kullanıcı uygulamanıza "çevrilebilir". Uygulama, hesabı Google'a bağlamak için kullanıcıdan izin alır, ardından 'Google platformuna döner.
  • Uygulama bulunamazsa veya uygulama çevirme bağlantısı işlemi sırasında bir hata oluşursa kullanıcı Modernleştirilmiş veya Web OAuth akışına yönlendirilir.

2. Şekil. Uygulama Çevirici ile bir kullanıcının telefonunda hesap bağlama

OAuth tabanlı Modern Bağlantı ('Basitleştirilmiş)##39;)

OAuth tabanlı Google ile Oturum Açma Geliştirilmiş bağlantı oluşturma, Google ile Oturum Açma özelliğinin OAuth bağlama özelliğinin üzerine eklenmesini sağlayarak kullanıcıların bağlantı oluşturma işlemini Google yüzeyinden ayrılmadan tamamlamasını sağlar, böylece zorlukları ve ayrılma durumlarını azaltır. OAuth tabanlı Geliştirilmiş Bağlantı, Google ile Oturum Açma'yı OAuth bağlantısıyla birleştirerek sorunsuz oturum açma, hesap oluşturma ve hesap bağlama özellikleriyle en iyi kullanıcı deneyimini sunar. Hizmetiniz OAuth 2.0 uyumlu yetkilendirmeyi ve jeton değişimi uç noktalarını desteklemelidir. Ayrıca, jeton değişimi uç noktanız JSON Web Token (JWT) onaylarını desteklemeli ve check, create ve get amaçlarını uygulamalıdır.

İşleyiş şekli:

Google, kullanıcı hesabını talep eder ve size şu bilgileri iletir:

  • Veritabanınızda bu kullanıcı için bir hesap varsa kullanıcı, Google hizmetinizi hizmetinizdeki hesabına başarıyla bağlar.
  • Veritabanınızda bu kullanıcı için bir hesap yoksa kullanıcı, Google'ın sağladığı iddia edilen bilgilerle yeni bir 3. taraf hesabı oluşturabilir : e-posta, ad ve profil resmi. Alternatif olarak, oturum açıp başka bir e-posta adresiyle bağlantı oluşturmayı seçebilir (Web OAuth aracılığıyla hizmetinizde oturum açmasını gerektirir).

3. Şekil. Sorunsuz bağlantı ile kullanıcının telefonunda hesap bağlama

Hangi iş akışını kullanmalısınız?

Kullanıcılara en iyi bağlantı deneyimini sağlamak için tüm akışları uygulamanızı öneririz. Kullanıcılar bağlama işlemini yalnızca birkaç adımda tamamlayabildiğinden, Kolaylaştırılmış ve Uygulama çevirme akışları bağlantı zorluğunu azaltır. Web OAuth bağlantısı en düşük çaba düzeyine sahiptir ve başlamak için diğer bağlantı akışlarını ekleyebileceğiniz iyi bir yerdir.

Jetonlarla çalışma

Google Hesabı Bağlama, OAuth 2.0 endüstri standardını temel alır.

Hesap sahiplerinin hesaplarını bağlamak ve veri paylaşmak için izin almalarının ardından Google Hesaplarına erişim jetonlarını tek tek Google'a verirsiniz.

Jeton türleri

OAuth 2.0, kullanıcı aracısı, istemci uygulaması ve OAuth 2.0 sunucusu arasında iletişim kurmak için belirteç adı verilen dizeleri kullanır.

Hesap bağlama sırasında üç tür OAuth 2.0 jetonu kullanılabilir:

  • Yetki kodu . Erişim ve yenileme belirteci ile değiştirilebilen kısa ömürlü bir belirteç. Güvenlik nedeniyle, Google, tek kullanımlık veya çok kısa ömürlü bir kod almak için yetkilendirme uç noktanızı arar.

  • Erişim belirteci . Taşıyıcının bir kaynağa erişmesine izin veren bir belirteç. Bu jetonun kaybından kaynaklanabilecek maruziyeti sınırlamak için, sınırlı bir ömrü vardır ve genellikle bir saat kadar sonra sona erer.

  • Jetonu yenileyin . Bir erişim belirtecinin süresi dolduğunda yeni bir erişim belirteci ile değiştirilebilen uzun ömürlü bir belirteç. Hizmetiniz Google ile entegre olduğunda, bu jeton yalnızca Google tarafından saklanır ve kullanılır. Google, kullanıcı verilerine erişmek için kullanılan erişim jetonları için yenileme jetonlarını değiştirmek için jeton değişimi uç noktanızı çağırır.

Jeton işleme

Kümelenmiş ortamlardaki ve istemci-sunucu değişimlerindeki yarış koşulları, belirteçlerle çalışırken karmaşık zamanlama ve hata işleme senaryolarına neden olabilir. Örneğin:

  • Yeni bir erişim belirteci için bir istek alırsınız ve yeni bir erişim belirteci verirsiniz. Eşzamanlı olarak, önceki, süresi dolmamış erişim belirtecini kullanarak hizmetinizin kaynağına erişim isteği alırsınız.
  • Yenileme belirteci yanıtınız henüz Google tarafından alınmadı (veya hiçbir zaman alınmadı). Bu arada, önceden geçerli olan yenileme simgesi, Google'dan gelen bir istekte kullanılır.

İstekler ve yanıtlar herhangi bir sırada gelebilir veya bir kümede çalışan eşzamansız hizmetler, ağ davranışı veya başka yollardan dolayı gelmeyebilir.

Hem sizin hem de Google'ın jeton işleme sistemleri içinde ve arasında anında ve tamamen tutarlı paylaşılan durum garanti edilemez. Birden fazla geçerli, süresi dolmamış jeton, kısa bir süre içinde sistemler içinde veya arasında bir arada bulunabilir. Olumsuz kullanıcı etkisini en aza indirmek için aşağıdakileri yapmanızı öneririz:

  • Daha yeni bir belirteç verildikten sonra bile süresi dolmamış erişim belirteçlerini kabul edin.
  • Token Rotasyonunu Yenilemek için alternatifler kullanın.
  • Birden çok, eşzamanlı olarak geçerli erişim ve yenileme belirteçlerini destekleyin. Güvenlik için, belirteç sayısını ve belirteç ömrünü sınırlamalısınız.
Bakım ve kesinti yönetimi

Bakım veya planlanmamış kesintiler sırasında Google, erişim ve yenileme jetonları elde etmek için yetkilendirmenizi veya jeton değişim uç noktalarını arayamayabilir.

Uç noktalarınız bir 503 hata kodu ve boş gövde ile yanıt vermelidir. Bu durumda Google, sınırlı bir süre için başarısız jeton değişimi isteklerini yeniden dener. Google'ın daha sonra yenileme ve erişim belirteçleri alabilmesi koşuluyla, başarısız istekler kullanıcılar tarafından görülemez.

Erişim belirteci için başarısız istekler, bir kullanıcı tarafından başlatılırsa gözle görülür bir hatayla sonuçlanır. Örtük OAuth 2.0 akışı kullanılıyorsa, kullanıcıların bağlanma hatalarını yeniden denemeleri gerekecektir.

Öneriler

Bakım etkisini en aza indirmek için birçok çözüm vardır. Dikkate alınacak bazı seçenekler:

  • Mevcut hizmetinizi koruyun ve sınırlı sayıda talebi yeni güncellenen hizmetinize yönlendirin. Tüm istekleri yalnızca beklenen işlevselliği onayladıktan sonra taşıyın.

  • Bakım dönemi boyunca jeton isteklerinin sayısını azaltın:

    • Bakım dönemlerini erişim jetonunun kullanım süresinden daha kısa bir süre ile sınırlayın.

    • Erişim belirteci ömrünü geçici olarak artırın:

      1. Belirteç ömrünü bakım döneminden daha uzun olacak şekilde artırın.
      2. Erişim jetonunuzun ömrünün iki katı kadar bekleyin, böylece kullanıcıların daha uzun süreli jetonlar için kısa ömürlü jetonları değiş tokuş etmesini sağlayın.
      3. Bakım girin.
      4. Belirteç isteklerine 503 hata kodu ve boş gövde ile yanıt verin.
      5. Bakımdan çıkın.
      6. Belirteç ömrünü normale döndürün.

Google'a kaydolma

OAuth 2.0 kurulumunuzla ilgili ayrıntılı bilgiye ihtiyacımız var ve hesap bağlamayı etkinleştirmek için kimlik bilgilerinizi paylaşacağız. Ayrıntılar için kayıt bölümüne bakın.