Hesaplar, endüstri standardı OAuth 2.0 örtülü ve yetkilendirme kodu akışları kullanılarak bağlanır.
Hizmetiniz, OAuth 2.0 uyumlu yetkilendirme ve jeton değişimi uç noktalarını desteklemelidir.Örtülü akışta Google, yetkilendirme uç noktanızı kullanıcının tarayıcısında açar. Başarılı bir şekilde oturum açtıktan sonra Google'a uzun ömürlü bir erişim jetonu döndürürsünüz. Bu erişim jetonu artık Google'dan gönderilen her isteğe dahil ediliyor.
Yetkilendirme kodu akışında iki uç nokta gerekir:
Oturum açmamış kullanıcılarınıza oturum açma kullanıcı arayüzünü sunan yetkilendirme uç noktası. Yetkilendirme uç noktası, istenen erişime kullanıcıların iznini kaydetmek için kısa ömürlü bir yetkilendirme kodu da oluşturur.
İki tür değişimden sorumlu olan jeton değişimi uç noktası:
- Yetkilendirme kodunu uzun ömürlü bir yenileme jetonu ve kısa ömürlü bir erişim jetonuyla değiştirir. Bu değişim, kullanıcı hesap bağlama akışından geçtiğinde gerçekleşir.
- Uzun ömürlü bir yenileme jetonunu kısa ömürlü bir erişim jetonuyla değiştirir. Bu değişim, Google'ın elindeki erişim jetonunun süresi dolduğu için yeni bir erişim jetonuna ihtiyaç duyduğunda gerçekleşir.
OAuth 2.0 akışı seçme
Dolaylı akışın uygulanması daha basit olsa da Google, dolaylı akış tarafından verilen erişim jetonlarının hiçbir zaman süresinin dolmamasını önerir. Bunun nedeni, jetonun örtülü akışla süresi dolduktan sonra kullanıcının hesabını tekrar bağlamaya zorlanmasıdır. Güvenlik nedeniyle jetonun süresinin dolması gerekiyorsa bunun yerine yetkilendirme kodu akışını kullanmanızı önemle tavsiye ederiz.
Tasarım yönergeleri
Bu bölümde, OAuth bağlantı akışları için barındırdığınız kullanıcı ekranıyla ilgili tasarım koşulları ve önerileri açıklanmaktadır. Google'ın uygulaması tarafından çağrıldıktan sonra platformunuz, kullanıcıya Google'da oturum açma sayfasını ve hesap bağlama izni ekranını gösterir. Kullanıcı, hesapları bağlamayı kabul ettikten sonra Google'ın uygulamasına geri yönlendirilir.
Şartlar
- Kullanıcı hesabının Google Home veya Google Asistan gibi belirli bir Google ürününe değil Google'a bağlanacağını belirtmeniz gerekir.
Öneriler
Aşağıdakileri yapmanızı öneririz:
Google'ın Gizlilik Politikası'nı gösterin. Kullanıcı rızası ekranına Google'ın Gizlilik Politikası'nın bağlantısını ekleyin.
Paylaşılacak veriler. Google'ın hangi kullanıcı verilerini neden istediğini kullanıcıya açık ve net bir dille açıklayın.
Net harekete geçirici mesaj. İzin ekranınızda "Kabul et ve bağla" gibi net bir harekete geçirici mesaj belirtin. Bunun nedeni, kullanıcıların hesaplarını bağlamak için Google ile hangi verileri paylaşmaları gerektiğini anlamalarıdır.
İptal etme imkanı. Kullanıcılara bağlantı oluşturmamayı tercih etmeleri durumunda geri gitme veya iptal etme seçeneği sunun.
Net oturum açma süreci. Kullanıcıların Google Hesaplarında oturum açmak için net bir yöntemi olduğundan emin olun. Örneğin, kullanıcı adı ve şifre alanları veya Google ile oturum açma.
Bağlantıyı kaldırma özelliği. Kullanıcılara bağlantıyı kaldırma mekanizması sunun. Örneğin, platformunuzdaki hesap ayarlarına yönlendiren bir URL. Alternatif olarak, kullanıcıların bağlı hesaplarını yönetebileceği Google Hesabı'na bir bağlantı ekleyebilirsiniz.
Kullanıcı hesabını değiştirme Kullanıcılara hesaplarını değiştirmeleri için bir yöntem önerin. Bu özellik, özellikle kullanıcıların birden fazla hesabı olduğu durumlarda faydalıdır.
- Kullanıcının hesap değiştirmek için kullanıcı rızası ekranını kapatması gerekiyorsa Google'a kurtarılabilir bir hata gönderin. Böylece kullanıcı, OAuth bağlantısı ve örtülü akışla istediği hesapta oturum açabilir.
Logonuzu ekleyin. Kullanıcı rızası ekranında şirket logonuzu gösterin. Logonuzu yerleştirmek için stil kurallarınızı kullanın. Google'ın logosunu da göstermek istiyorsanız Logolar ve ticari markalar bölümüne bakın.
Projeyi oluşturma
Hesap bağlamayı kullanmak için projenizi oluşturmak üzere:
- Google API Konsolu'na gidin.
- Proje oluştur'u tıklayın.
- Bir ad girin veya oluşturulan öneriyi kabul edin.
- Kalan alanları onaylayın veya düzenleyin.
- Oluştur'u tıklayın.
Proje kimliğinizi görüntülemek için:
- Google API Konsolu'na gidin.
- Açılış sayfasındaki tabloda projenizi bulun. Proje kimliği, Kimlik sütununda görünür.
OAuth kullanıcı rızası ekranınızı yapılandırma
Google Hesabı bağlantısı sürecinde, kullanıcılara verilerine erişim isteyen uygulamayı, hangi tür verileri istediğini ve geçerli şartları bildiren bir kullanıcı rızası ekranı gösterilir. Google API istemci kimliği oluşturmadan önce OAuth kullanıcı rızası ekranınızı yapılandırmanız gerekir.
- Google API'leri konsolunun OAuth kullanıcı rızası ekranı sayfasını açın.
- İstenirse yeni oluşturduğunuz projeyi seçin.
"OAuth kullanıcı rızası ekranı" sayfasında formu doldurun ve "Kaydet" düğmesini tıklayın.
Uygulama adı: İzin isteyen uygulamanın adı. Ad, uygulamanızı doğru bir şekilde yansıtmalı ve kullanıcıların başka yerlerde gördüğü uygulama adıyla tutarlı olmalıdır. Uygulama adı, hesap bağlama kullanıcı rızası ekranında gösterilir.
Uygulama logosu: Kullanıcıların uygulamanızı tanımasına yardımcı olacak, kullanıcı rızası ekranında gösterilen bir resim. Logo, hesap bağlama kullanıcı rızası ekranında ve hesap ayarlarında gösterilir.
Destek e-postası: Kullanıcıların rızalarıyla ilgili soruları için sizinle iletişime geçmesi amacıyla.
Google API'leri için kapsamlar: Kapsamlar, uygulamanızın kullanıcınızın gizli Google verilerine erişmesine olanak tanır. Google Hesabı Bağlantısı kullanım alanı için varsayılan kapsam (e-posta, profil, openid) yeterlidir. Hassas kapsamlar eklemeniz gerekmez. Genel olarak, kapsamları önceden değil, erişim gerektiğinde artımlı olarak istemek en iyi uygulamadır. Daha fazla bilgi edinin.
Yetkilendirilen alanlar: Google, sizi ve kullanıcılarınızı korumak için yalnızca OAuth kullanarak kimlik doğrulayan uygulamaların yetkilendirilen alanları kullanmasına izin verir. Uygulamalarınızın bağlantıları, yetkilendirilmiş alanlarda barındırılmalıdır. Daha fazla bilgi edinin.
Uygulama ana sayfası bağlantısı: Uygulamanızın ana sayfası. Yetkili bir alan adında barındırılmalıdır.
Uygulama gizlilik politikası bağlantısı: Google Hesabı Bağlama kullanıcı rızası ekranında gösterilir. Yetkili bir alan adında barındırılmalıdır.
Uygulama Hizmet Şartları bağlantısı (isteğe bağlı): Yetkili bir alanda barındırılmalıdır.
Şekil 1. Kurgusal bir uygulama olan Tunery için Google Hesabı bağlantısı İzin Ekranı
"Doğrulama Durumu"nu kontrol edin. Uygulamanızın doğrulanması gerekiyorsa "Doğrulamaya Gönder" düğmesini tıklayarak uygulamanızı doğrulamaya gönderin. Ayrıntılı bilgi için OAuth doğrulama koşulları başlıklı makaleyi inceleyin.
OAuth sunucunuzu uygulama
Yetkilendirme kodu akışının OAuth 2.0 sunucu uygulaması, hizmetinizin HTTPS üzerinden kullanılabilir hale getirdiği iki uç noktadan oluşur. İlk uç nokta, yetkilendirme uç noktasıdır. Bu uç nokta, veri erişimi için kullanıcılardan izin bulmaktan veya izin almaktan sorumludur. Yetkilendirme uç noktası, henüz oturum açmamış kullanıcılarınıza bir oturum açma kullanıcı arayüzü sunar ve istenen erişim için izni kaydeder. İkinci uç nokta, jeton değişimi uç noktasıdır. Bu uç nokta, kullanıcıya hizmetinize erişme yetkisi veren jeton adı verilen şifrelenmiş dizeleri almak için kullanılır.
Bir Google uygulamasının hizmetinizin API'lerinden birini çağırması gerektiğinde Google, kullanıcılarınızdan bu API'leri onlar adına çağırmak için izin almak üzere bu uç noktaları birlikte kullanır.
Google Hesabı bağlantısı: OAuth Yetkilendirme Kodu Akışı
Aşağıdaki sıra diyagramı, Kullanıcı, Google ve hizmetinizin uç noktaları arasındaki etkileşimleri ayrıntılı olarak açıklar.
Roller ve sorumluluklar
Aşağıdaki tabloda, Google Hesap Bağlama (GAL) OAuth akışındaki aktörlerin rolleri ve sorumlulukları tanımlanmaktadır. GAL'de Google'ın OAuth istemcisi, hizmetinizin ise kimlik/hizmet sağlayıcı olarak hareket ettiğini unutmayın.
| İşlemi gerçekleştiren / Bileşen | GAL Rolü | Sorumluluklar |
|---|---|---|
| Google Uygulaması / Sunucusu | OAuth İstemcisi | Akışı başlatır, yetkilendirme kodunu alır, jetonlarla değiştirir ve hizmetinizin API'lerine erişmek için bunları güvenli bir şekilde depolar. |
| Yetkilendirme uç noktanız | Yetkilendirme Sunucusu | Kullanıcılarınızın kimliğini doğrular ve verilerine erişim iznini Google ile paylaşmak için kullanıcılarınızın iznini alır. |
| Jeton Değişimi Uç Noktanız | Yetkilendirme Sunucusu | Yetkilendirme kodlarını ve yenileme jetonlarını doğrular ve Google sunucusuna erişim jetonları verir. |
| Google Yönlendirme URI'si | Geri Arama Uç Noktası | Kullanıcı yönlendirmesini, yetkilendirme hizmetinizden code ve state değerleriyle birlikte alır. |
Google tarafından başlatılan bir OAuth 2.0 yetkilendirme kodu akışı oturumu aşağıdaki akışa sahiptir:
- Google, yetkilendirme uç noktanızı kullanıcının tarayıcısında açar. İşlem için akış yalnızca sesli cihazda başlatıldıysa Google, yürütmeyi telefona aktarır.
- Kullanıcı, henüz oturum açmadıysa oturum açar ve Google'a, daha önce izin vermediyse API'nizle verilerine erişme izni verir.
- Hizmetiniz bir yetkilendirme kodu oluşturur ve bunu Google'a döndürür. Bunu yapmak için kullanıcının tarayıcısını, isteğe eklenmiş yetkilendirme koduyla birlikte Google'a geri yönlendirin.
- Google, yetkilendirme kodunu jeton değişimi uç noktanıza gönderir. Bu uç nokta, kodun gerçekliğini doğrulayıp bir erişim jetonu ve bir yenileme jetonu döndürür. Erişim jetonu, hizmetinizin API'lere erişmek için kimlik bilgisi olarak kabul ettiği kısa ömürlü bir jetondur. Yenileme jetonu, Google'ın saklayabileceği ve süresi dolduğunda yeni erişim jetonları almak için kullanabileceği uzun ömürlü bir jetondur.
- Kullanıcı, hesap bağlama akışını tamamladıktan sonra Google'dan gönderilen her sonraki istekte bir erişim jetonu bulunur.
Yetkilendirme isteklerini işleme
OAuth 2.0 yetkilendirme kodu akışını kullanarak hesap bağlama işlemini gerçekleştirmeniz gerektiğinde Google, kullanıcıyı yetkilendirme uç noktanıza aşağıdaki parametreleri içeren bir istekle yönlendirir:
| Yetkilendirme uç noktası parametreleri | |
|---|---|
client_id |
Google'a atadığınız müşteri kimliği. |
redirect_uri |
Bu isteğe verilen yanıtı gönderdiğiniz URL. |
state |
Yönlendirme URI'sinde Google'a değiştirilmeden geri aktarılan bir muhasebe değeri. |
scope |
İsteğe bağlı: Google'ın yetkilendirme istediği verileri belirten, boşlukla ayrılmış bir kapsam dizeleri grubu. |
response_type |
Yanıt içinde döndürülecek değerin türü. OAuth 2.0
yetkilendirme kodu akışı için yanıt türü her zaman code'dır.
|
user_locale |
İçeriğinizi kullanıcının tercih ettiği dilde yerelleştirmek için kullanılan, RFC5646 biçimindeki Google Hesabı dil ayarı. |
Örneğin, yetkilendirme uç noktanız https://myservice.example.com/auth adresinde kullanılabiliyorsa istek şu şekilde görünebilir:
GET https://myservice.example.com/auth?client_id=GOOGLE_CLIENT_ID&redirect_uri=REDIRECT_URI&state=STATE_STRING&scope=REQUESTED_SCOPES&response_type=code&user_locale=LOCALE
Yetkilendirme uç noktanızın oturum açma isteklerini işlemesi için aşağıdaki adımları uygulayın:
client_iddeğerinin, Google'a atadığınız istemci kimliğiyle,redirect_urideğerinin ise Google'ın hizmetiniz için sağladığı yönlendirme URL'siyle eşleştiğini doğrulayın. Bu kontroller, istem dışı veya yanlış yapılandırılmış istemci uygulamalarına erişim verilmesini önlemek için önemlidir. Birden fazla OAuth 2.0 akışını destekliyorsanızresponse_typedeğerinincodeolduğunu da onaylayın.- Kullanıcının hizmetinizde oturum açıp açmadığını kontrol edin. Kullanıcı oturum açmamışsa hizmetinizin oturum açma veya kaydolma akışını tamamlayın.
- Google'ın API'nize erişmek için kullanacağı bir yetkilendirme kodu oluşturun. Yetkilendirme kodu herhangi bir dize değeri olabilir ancak kullanıcıyı, jetonun ait olduğu istemciyi ve kodun geçerlilik bitiş zamanını benzersiz bir şekilde temsil etmeli ve tahmin edilebilir olmamalıdır. Genellikle yaklaşık 10 dakika sonra geçerliliğini yitiren yetkilendirme kodları veriyorsunuz.
redirect_uriparametresiyle belirtilen URL'nin aşağıdaki biçimde olduğunu doğrulayın:https://oauth-redirect.googleusercontent.com/r/YOUR_PROJECT_ID https://oauth-redirect-sandbox.googleusercontent.com/r/YOUR_PROJECT_ID
- Kullanıcının tarayıcısını
redirect_uriparametresiyle belirtilen URL'ye yönlendirin.codevestateparametrelerini ekleyerek yönlendirme yaptığınızda, az önce oluşturduğunuz yetkilendirme kodunu ve orijinal, değiştirilmemiş durum değerini ekleyin. Aşağıda, sonuç URL'sine dair bir örnek verilmiştir:https://oauth-redirect.googleusercontent.com/r/YOUR_PROJECT_ID?code=AUTHORIZATION_CODE&state=STATE_STRING
Jeton değişimi isteklerini işleme
Hizmetinizin jeton değişimi uç noktası iki tür jeton değişiminden sorumludur:
- Erişim jetonları ve yenileme jetonları için yetkilendirme kodlarını değiştirme
- Yenileme jetonlarını erişim jetonlarıyla değiştirme
Jeton değişimi istekleri aşağıdaki parametreleri içerir:
| Jeton değişimi uç noktası parametreleri | |
|---|---|
client_id |
İstek kaynağını Google olarak tanımlayan bir dize. Bu dize, sisteminizde Google'ın benzersiz tanımlayıcısı olarak kaydedilmelidir. |
client_secret |
Hizmetiniz için Google'a kaydettirdiğiniz gizli dize. |
grant_type |
Değiştirilen jetonun türü. authorization_code veya refresh_token olmalıdır. |
code |
grant_type=authorization_code olduğunda bu parametre, Google'ın oturum açma veya jeton değişimi uç noktanızdan aldığı koddur. |
redirect_uri |
grant_type=authorization_code olduğunda bu parametre, ilk yetkilendirme isteğinde kullanılan URL'dir. |
refresh_token |
grant_type=refresh_token olduğunda bu parametre, Google'ın jeton değişimi uç noktanızdan aldığı yenileme jetonudur. |
Erişim jetonları ve yenileme jetonları için yetkilendirme kodlarını değiştirme
Kullanıcı oturum açtıktan ve yetkilendirme uç noktanız Google'a kısa ömürlü bir yetkilendirme kodu döndürdükten sonra Google, yetkilendirme kodunu erişim jetonu ve yenileme jetonu ile değiştirmek için jeton değişimi uç noktanıza bir istek gönderir.
Bu isteklerde grant_type değeri authorization_code, code değeri ise daha önce Google'a verdiğiniz yetkilendirme kodunun değeridir. Aşağıda, yetkilendirme kodunu erişim jetonu ve yenileme jetonuyla değiştirme isteğine ilişkin bir örnek verilmiştir:
POST /token HTTP/1.1 Host: oauth2.example.com Content-Type: application/x-www-form-urlencoded client_id=GOOGLE_CLIENT_ID&client_secret=GOOGLE_CLIENT_SECRET&grant_type=authorization_code&code=AUTHORIZATION_CODE&redirect_uri=REDIRECT_URI
Yetkilendirme kodlarını erişim jetonu ve yenileme jetonuyla değiştirmek için jeton değişimi uç noktanız, aşağıdaki adımları uygulayarak POST isteklerine yanıt verir:
client_iddeğerinin, isteğin kaynağını yetkili bir kaynak olarak tanımladığını veclient_secretdeğerinin beklenen değerle eşleştiğini doğrulayın.- Yetkilendirme kodunun geçerli ve süresinin dolmadığını, ayrıca istekte belirtilen istemci kimliğinin yetkilendirme koduyla ilişkili istemci kimliğiyle eşleştiğini doğrulayın.
redirect_uriparametresiyle belirtilen URL'nin, ilk yetkilendirme isteğinde kullanılan değerle aynı olduğunu doğrulayın.- Yukarıdaki tüm ölçütleri doğrulayamıyorsanız gövde olarak
{"error": "invalid_grant"}ile bir HTTP 400 Bad Request hatası döndürün. - Aksi takdirde, yenileme jetonu ve erişim jetonu oluşturmak için yetkilendirme kodundaki kullanıcı kimliğini kullanın. Bu jetonlar herhangi bir dize değeri olabilir ancak jetonun ait olduğu kullanıcıyı ve istemciyi benzersiz şekilde temsil etmeli ve tahmin edilememelidir. Erişim jetonları için jetonun geçerlilik bitiş zamanını da kaydedin. Bu süre genellikle jetonu yayınladıktan bir saat sonra sona erer. Yenileme jetonlarının süresi dolmaz.
- HTTPS yanıtının gövdesinde aşağıdaki JSON nesnesini döndürün:
{ "token_type": "Bearer", "access_token": "ACCESS_TOKEN", "refresh_token": "REFRESH_TOKEN", "expires_in": SECONDS_TO_EXPIRATION }
Google, kullanıcının erişim jetonunu ve yenileme jetonunu saklar ve erişim jetonunun geçerlilik bitimini kaydeder. Erişim jetonunun süresi dolduğunda Google, jeton değişimi uç noktanızdan yeni bir erişim jetonu almak için yenileme jetonunu kullanır.
Yenileme jetonlarını erişim jetonlarıyla değiştirme
Erişim jetonunun süresi dolduğunda Google, yenileme jetonunu yeni bir erişim jetonuyla değiştirmek için jeton değişimi uç noktanıza bir istek gönderir.
Bu isteklerde grant_type değeri refresh_token, refresh_token değeri ise daha önce Google'a verdiğiniz yenileme jetonunun değeridir. Aşağıda, yenileme jetonunu erişim jetonuyla değiştirme isteğine dair bir örnek verilmiştir:
POST /token HTTP/1.1 Host: oauth2.example.com Content-Type: application/x-www-form-urlencoded client_id=GOOGLE_CLIENT_ID&client_secret=GOOGLE_CLIENT_SECRET&grant_type=refresh_token&refresh_token=REFRESH_TOKEN
Yenileme jetonunu erişim jetonuyla değiştirmek için jeton değişimi uç noktanız, POST isteklerine aşağıdaki adımları uygulayarak yanıt verir:
client_idparametresinin istek kaynağını Google olarak tanımladığını veclient_secretparametresinin beklenen değerle eşleştiğini doğrulayın.- Yenileme jetonunun geçerli olduğunu ve istekte belirtilen istemci kimliğinin, yenileme jetonuyla ilişkilendirilmiş istemci kimliğiyle eşleştiğini doğrulayın.
- Yukarıdaki tüm ölçütleri doğrulayamıyorsanız gövde olarak
{"error": "invalid_grant"}ile bir HTTP 400 Bad Request hatası döndürün. - Aksi takdirde, erişim jetonu oluşturmak için yenileme jetonunun kullanıcı kimliğini kullanın. Bu jetonlar herhangi bir dize değeri olabilir ancak jetonun ait olduğu kullanıcıyı ve istemciyi benzersiz şekilde temsil etmeli ve tahmin edilebilir olmamalıdır. Erişim jetonları için jetonun geçerlilik bitiş süresini de kaydedin. Bu süre genellikle jetonu yayınladıktan bir saat sonra sona erer.
- HTTPS yanıtının gövdesinde aşağıdaki JSON nesnesini döndürün:
{ "token_type": "Bearer", "access_token": "ACCESS_TOKEN", "expires_in": SECONDS_TO_EXPIRATION }
Kullanıcı bilgileri isteklerini işleme
userinfo uç noktası, bağlı kullanıcıyla ilgili hak taleplerini döndüren, OAuth 2.0 korumalı bir kaynaktır. Kullanıcı bilgileri uç noktasını uygulamak ve barındırmak, aşağıdaki kullanım alanları hariç isteğe bağlıdır:
- Google One Tap ile Bağlı Hesapta Oturum Açma.
- AndroidTV'de sorunsuz abonelik.
Erişim jetonu, jeton uç noktanızdan başarıyla alındıktan sonra Google, bağlı kullanıcıyla ilgili temel profil bilgilerini almak için kullanıcı bilgileri uç noktanıza bir istek gönderir.
| kullanıcı bilgileri uç nokta istek başlıkları | |
|---|---|
Authorization header |
Taşıyıcı türündeki erişim jetonu. |
Örneğin, kullanıcı bilgileri uç noktanız
https://myservice.example.com/userinfo, talep aşağıdaki gibi görünebilir:
GET /userinfo HTTP/1.1 Host: myservice.example.com Authorization: Bearer ACCESS_TOKEN
Kullanıcı bilgileri uç noktanızın istekleri işlemesi için aşağıdaki adımları uygulayın:
- Yetkilendirme başlığından erişim jetonunu çıkarın ve erişim jetonuyla ilişkilendirilmiş kullanıcının bilgilerini döndürün.
- Erişim jetonu geçersizse
WWW-Authenticateyanıt üstbilgisini kullanarak HTTP 401 Yetkilendirilmemiş hatası döndürün. Aşağıda kullanıcı bilgileri hata yanıtı örneği verilmiştir: Bağlama işlemi sırasında 401 Yetkilendirilmedi veya başka bir başarısız hata yanıtı döndürülürse bu hata düzeltilemez, alınan jeton silinir ve kullanıcının bağlantı oluşturma işlemini yeniden başlatması gerekir.HTTP/1.1 401 Unauthorized WWW-Authenticate: error="invalid_token", error_description="The Access Token expired"
Erişim jetonu geçerliyse HTTPS gövdesinde aşağıdaki JSON nesnesiyle HTTP 200 yanıtını döndürün ve HTTP 200 yanıtını alın yanıt:
Kullanıcı bilgileri uç noktanız HTTP 200 başarılı yanıtı döndürürse alınan jeton ve hak talepleri kullanıcının Google Hesabı'na kaydedilir.{ "sub": "USER_UUID", "email": "EMAIL_ADDRESS", "given_name": "FIRST_NAME", "family_name": "LAST_NAME", "name": "FULL_NAME", "picture": "PROFILE_PICTURE", }userinfo uç nokta yanıtı subSisteminizdeki kullanıcıyı tanımlayan benzersiz bir kimlik. emailKullanıcının e-posta adresi. given_nameİsteğe bağlı: Kullanıcının adı. family_nameİsteğe bağlı: Kullanıcının soyadı. nameİsteğe bağlı: Kullanıcının tam adı. pictureİsteğe bağlı: Kullanıcının profil resmi.
Uygulamanızı doğrulama
You can validate your implementation by using the OAuth 2.0 Playground tool.
In the tool, do the following steps:
- Click Configuration to open the OAuth 2.0 Configuration window.
- In the OAuth flow field, select Client-side.
- In the OAuth Endpoints field, select Custom.
- Specify your OAuth 2.0 endpoint and the client ID you assigned to Google in the corresponding fields.
- In the Step 1 section, don't select any Google scopes. Instead, leave this field blank or type a scope valid for your server (or an arbitrary string if you don't use OAuth scopes). When you're done, click Authorize APIs.
- In the Step 2 and Step 3 sections, go through the OAuth 2.0 flow and verify that each step works as intended.
You can validate your implementation by using the Google Account Linking Demo tool.
In the tool, do the following steps:
- Click the Sign in with Google button.
- Choose the account you'd like to link.
- Enter the service ID.
- Optionally enter one or more scopes that you will request access for.
- Click Start Demo.
- When prompted, confirm that you may consent and deny the linking request.
- Confirm that you are redirected to your platform.