Google OpenID Connect API Referansı

Bu sayfada, Google'ın OpenID Connect sağlayıcı olarak uygulaması açıklanmakta ve Google'ın OIDC uç noktaları için teknik referans sağlanmaktadır. OpenID Connect (OIDC) Core 1.0 spesifikasyonu, kullanıcıların kimliğini doğrulama ve kimlik bilgilerini alma protokolünü tanımlar.

Bu referans, OIDC'nin nasıl uygulanacağıyla ilgili adım adım talimatlar sağlamak için tasarlanmamıştır. Uygulama ayrıntıları için OpenID Connect kılavuzuna bakın.

Keşif belgesi

Keşif Belgesi, OpenID Connect Discovery 1.0 spesifikasyonunda tanımlandığı şekliyle Google'ın OpenID Connect yapılandırmasıyla ilgili meta verileri içerir.

URL: https://accounts.google.com/.well-known/openid-configuration

Desteklenen istek yöntemi: GET

Yanıt metni

Yanıt alanları, HTTP yanıtının gövdesinde, istekte bulunanın GET isteğine yönelik https://accounts.google.com/.well-known/openid-configuration yanıtında bir JSON nesnesi olarak döndürülür.

Alan Tür Açıklama
issuer string Kart sağlayıcı tanımlayıcısı. https şemasını kullanan, büyük/küçük harfe duyarlı URL. Modern değer https://accounts.google.com'dır ancak eski uygulamalar için accounts.google.com de döndürülür.
authorization_endpoint string Yetkilendirme uç noktasının URL'si.
device_authorization_endpoint string Cihaz Yetkilendirme Uç Noktası'nın URL'si.
token_endpoint string Jeton uç noktasının URL'si.
userinfo_endpoint string UserInfo uç noktasının URL'si.
revocation_endpoint string İptal uç noktasının URL'si.
jwks_uri string JSON Web Anahtarı Kümesi (JWKS) belgesinin URL'si.
response_types_supported array Desteklenen response_type değerlerinin listesi.
response_modes_supported array Desteklenen response_mode değerlerinin listesi.
authorization_response_iss_parameter_supported boolean RFC 9207'nin desteklenip desteklenmediğini belirten Boole değeri.
subject_types_supported array Desteklenen konu tanımlayıcı türlerinin listesi.
id_token_signing_alg_values_supported array Kimlik jetonunu imzalamak için desteklenen algoritmaların listesi.
scopes_supported array Desteklenen kapsam değerlerinin listesi.
claims_supported array Desteklenen hak taleplerinin listesi.
token_endpoint_auth_methods_supported array Jeton uç noktası için desteklenen kimlik doğrulama yöntemlerinin listesi.
code_challenge_methods_supported array PKCE için desteklenen kod kimlik sorgulaması yöntemlerinin listesi.
grant_types_supported array Desteklenen OAuth 2.0 erişim izni türlerinin listesi.

Kimlik jetonu (talepler)

Yanıtlar içinde döndürülen id_token değeri, Discovery belgesinde bulunan jwks_uri öğesinden alınan anahtarlama materyali kullanılarak doğrulanması gereken imzalı bir JSON Web Token'dır (JWT). Aşağıdaki tabloda, kod çözülmüş kimlik jetonu yükünün içeriği açıklanmaktadır.

İddia Tür Açıklama
iss string Zorunlu. Yanıtı veren tarafın veren tanımlayıcısı. Genellikle https://accounts.google.com; ancak eski uygulamalar için accounts.google.com de döndürülür.
sub string Zorunlu. Kullanıcı için, tüm Google Hesapları arasında benzersiz olan ve asla yeniden kullanılmayan bir tanımlayıcı. Bir Google Hesabı'nın farklı zamanlarda birden fazla e-posta adresi olabilir ancak sub değeri hiçbir zaman değiştirilmez. Uygulamanızda kullanıcı için benzersiz tanımlayıcı anahtar olarak sub kullanın. Maksimum uzunluk 255 büyük/küçük harfe duyarlı ASCII karakteridir.
azp string Yetkili sunum yapan kişinin Google Cloud Console'dan alınan istemci tanımlayıcısı. Bu talep yalnızca kimlik jetonunu isteyen taraf ile kimlik jetonunun hedef kitlesi aynı olmadığında gereklidir.
aud string Zorunlu. Kimlik jetonunun amaçlandığı kitle. Bu, Google Cloud Console'dan alınan uygulamanızın istemci tanımlayıcısıdır.
iat integer Zorunlu. Kimlik jetonunun düzenlenme zamanı. Unix epoch zamanı (tam sayı saniye) olarak gösterilir.
exp integer Zorunlu. Kimlik jetonunun kabul edilmemesi gereken son kullanma tarihi. Unix epoch zamanı (tam sayı saniye) olarak gösterilir.
nonce string Kimlik doğrulama isteğinde uygulamanız tarafından sağlanan nonce değeri. Bu değeri yalnızca bir kez sunarak tekrar oynama saldırılarına karşı koruma sağlamalısınız.
auth_time integer Kullanıcı kimlik doğrulamasının gerçekleştiği zaman. Unix zamanının başlangıcından (1 Ocak 1970, 00:00:00 UTC) bu yana geçen saniye sayısını temsil eden bir JSON sayısıdır. auth_time talebi, kimlik doğrulama isteği claims parametresine dahil edildiğinde sağlanır.
at_hash string Erişim jetonu karması. Erişim jetonunun kimlik jetonuna bağlı olduğunu doğrulama Kimlik jetonu, sunucu akışında bir access_token değeriyle verildiyse bu talep her zaman dahil edilir.
email string Kullanıcının e-posta adresi. Yalnızca isteğinize email kapsamını dahil ettiyseniz sağlanır. Bu talebin değeri bu hesaba özgü olmayabilir ve zaman içinde değişebilir. Bu nedenle, bu değeri kullanıcı kaydınıza bağlanmak için birincil tanımlayıcı olarak kullanmamalısınız. Google Workspace veya Cloud kuruluşlarının kullanıcılarını tanımlamak için email talebinin alanına da güvenemezsiniz. Bunun yerine hd talebini kullanın.

Uyarı: Bir Google Hesabı'nda farklı zamanlarda birden fazla e-posta adresi olabileceğinden e-posta adresini tanımlayıcı olarak kullanmayın. Kullanıcı tanımlayıcısı olarak her zaman sub alanını kullanın.
email_verified boolean Kullanıcının e-posta adresi doğrulandıysa doğru, aksi halde yanlış değerini alır.
name string Kullanıcının tam adı (görüntülenebilir biçimde). İstek kapsamı profile dizesini içerdiğinde veya kimlik jetonu, jeton yenileme işleminden döndürüldüğünde sağlanabilir.
picture string Kullanıcının profil resminin URL'si. İstek kapsamı profile dizesini içerdiğinde veya kimlik jetonu, jeton yenileme işleminden döndürüldüğünde sağlanabilir.
given_name string Kullanıcının verilen adı veya adları. name talebi olduğunda sağlanabilir.
family_name string Kullanıcının soyadı. name talebi olduğunda sağlanabilir.
hd string Kullanıcının Google Workspace veya Cloud kuruluşuyla ilişkili alan. Yalnızca kullanıcı bir Google Cloud kuruluşuna aitse sağlanır. Bir kaynağa erişimi yalnızca belirli alan adlarının üyeleriyle kısıtlarken bu talebi kontrol etmeniz gerekir. Bu talebin olmaması, hesabın Google tarafından barındırılan bir alan adına ait olmadığını gösterir.

Yetkilendirme Uç Noktası

Yetkilendirme uç noktası, kullanıcının kimliğini doğrulamak ve yetkilendirme kodu ya da jeton almak için kullanılır.

URL: https://accounts.google.com/o/oauth2/v2/auth

Desteklenen istek yöntemleri: GET, POST

İstek parametreleri

Parametre Tür Zorunlu Açıklama
client_id string Zorunlu Google Cloud Console'dan aldığınız istemci tanımlayıcı dizesi.
nonce string İsteğe bağlı Uygulamanız tarafından oluşturulan ve yeniden oynatma korumasını etkinleştiren rastgele bir değer. Yalnızca kimlik jetonu istenirken gereklidir (response_type, id_token içerdiğinde).
response_type string Zorunlu Kullanılacak akışı belirler. Değer code ise jetonları almak için Jeton Uç Noktası'na POST gerektiren bir yetkilendirme kodu akışı başlatır. Değer token, id_token, token id_token veya id_token token ise URI parçasından jeton almak için Yönlendirme URI'sinde JavaScript'in kullanılmasını gerektiren dolaylı akış başlatılır. URL'de erişim jetonlarını açığa çıkardığı için token karakterinin herhangi bir biçimde kullanılması kesinlikle önerilmez. Bu değer, OAuth 2.1'de yasaktır.
response_mode string İsteğe bağlı Yetkilendirme yanıtının nasıl iletileceğini belirtir. response_type değeri code ise varsayılan değer query olur. Diğer yanıt türlerinde varsayılan değer fragment'dır. Desteklenen değerler: query, fragment, form_post.
redirect_uri string Zorunlu Yanıtın nereye gönderileceğini belirler. Bu parametrenin değeri, Google Cloud Console'da ayarladığınız yetkili yönlendirme değerlerinden biriyle tam olarak eşleşmelidir (HTTP veya HTTPS şeması, büyük/küçük harf kullanımı ve varsa sondaki "/" dahil). Yönlendirme URI'leri ve yetkilendirilmiş JavaScript kaynakları, OAuth 2.0 URI doğrulama dokümanında belirtilen doğrulama kurallarına uymalıdır.
scope string Zorunlu Boşlukla ayrılmış, sırasız bir kapsam listesi. Liste, openid değerini ve ardından profile değerini, email değerini veya her ikisini de içermelidir. OIDC olmayan kapsamları da ekleyebilirsiniz. profile kapsam değeri varsa kimlik jetonu, kullanıcının varsayılan profile taleplerini içerebilir (ancak bu garanti edilmez). email kapsam değeri varsa kimlik jetonu email ve email_verified taleplerini içerir. Daha fazla bilgi için OAuth 2.0 Kapsamları başlıklı makaleyi inceleyin.
state string Önerilen Protokolde gidiş-dönüş yapılan opak bir dizedir. Yani yetkilendirme kodu akışında URI parametresi olarak, dolaylı akışta ise URI parçası olarak döndürülür. state, istekleri ve yanıtları ilişkilendirmek için yararlı olabilir. redirect_uri değeriniz tahmin edilebileceğinden, state değeri kullanmak gelen bir bağlantının uygulamanız tarafından başlatılan bir kimlik doğrulama isteğinin sonucu olduğuna dair güvencenizi artırabilir. Bu, siteler arası istek sahteciliği gibi saldırılara karşı koruma sağlar.
access_type string İsteğe bağlı İzin verilen değerler offline ve online'dir. Uygulamanızın, kullanıcı tarayıcıda bulunmadığında erişim jetonlarını yenilemesi gerekiyorsa offline kullanın. Yenileme jetonunun döndürülmesi için bu değer gereklidir.
hd string İsteğe bağlı Google Cloud kuruluşu tarafından sahip olunan hesaplar için oturum açma sürecini kolaylaştırın. Google Cloud kuruluş alanını (ör. mycollege.edu) ekleyerek hesap seçimi kullanıcı arayüzünün bu alandaki hesaplar için optimize edilmesi gerektiğini belirtebilirsiniz. Yalnızca tek bir Google Cloud kuruluşu alanı yerine genellikle Google Cloud kuruluşu hesapları için optimizasyon yapmak istiyorsanız yıldız işareti (*) değerini ayarlayın: hd=*.
login_hint string İsteğe bağlı Uygulamanız, kimliği doğrulanmaya çalışılan kullanıcının kim olduğunu biliyorsa bu parametreyi kimlik doğrulama sunucusuna ipucu olarak sağlayabilir. Bu ipucunu iletmek, hesap seçiciyi devre dışı bırakır ve oturum açma formundaki e-posta kutusunu önceden doldurur veya doğru oturumu seçer. Bu sayede, uygulamanızın yanlış kullanıcı hesabıyla oturum açması durumunda ortaya çıkabilecek sorunları önleyebilirsiniz. Değer, e-posta adresi veya kullanıcının Google kimliğine eşdeğer olan sub dizesi olabilir.
prompt string İsteğe bağlı Yetkilendirme sunucusunun, kullanıcıdan yeniden kimlik doğrulama ve izin isteyip istemediğini belirten, boşlukla ayrılmış dize değerleri listesi. Olası değerler: none (kullanıcı arayüzü yok), consent (izin isteme), select_account (hesap seçme istemi).
hl string İsteğe bağlı Oturum açma, hesap seçici ve izin ekranlarında görüntülenecek dili belirtmek için kullanılan bir BCP 47 dil etiketi. Tarayıcı ayarları ve Google Hesabı tercihleri genellikle kullanıcıların dil tercihleri konusunda daha iyi göstergeler olduğundan bu parametrenin kullanılması önerilmez.
include_granted_scopes boolean İsteğe bağlı Bu parametre true değeriyle sağlanırsa ve yetkilendirme isteği verilirse yetkilendirme, bu kullanıcı/uygulama kombinasyonuna diğer kapsamlar için verilen önceki yetkilendirmeleri de içerir. Artımlı yetkilendirme bölümüne bakın.
claims object İsteğe bağlı claims parametresi, UserInfo yanıtına veya kimlik jetonuna eklenecek bir veya daha fazla isteğe bağlı alanı belirtmek için kullanılır. auth_time talebinde bulunmak için claims={\"id_token\":{\"auth_time\":{\"essential\":true}}} kullanın.

Yanıt parametreleri

Yetkilendirme yanıtı, HTTP GET yönlendirmesi kullanılarak istemcinin yönlendirme URI'sine (redirect_uri) iletilir. Yanıt parametreleri, response_type ve response_mode değerlerine bağlı olarak sorgu dizesindeki veya URL parçasındaki yönlendirme URI'sine eklenir.

Parametre Tür Açıklama
iss string Düzenleyen kuruluş tanımlayıcısı. RFC 9207'ye göre bu parametre her zaman döndürülür ve https://accounts.google.com olarak ayarlanır.
code string Erişim jetonu ve kimlik jetonu ile değiştirilebilen yetkilendirme kodu.
state string İstekten gelen state parametresiyle aynı değer.
id_token string Kullanıcıyla ilgili kimlik bilgilerini içeren bir JSON Web Token (JWT).
access_token string Google API'ye gönderilebilen erişim jetonu.
token_type string Döndürülen jetonun türü. Her zaman Bearer.
expires_in integer Erişim jetonunun, jetonun verildiği zamana göre saniye cinsinden kullanım ömrü.
scope string code veya access_token tarafından verilen erişim kapsamları, boşlukla ayrılmış, büyük/küçük harfe duyarlı dizeler listesi olarak ifade edilir.
error string İstek başarısız olduysa hata kodu.
error_description string İstek başarısız olduysa hatanın açıklaması.

Hata Yanıtları

Yetkilendirme uç noktası için hatalar, sorgu dizesindeki veya URL parçasındaki parametreler olarak istemciye redirect_uri döndürülür ya da kullanıcıya Google tarafından barındırılan bir hata sayfası olarak gösterilir.

Yönlendirilen Hatalar

Aşağıdaki hata kodları redirect_uri öğenize döndürülebilir:

Hata Açıklama
access_denied Kullanıcı veya yetkilendirme sunucusu isteği reddetti.
invalid_request İstek, gerekli bir parametreyi içermiyor, geçersiz bir parametre değeri içeriyor, bir parametreyi birden fazla kez içeriyor veya başka bir şekilde hatalı biçimlendirilmiş.
unauthorized_client İstemcinin bu yöntemi kullanarak yetkilendirme kodu isteme yetkisi yok.
unsupported_response_type Yetkilendirme sunucusu, bu yöntemle yetkilendirme kodu alınmasını desteklemiyor.
invalid_scope İstenen kapsam geçersiz, bilinmiyor veya hatalı biçimlendirilmiş.

Kullanıcıya Yönelik Hatalar

client_id veya redirect_uri geçersiz olduğunda olduğu gibi bazı durumlarda, yetkilendirme sunucusu kullanıcıyı güvenli bir şekilde uygulamanıza geri yönlendiremez. Bu gibi durumlarda, kullanıcıya doğrudan bir hata sayfası gösterilir.

Hata Açıklama
admin_policy_enforced Google Hesabı, Google Workspace yöneticisinin politikaları nedeniyle istenen bir veya daha fazla kapsamı yetkilendiremiyor. Bir yöneticinin, OAuth istemci tanımlayıcınıza açıkça erişim izni verilene kadar erişimi nasıl kısıtlayabileceği hakkında daha fazla bilgi için Google Workspace Yönetici Yardım Merkezi makalesini inceleyin.
disallowed_useragent Yetkilendirme uç noktası, Google'ın OAuth 2.0 Politikaları tarafından izin verilmeyen yerleştirilmiş bir kullanıcı aracısı içinde gösteriliyor.
org_internal İstekteki OAuth istemci tanımlayıcısı, belirli bir Google Cloud kuruluşundaki Google Hesaplarına erişimi sınırlayan bir projenin parçasıdır.
deleted_client İsteği göndermek için kullanılan OAuth istemcisi silinmiştir. Silme işlemi manuel olarak veya kullanılmayan istemciler söz konusu olduğunda otomatik olarak gerçekleşebilir.
invalid_grant PKCE kullanılırken code_challenge parametresi geçersiz veya eksik. Erişim jetonu yenilenirken veya artımlı yetkilendirme kullanılırken jetonun süresi dolmuş, jeton geçersiz kılınmış ya da kullanıcı hesabı silinmiş veya devre dışı bırakılmış olabilir.
redirect_uri_mismatch İstekle iletilen redirect_uri, istemci tanımlayıcısı için yetkili bir yönlendirme URI'siyle eşleşmiyor. Google Cloud Console'da yetkilendirilmiş yönlendirme URI'lerini inceleyin. Bu hata, istekte kullanımdan kaldırılan bant dışı (OOB) OAuth akışı kullanılıyorsa da oluşabilir.
invalid_client İsteğin yapıldığı kaynak bu istemci için yetkilendirilmemiş, istemci yapılandırması yanlış veya OAuth istemci gizli anahtarı yanlış.
origin_mismatch Yetkilendirme isteğini başlatan JavaScript'in şeması, alanı ve/veya bağlantı noktası, OAuth istemci tanımlayıcısı için kaydedilmiş yetkili bir JavaScript kaynağı URI'siyle eşleşmiyor. Google Cloud Console'da yetkili JavaScript kaynaklarını inceleyin.
invalid_request İstekle ilgili bir sorun vardı. Bunun nedeni, hatalı biçimlendirilmiş bir istek, gerekli parametrelerin eksik olması veya Google'ın desteklemediği bir yetkilendirme yönteminin kullanılması olabilir.

Jeton Uç Noktası

Jeton uç noktası, yetkilendirme kodunu erişim jetonu ve kimlik jetonu ile değiştirmek için kullanılır.

URL: https://oauth2.googleapis.com/token

Desteklenen istek yöntemi: POST

İstek parametreleri (yetkilendirme kodu izni)

Parametre Tür Zorunlu Açıklama
code string Zorunlu Yetkilendirme uç noktasından alınan yetkilendirme kodu.
client_id string Zorunlu Uygulamanızın istemci tanımlayıcısı. Bu tanımlayıcıyı Google Cloud Console'dan edinebilirsiniz.
client_secret string Zorunlu Uygulamanızın istemci gizli anahtarı, Google Cloud Console'dan alınır.
redirect_uri string Zorunlu İlk yetkilendirme isteğinde kullanılan yönlendirme URI'si. Yönlendirme URI'leri ve yetkilendirilmiş JavaScript kaynakları, OAuth 2.0 URI doğrulama dokümanında belirtilen doğrulama kurallarına uymalıdır.
grant_type string Zorunlu authorization_code olarak ayarlanmalıdır.

İstek parametreleri (Cihaz Akışı)

Parametre Tür Zorunlu Açıklama
client_id string Zorunlu Uygulamanızın istemci tanımlayıcısı. Bu tanımlayıcıyı Google Cloud Console'dan edinebilirsiniz.
client_secret string Zorunlu Uygulamanızın istemci gizli anahtarı, Google Cloud Console'dan alınır.
device_code string Zorunlu Cihaz yetkilendirme uç noktası tarafından döndürülen device_code.
grant_type string Zorunlu urn:ietf:params:oauth:grant-type:device_code olarak ayarlanmalıdır.

İstek parametreleri (Erişim jetonunu yenileme)

Parametre Tür Zorunlu Açıklama
client_id string Zorunlu Uygulamanızın istemci tanımlayıcısı. Bu tanımlayıcıyı Google Cloud Console'dan edinebilirsiniz.
client_secret string Zorunlu Uygulamanızın istemci gizli anahtarı, Google Cloud Console'dan alınır.
grant_type string Zorunlu OpenID Connect Yenileme Jetonları spesifikasyonunda tanımlandığı şekilde refresh_token olarak ayarlanmalıdır.
refresh_token string Zorunlu Yetkilendirme kodu değişiminden döndürülen yenileme jetonu.
scope string İsteğe bağlı Yeni erişim jetonu için istenen kapsamların boşlukla ayrılmış listesi. İstenen kapsamlar, orijinal yetkilendirme isteğinde verilen kapsamların alt kümesi olmalıdır.

Yanıt metni

Yanıt alanları, HTTP yanıtının gövdesinde, istekte bulunanın POST isteğine yönelik https://oauth2.googleapis.com/token yanıtında bir JSON nesnesi olarak döndürülür.

Alan Tür Açıklama
access_token string Google API'ye gönderilebilen erişim jetonu.
expires_in integer Erişim jetonunun kullanım ömrü (saniye cinsinden, jetonun verildiği zamana göre).
id_token string Kullanıcıyla ilgili kimlik bilgilerini içeren bir JSON Web Token (JWT). Bu jeton, ilk yetkilendirme kodu değişimi sırasında döndürülür ve openid kapsamı verilmişse yenileme jetonu isteği sırasında da döndürülebilir.
scope string access_token tarafından verilen erişim kapsamları, boşlukla ayrılmış ve büyük/küçük harfe duyarlı dizeler listesi olarak ifade edilir.
token_type string Döndürülen jetonun türü. Her zaman Bearer.
refresh_token string (İsteğe bağlı) Yeni erişim jetonları almak için kullanılabilecek bir jeton. Bu alan yalnızca access_type=offline istenmişse yetkilendirme kodunun ilk değişiminde döndürülür.
refresh_token_expires_in integer (İsteğe bağlı) Yenileme jetonunun kalan kullanım ömrü (saniye cinsinden). Bu değer yalnızca kullanıcı zamana dayalı erişim izni verdiğinde ayarlanır.

Hata yanıtları

İstek başarısız olursa yetkilendirme sunucusu aşağıdaki alanları içeren bir JSON nesnesi döndürür:

Alan Tür Açıklama
error string Hata kodu.
error_description string İstek başarısız olduysa hatanın açıklaması.

Aşağıdaki tabloda olası hata kodları ve bunlarla ilişkili HTTP durum kodları açıklanmaktadır:

Hata HTTP Durum Kodu Açıklama
invalid_request 400 İstek, gerekli bir parametreyi içermiyor, geçersiz bir parametre değeri içeriyor veya başka bir şekilde hatalı biçimlendirilmiş.
invalid_client 401 İstemci kimlik doğrulaması başarısız oldu. Örneğin, client_id veya client_secret geçersiz ya da istemci türü yanlış.
invalid_grant 400 Sağlanan yetkilendirme kodu, yenileme jetonu veya cihaz kodu geçersiz, süresi dolmuş, iptal edilmiş ya da yetkilendirme isteğinde kullanılan yönlendirme URI'siyle eşleşmiyor.
unauthorized_client 400 Kimliği doğrulanmış istemcinin bu yetkilendirme izni türünü kullanma yetkisi yok.
unsupported_grant_type 400 Yetkilendirme verme türü, yetkilendirme sunucusu tarafından desteklenmiyor.
invalid_scope 400 İstenen kapsam geçersiz, bilinmiyor veya hatalı biçimlendirilmiş.
authorization_pending 428 (Cihaz Akışı) Kullanıcı, yetkilendirme akışını henüz tamamlamamıştır.
slow_down 429 (Cihaz Akışı) Cihaz, yoklama isteklerini çok sık gönderiyor.
access_denied 403 (Cihaz Akışı) Kullanıcı, cihaza erişim izni vermeyi reddetti.
expired_token 400 (Cihaz akışı) device_code süresi doldu.
admin_policy_enforced 400 Kullanıcı, Google Workspace yöneticisi tarafından uygulanan politikalar nedeniyle istenen kapsamları yetkilendiremiyor.
org_internal 403 İstemci tanımlayıcısı, erişimi belirli bir Google Cloud kuruluşuyla sınırlayan bir projenin parçasıdır.

Cihaz Yetkilendirme Uç Noktası

Cihaz Yetkilendirme Uç Noktası, sınırlı giriş özelliklerine sahip cihazlar için kullanıcı kodu ve doğrulama URL'si almak üzere OAuth 2.0 Cihaz Akışı'nda kullanılır.

URL: https://oauth2.googleapis.com/device/code

Desteklenen istek yöntemi: POST

İstek parametreleri

Parametre Tür Zorunlu Açıklama
client_id string Zorunlu Uygulamanızın istemci tanımlayıcısı. Bu tanımlayıcıyı Google Cloud Console'dan edinebilirsiniz.
scope string Zorunlu Uygulamanızın kullanıcı adına erişebileceği kaynakları tanımlayan, boşlukla ayrılmış kapsam listesi.

Yanıt metni

Yanıt, aşağıdaki alanları içeren bir JSON nesnesidir:

Alan Tür Açıklama
device_code string Google'ın, yetkilendirme isteyen uygulamayı çalıştıran cihazı tanımlamak için benzersiz olarak atadığı bir değer.
user_code string Uygulamanın erişim isteğinde bulunduğu kapsamları Google'a bildiren, büyük/küçük harfe duyarlı bir değer. Kullanıcı arayüzünüz, kullanıcıya bu değeri daha zengin giriş özelliklerine sahip ayrı bir cihaza girmesini söyler.
verification_url string Kullanıcının ayrı bir cihazda user_code girmek ve uygulamanıza erişim izni vermek ya da erişimi reddetmek için gitmesi gereken URL.
expires_in integer device_code ve user_code'nin geçerli olduğu süre (saniye cinsinden).
interval integer Cihazınızın yoklama istekleri arasında beklemesi gereken sürenin uzunluğu (saniye cinsinden).

İptal Uç Noktası

İptal uç noktası, uygulamanızın erişim jetonunu veya yenileme jetonunu iptal etmesine olanak tanır.

URL: https://oauth2.googleapis.com/revoke

Desteklenen istek yöntemi: POST

İstek parametreleri

Parametre Tür Zorunlu Açıklama
token string Zorunlu İptal etmek istediğiniz erişim jetonu veya yenileme jetonu.

Yanıt metni

İptal işlemi başarılı olursa yanıt boş bir HTTP 200 OK olur. İptal işlemi başarısız olursa JSON nesnesinde bir hata yanıtı döndürülür.

Alan Tür Açıklama
error string İstek başarısız olduysa hata kodu.
error_description string İstek başarısız olduysa hatanın açıklaması.

Aşağıdaki tabloda olası hata kodları açıklanmıştır:

Hata Açıklama
invalid_token İstekle sağlanan jetonun süresi dolmuş veya jeton daha önce iptal edilmiş.
invalid_request İstek, gerekli bir parametreyi içermiyor, geçersiz bir parametre değeri içeriyor veya başka bir şekilde hatalı biçimlendirilmiş.

UserInfo uç noktası

UserInfo Endpoint, kimliği doğrulanmış kullanıcı hakkında profil bilgileri döndürür.

URL: https://openidconnect.googleapis.com/v1/userinfo

Desteklenen istek yöntemleri: GET, POST

İstek üst bilgileri

Başlık Açıklama
Authorization Zorunlu. Bearer: access_token olarak ayarlanmalıdır.

Yanıt metni

Yanıt alanları, HTTP yanıtının gövdesinde, istekte bulunanın GET veya POST isteğine yönelik https://openidconnect.googleapis.com/v1/userinfo yanıtında bir JSON nesnesi olarak döndürülür.

Alan Tür Açıklama
sub string Zorunlu. Kullanıcı için, tüm Google Hesapları arasında benzersiz olan ve asla yeniden kullanılmayan bir tanımlayıcı. 255 karakteri aşmayan, büyük/küçük harfe duyarlı dize.
name string Kullanıcının tam adı (görüntülenebilir biçimde).
given_name string Kullanıcının verilen adı veya adları.
family_name string Kullanıcının soyadı.
picture string Kullanıcının profil resminin URL'si.
email string Kullanıcının e-posta adresi.
email_verified boolean Kullanıcının e-posta adresinin doğrulanıp doğrulanmadığı
hd string Kullanıcının Google Workspace veya Cloud kuruluşuyla ilişkili barındırılan alan adı.

Tokeninfo Uç Noktası

tokeninfo uç noktası, hata ayıklama amacıyla bir kimlik jetonunu doğrulamak için kullanılan Google'a özgü bir uygulamadır.

URL: https://oauth2.googleapis.com/tokeninfo

Desteklenen istek yöntemleri: GET, POST

İstek parametreleri

Parametre Tür Zorunlu Açıklama
id_token string Zorunlu Doğrulanacak kimlik jetonu.

Yanıt metni

Yanıt alanları, HTTP yanıtının gövdesinde, istekte bulunanın GET veya POST isteğine yönelik https://oauth2.googleapis.com/tokeninfo yanıtında bir JSON nesnesi olarak döndürülür.

Alan Tür Açıklama
iss string Düzenleyen kuruluş tanımlayıcısı. Her zaman https://accounts.google.com.
sub string Kullanıcı için, tüm Google Hesapları arasında benzersiz olan ve asla yeniden kullanılmayan bir tanımlayıcı.
aud string Kimlik jetonunun amaçlandığı kitle. Bu, Google Cloud Console'dan alınan uygulamanızın istemci tanımlayıcısıdır.
iat integer JWT'nin yayınlandığı zaman. 1970-01-01T0:0:0Z tarihinden itibaren UTC olarak ölçülen saniye sayısı olarak gösterilir.
exp integer Kimlik jetonunun işleme için kabul edilmemesi gereken son kullanma tarihi. 1970-01-01T0:0:0Z tarihinden itibaren UTC olarak ölçülen saniye sayısı olarak gösterilir.
email string Kullanıcının e-posta adresi.
email_verified string Kullanıcının e-posta adresinin doğrulanıp doğrulanmadığı Değer, "true" veya "false" dizesidir.
access_type string Orijinal yetkilendirme isteğinde istenen erişim türü.
azp string Yetkili sunum yapan kişinin Google Cloud Console'dan alınan istemci tanımlayıcısı.
scope string Boşlukla ayrılmış, jetona verilen kapsamlar listesi.
alg string Kimlik jetonunu imzalamak için kullanılan algoritma.
kid string Kimlik jetonunu imzalamak için kullanılan anahtar kimliği.
typ string Jetonun türü. Her zaman JWT.