Dokumentacja interfejsu Google OpenID Connect API

Na tej stronie opisujemy implementację Google jako dostawcy OpenID Connect i podajemy specyfikację techniczną punktów końcowych OIDC Google. Specyfikacja OpenID Connect (OIDC) Core 1.0 definiuje protokół uwierzytelniania użytkowników i uzyskiwania informacji o ich tożsamości.

Ten dokument nie zawiera szczegółowych instrukcji implementacji OIDC. Szczegóły implementacji znajdziesz w przewodniku OpenID Connect.

Dokument opisujący

Dokument wykrywania zawiera metadane dotyczące konfiguracji OpenID Connect od Google, zgodnie ze specyfikacją OpenID Connect Discovery 1.0.

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

Obsługiwana metoda żądania: GET

Treść odpowiedzi

Pola odpowiedzi są zwracane w obiekcie JSON w treści odpowiedzi HTTP na żądanie GET wysłane przez osobę wysyłającą żądanie do https://accounts.google.com/.well-known/openid-configuration.

Pole Typ Opis
issuer string Identyfikator wydawcy. Adres URL z rozróżnianiem wielkości liter, w którym użyto schematu https. Współczesna wartość to https://accounts.google.com, ale w przypadku starszych implementacji zwracana jest też wartość accounts.google.com.
authorization_endpoint string URL punktu końcowego autoryzacji.
device_authorization_endpoint string URL punktu końcowego autoryzacji urządzenia.
token_endpoint string URL punktu końcowego tokena.
userinfo_endpoint string Adres URL punktu końcowego UserInfo.
revocation_endpoint string Adres URL punktu końcowego cofnięcia.
jwks_uri string Adres URL dokumentu zestawu kluczy internetowych JSON (JWKS).
response_types_supported array Lista obsługiwanych wartości response_type.
response_modes_supported array Lista obsługiwanych wartości response_mode.
authorization_response_iss_parameter_supported boolean Wartość logiczna wskazująca obsługę RFC 9207.
subject_types_supported array Lista obsługiwanych typów identyfikatorów podmiotów.
id_token_signing_alg_values_supported array Lista obsługiwanych algorytmów do podpisywania tokena identyfikatora.
scopes_supported array Lista obsługiwanych wartości zakresu.
claims_supported array Lista obsługiwanych roszczeń.
token_endpoint_auth_methods_supported array Lista obsługiwanych metod uwierzytelniania w przypadku punktu końcowego tokena.
code_challenge_methods_supported array Lista obsługiwanych metod testu zabezpieczającego w przypadku PKCE.
grant_types_supported array Lista obsługiwanych typów uwierzytelniania OAuth 2.0.

Token identyfikatora (roszczenia)

Wartość id_token zwracana w odpowiedziach to podpisany token internetowy JSON (JWT), który musi zostać zweryfikowany za pomocą materiału klucza uzyskanego z jwks_uri w dokumencie Discovery. W poniższej tabeli opisano zawartość zdekodowanego ładunku tokena identyfikatora.

Roszczenie Typ Opis
iss string Wymagane. Identyfikator wystawcy odpowiedzi. Zwykle https://accounts.google.com, ale w przypadku starszych implementacji zwracana jest też wartość accounts.google.com.
sub string Wymagane. Identyfikator użytkownika, niepowtarzalny wśród wszystkich kont Google i nieużywany ponownie. Konto Google może mieć w różnych momentach wiele powiązanych adresów e-mail, ale wartość sub nigdy się nie zmienia. Użyj właściwości sub w swojej aplikacji jako unikalnego klucza, a zarazem identyfikatora użytkownika. Maksymalna długość to 255 znaków ASCII z uwzględnieniem wielkości liter.
azp string Identyfikator klienta autoryzowanej aplikacji prezentującej token uzyskany z konsoli Google Cloud. Ta deklaracja jest potrzebna tylko wtedy, gdy strona żądająca tokena tożsamości różni się od jego odbiorcy.
aud string Wymagane. Odbiorcy, dla których jest przeznaczony token tożsamości. Jest to identyfikator klienta aplikacji uzyskany w konsoli Google Cloud.
iat integer Wymagane. Czas wystawienia tokena tożsamości. Podany jako czas uniksowy (całkowita liczba sekund).
exp integer Wymagane. Czas wygaśnięcia, po którym token tożsamości nie może być akceptowany. Podany jako czas uniksowy (całkowita liczba sekund).
nonce string Wartość parametru nonce dostarczona przez aplikację w żądaniu uwierzytelnienia. Zadbaj o to, aby była wyświetlana tylko raz, co zapewni ochronę przed atakami typu replay.
auth_time integer Czas uwierzytelnienia użytkownika, czyli liczba JSON reprezentująca liczbę sekund, które upłynęły od epoki uniksowej (1 stycznia 1970 r., 00:00:00 UTC). Podawany, gdy w parametrze żądania uwierzytelnienia claims znajduje się roszczenie auth_time.
at_hash string Hash tokena dostępu. Potwierdza, że token dostępu jest powiązany z tokenem tożsamości. Jeśli w przepływie po stronie serwera token identyfikatora jest wydawany z wartością access_token, ta deklaracja jest zawsze uwzględniana.
email string Adres e-mail użytkownika. Podawany tylko wtedy, gdy w żądaniu uwzględniono zakres email. Wartość tego roszczenia może nie być unikalna dla tego konta i może się zmieniać z czasem, dlatego nie należy jej używać jako głównego identyfikatora do łączenia z rekordem użytkownika. Nie możesz też polegać na domenie w deklaracji email, aby identyfikować użytkowników organizacji Google Workspace lub Cloud. Zamiast tego użyj deklaracji hd.

Ostrzeżenie: nie używaj adresu e-mail jako identyfikatora, ponieważ konto Google może mieć wiele adresów e-mail w różnych momentach. Zawsze używaj pola sub jako identyfikatora użytkownika.
email_verified boolean Wartość „prawda”, jeśli adres e-mail użytkownika został zweryfikowany. W przeciwnym razie „fałsz”.
name string Pełne imię i nazwisko użytkownika w możliwej do wyświetlenia postaci. Może być podany, gdy zakres żądania zawierał ciąg profile lub token identyfikatora jest zwracany po odświeżeniu tokena.
picture string Adres URL zdjęcia profilowego użytkownika. Może być podany, gdy zakres żądania zawierał ciąg profile lub token identyfikatora jest zwracany po odświeżeniu tokena.
given_name string Imię lub imiona użytkownika. Może być podany, gdy występuje roszczenie name.
family_name string Nazwisko użytkownika. Może być podany, gdy występuje roszczenie name.
hd string Domena powiązana z organizacją Google Workspace lub Cloud użytkownika. Podawana tylko wtedy, gdy użytkownik należy do organizacji Google Cloud. Musisz sprawdzić to roszczenie, gdy ograniczasz dostęp do zasobu tylko do użytkowników z określonych domen. Brak tego roszczenia oznacza, że konto nie należy do domeny hostowanej przez Google.

Authorization Endpoint (Punkt końcowy autoryzacji)

Punkt końcowy autoryzacji służy do uwierzytelniania użytkownika i uzyskiwania kodu autoryzacji lub tokenów.

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

Obsługiwane metody żądania: GET, POST

Parametry żądania

Parametr Typ Wymagane Opis
client_id string Wymagane Ciąg identyfikatora klienta uzyskany w konsoli Google Cloud.
nonce string Opcjonalny Losowa wartość wygenerowana przez aplikację, która umożliwia ochronę przed powtórzeniem. Wymagany tylko w przypadku żądania tokena tożsamości (gdy parametr response_type zawiera parametr id_token).
response_type string Wymagane Określa przepływ do użycia. Jeśli wartość to code, uruchamia przepływ kodu autoryzacji, który wymaga wysłania żądania POST do punktu końcowego tokena w celu uzyskania tokenów. Jeśli wartość to token, id_token, token id_token lub id_token token, uruchamia przepływ niejawny, który wymaga użycia JavaScriptu w identyfikatorze URI przekierowania do pobrania tokenów z fragmentu identyfikatora URI. Używanie token w jakiejkolwiek formie jest wysoce odradzane, ponieważ ujawnia tokeny dostępu w adresie URL. Ta wartość jest zabroniona w OAuth 2.1.
response_mode string Opcjonalny Określa sposób dostarczania odpowiedzi autoryzacyjnej. Jeśli wartość response_type to code, domyślna wartość to query. W przypadku innych typów odpowiedzi domyślna wartość to fragment. Obsługiwane wartości: query, fragment oraz form_post.
redirect_uri string Wymagane Określa, gdzie jest wysyłana odpowiedź. Wartość tego parametru musi być dokładnie taka sama jak jedna z autoryzowanych wartości przekierowania ustawionych w konsoli Google Cloud (w tym schemat HTTP lub HTTPS, wielkość liter i końcowy znak „/”, jeśli występuje). Identyfikatory URI przekierowania i autoryzowane źródła JavaScriptu muszą być zgodne z regułami weryfikacji opisanymi w dokumentacji Weryfikacja identyfikatorów URI OAuth 2.0.
scope string Wymagane Nieuporządkowana lista zakresów rozdzielonych spacjami. Lista musi zawierać wartość openid, a następnie wartość profile, wartość email lub obie te wartości. Możesz też uwzględnić zakresy inne niż OIDC. Jeśli występuje wartość zakresu profile, token identyfikatora może (ale nie musi) zawierać domyślne deklaracje profile użytkownika. Jeśli występuje wartość zakresu email, token identyfikatora zawiera deklaracje emailemail_verified. Więcej informacji znajdziesz w artykule Zakresy OAuth 2.0.
state string Zalecane Nieprzejrzysty ciąg znaków, który jest przekazywany w protokole w obie strony, tzn. jest zwracany jako parametr URI w przypadku przepływu kodu autoryzacji i we fragmencie URI w przypadku przepływu niejawnego. Parametr state może być przydatny do korelowania żądań i odpowiedzi. Ponieważ wartość redirect_uri może zostać odgadnięta, użycie wartości state może zwiększyć pewność, że przychodzące połączenie jest wynikiem żądania uwierzytelnienia zainicjowanego przez aplikację. Zapewnia to ochronę przed atakami, takimi jak fałszowanie żądań z innych witryn.
access_type string Opcjonalny Dozwolone wartości to offlineonline. Jeśli Twoja aplikacja musi odświeżać tokeny dostępu, gdy użytkownik nie jest obecny w przeglądarce, użyj offline. Ta wartość jest wymagana, aby uzyskać token odświeżania.
hd string Opcjonalny Uprość proces logowania na konta należące do organizacji Google Cloud. Jeśli podasz domenę organizacji Google Cloud (np. mycollege.edu), możesz wskazać, że interfejs wyboru konta powinien być zoptymalizowany pod kątem kont w tej domenie. Aby zoptymalizować konta organizacji Google Cloud ogólnie, a nie tylko jedną domenę organizacji Google Cloud, ustaw wartość gwiazdki (*): hd=*.
login_hint string Opcjonalny Gdy aplikacja wie, którego użytkownika próbuje uwierzytelnić, może przekazać ten parametr jako wskazówkę do serwera uwierzytelniającego. Przekazanie tej wskazówki powoduje pominięcie selektora konta i wstępne wypełnienie pola e-mail w formularzu logowania lub wybranie odpowiedniej sesji, co może pomóc uniknąć problemów, które występują, gdy aplikacja loguje się na nieprawidłowe konto użytkownika. Wartością może być adres e-mail lub ciąg znaków sub, który jest odpowiednikiem identyfikatora Google użytkownika.
prompt string Opcjonalny Lista rozdzielonych spacjami wartości tekstowych, która określa, czy serwer autoryzacji prosi użytkownika o ponowne uwierzytelnienie i wyrażenie zgody. Możliwe wartości: none (brak interfejsu), consent (prośba o zgodę), select_account (prośba o wybranie konta).
hl string Opcjonalny Tag języka BCP 47 używany do określania języka wyświetlania ekranów logowania, wyboru konta i zgody. Nie zalecamy używania tego parametru, ponieważ ustawienia przeglądarki i preferencje konta Google zwykle lepiej wskazują preferencje językowe użytkownika.
include_granted_scopes boolean Opcjonalny Jeśli ten parametr ma wartość true, a żądanie autoryzacji zostanie przyznane, autoryzacja będzie obejmować wszystkie poprzednie autoryzacje przyznane tej kombinacji użytkownika i aplikacji w przypadku innych zakresów. Więcej informacji znajdziesz w sekcji Autoryzacja przyrostowa.
claims object Opcjonalny Parametr claims służy do określania co najmniej jednego pola opcjonalnego, które ma być uwzględnione w odpowiedzi UserInfo lub tokenie identyfikatora. Aby poprosić o auth_time roszczenie, użyj claims={\"id_token\":{\"auth_time\":{\"essential\":true}}}.

Parametry odpowiedzi

Odpowiedź autoryzacyjna jest dostarczana do adresu URI przekierowania klienta (redirect_uri) za pomocą przekierowania HTTP GET. Parametry odpowiedzi są dołączane do identyfikatora URI przekierowania w ciągu zapytania lub fragmencie adresu URL w zależności od wartości parametrów response_typeresponse_mode.

Parametr Typ Opis
iss string Identyfikator wydawcy. Zgodnie z dokumentem RFC 9207 ten parametr jest zawsze zwracany i ma wartość https://accounts.google.com.
code string Kod autoryzacji, który można wymienić na token dostępu i token identyfikatora.
state string Ta sama wartość co parametr state z żądania.
id_token string Token sieciowy JSON (JWT), który zawiera informacje o tożsamości użytkownika.
access_token string Token dostępu, który można wysłać do interfejsu API Google.
token_type string Typ zwracanego tokena. Zawsze Bearer.
expires_in integer Okres ważności tokena dostępu w sekundach od momentu jego wydania.
scope string Zakresy dostępu przyznane przez code lub access_token wyrażone jako lista ciągów znaków oddzielonych spacjami z uwzględnieniem wielkości liter.
error string Kod błędu, jeśli żądanie się nie powiodło.
error_description string Opis błędu, jeśli żądanie nie powiodło się.

Odpowiedzi z błędem

W przypadku punktu końcowego autoryzacji błędy są zwracane do klientaredirect_uri jako parametry w ciągu zapytania lub fragmencie adresu URL albo wyświetlane użytkownikowi jako strona błędu hostowana przez Google.

Błędy przekierowania

Do redirect_uri mogą być zwracane te kody błędów:

Błąd Opis
access_denied Użytkownik lub serwer autoryzacji odrzucił żądanie.
invalid_request W żądaniu brakuje wymaganego parametru, zawiera ono nieprawidłową wartość parametru lub parametr występuje w nim więcej niż raz albo jest ono nieprawidłowo sformatowane.
unauthorized_client Klient nie ma uprawnień do żądania kodu autoryzacji przy użyciu tej metody.
unsupported_response_type Serwer autoryzacji nie obsługuje uzyskiwania kodu autoryzacji za pomocą tej metody.
invalid_scope Żądany zakres jest nieprawidłowy, nieznany lub błędnie sformatowany.

Błędy widoczne dla użytkownika

W niektórych przypadkach, np. gdy parametr client_id lub redirect_uri jest nieprawidłowy, serwer autoryzacji nie może bezpiecznie przekierować użytkownika z powrotem do aplikacji. W takich przypadkach użytkownikowi wyświetla się bezpośrednio strona błędu.

Błąd Opis
admin_policy_enforced Konto Google nie może autoryzować co najmniej jednego z zakresów, o które prosisz, ze względu na zasady administratora Google Workspace. Więcej informacji o tym, jak administrator może ograniczyć dostęp, dopóki nie zostanie on wyraźnie przyznany identyfikatorowi klienta OAuth, znajdziesz w artykule pomocy dla administratorów Google Workspace.
disallowed_useragent Punkt końcowy autoryzacji jest wyświetlany w osadzonym agencie użytkownika, który jest niedozwolony przez zasady Google dotyczące protokołu OAuth 2.0.
org_internal Identyfikator klienta OAuth w żądaniu jest częścią projektu ograniczającego dostęp do kont Google w określonej organizacji Google Cloud.
deleted_client Klient OAuth używany do wysyłania żądania został usunięty. Usunięcie może nastąpić ręcznie lub automatycznie w przypadku nieużywanych klientów.
invalid_grant Podczas korzystania z PKCE parametr code_challenge jest nieprawidłowy lub go brakuje. Podczas odświeżania tokena dostępu lub korzystania z autoryzacji przyrostowej token mógł wygasnąć, zostać unieważniony lub konto użytkownika mogło zostać usunięte lub wyłączone.
redirect_uri_mismatch Parametr redirect_uri przekazany w żądaniu nie jest zgodny z autoryzowanym identyfikatorem URI przekierowania dla identyfikatora klienta. Sprawdź autoryzowane identyfikatory URI przekierowania w konsoli Google Cloud. Ten błąd może też wystąpić, jeśli żądanie korzysta z wycofanego procesu uwierzytelniania OAuth poza pasmem (OOB).
invalid_client Pochodzenie, z którego wysłano żądanie, nie jest autoryzowane w przypadku tego klienta, konfiguracja klienta jest nieprawidłowa lub tajny klucz klienta OAuth jest nieprawidłowy.
origin_mismatch Schemat, domena lub port JavaScriptu, z którego pochodzi żądanie autoryzacji, nie pasuje do autoryzowanego identyfikatora URI źródła JavaScriptu zarejestrowanego dla identyfikatora klienta OAuth. Sprawdź autoryzowane źródła JavaScript w konsoli Google Cloud.
invalid_request Wystąpił problem z żądaniem. Może to być spowodowane nieprawidłowo sformułowanym żądaniem, brakiem wymaganych parametrów lub użyciem metody autoryzacji, której Google nie obsługuje.

Token Endpoint (Punkt końcowy tokena)

Punkt końcowy tokena służy do wymiany kodu autoryzacji na token dostępu i token identyfikatora.

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

Obsługiwana metoda żądania: POST

Parametry żądania (przyznawanie kodu autoryzacji)

Parametr Typ Wymagane Opis
code string Wymagane Kod autoryzacji otrzymany z punktu końcowego autoryzacji.
client_id string Wymagane Identyfikator klienta aplikacji uzyskany w konsoli Google Cloud.
client_secret string Wymagane Tajny klucz klienta aplikacji uzyskany w konsoli Google Cloud.
redirect_uri string Wymagane Identyfikator URI przekierowania użyty w początkowej prośbie o autoryzację. Identyfikatory URI przekierowania i autoryzowane źródła JavaScriptu muszą być zgodne z regułami weryfikacji opisanymi w dokumentacji Weryfikacja identyfikatorów URI OAuth 2.0.
grant_type string Wymagane Trzeba wysłać do: authorization_code.

Parametry żądania (przepływ na urządzeniu)

Parametr Typ Wymagane Opis
client_id string Wymagane Identyfikator klienta aplikacji uzyskany w konsoli Google Cloud.
client_secret string Wymagane Tajny klucz klienta aplikacji uzyskany w konsoli Google Cloud.
device_code string Wymagane Wartość device_code zwrócona przez punkt końcowy autoryzacji urządzenia.
grant_type string Wymagane Trzeba wysłać do: urn:ietf:params:oauth:grant-type:device_code.

Parametry żądania (odświeżanie tokena dostępu)

Parametr Typ Wymagane Opis
client_id string Wymagane Identyfikator klienta aplikacji uzyskany w konsoli Google Cloud.
client_secret string Wymagane Tajny klucz klienta aplikacji uzyskany w konsoli Google Cloud.
grant_type string Wymagane Musi mieć wartość refresh_token zgodnie ze specyfikacją OpenID Connect Refresh Tokens.
refresh_token string Wymagane Token odświeżania zwrócony z wymiany kodu autoryzacji.
scope string Opcjonalny Lista zakresów oddzielonych spacjami, o które prosisz w przypadku nowego tokena dostępu. Żądane zakresy muszą być podzbiorem zakresów przyznanych w pierwotnej prośbie o autoryzację.

Treść odpowiedzi

Pola odpowiedzi są zwracane w obiekcie JSON w treści odpowiedzi HTTP na żądanie POST wysłane przez osobę wysyłającą żądanie do https://oauth2.googleapis.com/token.

Pole Typ Opis
access_token string Token dostępu, który można wysłać do interfejsu API Google.
expires_in integer Okres ważności tokena dostępu w sekundach od momentu jego wydania.
id_token string Token sieciowy JSON (JWT), który zawiera informacje o tożsamości użytkownika. Ten token jest zwracany podczas początkowej wymiany kodu autoryzacji, a także podczas żądania tokena odświeżania, jeśli przyznano zakres openid.
scope string Zakresy dostępu przyznane przez access_token w postaci listy ciągów znaków rozdzielonych spacjami, w których wielkość liter jest rozróżniana.
token_type string Typ zwracanego tokena. Zawsze Bearer.
refresh_token string (Opcjonalnie) Token, którego można użyć do uzyskania nowych tokenów dostępu. To pole jest zwracane tylko w początkowej wymianie kodu autoryzacji, jeśli wysłano żądanie access_type=offline.
refresh_token_expires_in integer (Opcjonalnie) Pozostały czas życia tokena odświeżania w sekundach. Ta wartość jest ustawiana tylko wtedy, gdy użytkownik przyzna dostęp czasowy.

Odpowiedzi na błędy

Jeśli żądanie się nie powiedzie, serwer autoryzacji zwraca obiekt JSON z tymi polami:

Pole Typ Opis
error string Kod błędu.
error_description string Opis błędu, jeśli żądanie nie powiodło się.

W tabeli poniżej znajdziesz potencjalne kody błędów i powiązane z nimi kody stanu HTTP:

Błąd Kod stanu HTTP Opis
invalid_request 400 W żądaniu brakuje wymaganego parametru, zawiera ono nieprawidłową wartość parametru lub jest nieprawidłowo sformatowane.
invalid_client 401 Nie udało się uwierzytelnić klienta. Na przykład znak client_id lub client_secret jest nieprawidłowy albo typ klienta jest nieprawidłowy.
invalid_grant 400 Podany kod autoryzacji, token odświeżania lub kod urządzenia jest nieprawidłowy, wygasł, został cofnięty lub nie pasuje do identyfikatora URI przekierowania użytego w żądaniu autoryzacji.
unauthorized_client 400 Uwierzytelniony klient nie ma uprawnień do używania tego typu autoryzacji.
unsupported_grant_type 400 Serwer autoryzacji nie obsługuje typu uprawnień autoryzacji.
invalid_scope 400 Żądany zakres jest nieprawidłowy, nieznany lub błędnie sformatowany.
authorization_pending 428 (Device Flow) Użytkownik nie ukończył jeszcze procesu autoryzacji.
slow_down 429 (Device Flow) Urządzenie zbyt często wysyła żądania sondowania.
access_denied 403 (Device Flow) Użytkownik odmówił przyznania dostępu do urządzenia.
expired_token 400 (Device Flow) device_code stracił ważność.
admin_policy_enforced 400 Użytkownik nie może autoryzować żądanych zakresów ze względu na zasady egzekwowane przez administratora Google Workspace.
org_internal 403 Identyfikator klienta jest częścią projektu, który ogranicza dostęp do konkretnej organizacji Google Cloud.

Punkt końcowy autoryzacji urządzenia

Punkt końcowy autoryzacji urządzenia jest używany w przepływie OAuth 2.0 na urządzeniu do uzyskiwania kodu użytkownika i URL-a do weryfikacji na urządzeniach o ograniczonych możliwościach wprowadzania danych.

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

Obsługiwana metoda żądania: POST

Parametry żądania

Parametr Typ Wymagane Opis
client_id string Wymagane Identyfikator klienta aplikacji uzyskany w konsoli Google Cloud.
scope string Wymagane Lista zakresów oddzielonych spacjami, które identyfikują zasoby, do których aplikacja może uzyskać dostęp w imieniu użytkownika.

Treść odpowiedzi

Odpowiedź jest wysyłana w formie obiektu JSON, który zawiera te pola:

Pole Typ Opis
device_code string Wartość, którą Google jednoznacznie przypisuje do identyfikowania urządzenia, na którym działa aplikacja żądająca autoryzacji.
user_code string Wartość z uwzględnieniem wielkości liter, która informuje Google o zakresach, do których aplikacja chce uzyskać dostęp. Interfejs użytkownika poprosi użytkownika o wpisanie tej wartości na osobnym urządzeniu z większymi możliwościami wprowadzania danych.
verification_url string Adres URL, do którego użytkownik musi przejść na osobnym urządzeniu, aby wpisać user_code i przyznać lub odmówić dostępu do aplikacji.
expires_in integer Czas (w sekundach), przez który device_codeuser_code są ważne.
interval integer Czas (w sekundach), przez jaki urządzenie powinno czekać między żądaniami sondowania.

Punkt końcowy unieważnienia

Punkt końcowy unieważnienia umożliwia aplikacji unieważnienie tokena dostępu lub tokena odświeżania.

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

Obsługiwana metoda żądania: POST

Parametry żądania

Parametr Typ Wymagane Opis
token string Wymagane Token dostępu lub token odświeżania, który chcesz unieważnić.

Treść odpowiedzi

Jeśli unieważnienie się powiedzie, odpowiedź będzie pusta w przypadku HTTP 200 OK. Jeśli wycofanie się nie powiedzie, zwracana jest odpowiedź o błędzie w obiekcie JSON.

Pole Typ Opis
error string Kod błędu, jeśli żądanie się nie powiodło.
error_description string Opis błędu, jeśli żądanie nie powiodło się.

W tabeli poniżej znajdziesz opis potencjalnych kodów błędów:

Błąd Opis
invalid_token Token podany w żądaniu wygasł lub został już unieważniony.
invalid_request W żądaniu brakuje wymaganego parametru, zawiera ono nieprawidłową wartość parametru lub jest nieprawidłowo sformatowane.

Punkt końcowy UserInfo

Punkt końcowy UserInfo zwraca informacje o profilu uwierzytelnionego użytkownika.

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

Obsługiwane metody żądania: GET, POST

Nagłówki żądania

Nagłówek Opis
Authorization Wymagane. Musi być ustawiona na Bearer: access_token.

Treść odpowiedzi

Pola odpowiedzi są zwracane w obiekcie JSON w treści odpowiedzi HTTP na żądanie GET lub POST wysłane przez użytkownika do https://openidconnect.googleapis.com/v1/userinfo.

Pole Typ Opis
sub string Wymagane. Identyfikator użytkownika, niepowtarzalny wśród wszystkich kont Google i nieużywany ponownie. Ciąg znaków z uwzględnieniem wielkości liter, który nie może przekraczać 255 znaków.
name string Pełne imię i nazwisko użytkownika w możliwej do wyświetlenia postaci.
given_name string Imię lub imiona użytkownika.
family_name string Nazwisko użytkownika.
picture string Adres URL zdjęcia profilowego użytkownika.
email string Adres e-mail użytkownika.
email_verified boolean Informacja, czy adres e-mail użytkownika został zweryfikowany.
hd string Domena hostowana powiązana z organizacją Google Workspace lub Cloud użytkownika.

Punkt końcowy tokeninfo

Punkt końcowy tokeninfo to implementacja Google służąca do weryfikacji tokena identyfikatora na potrzeby debugowania.

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

Obsługiwane metody żądania: GET, POST

Parametry żądania

Parametr Typ Wymagane Opis
id_token string Wymagane Token identyfikatora do zweryfikowania.

Treść odpowiedzi

Pola odpowiedzi są zwracane w obiekcie JSON w treści odpowiedzi HTTP na żądanie GET lub POST wysłane przez użytkownika do https://oauth2.googleapis.com/tokeninfo.

Pole Typ Opis
iss string Identyfikator wydawcy. Zawsze https://accounts.google.com.
sub string Identyfikator użytkownika, niepowtarzalny wśród wszystkich kont Google i nieużywany ponownie.
aud string Odbiorcy, dla których jest przeznaczony token tożsamości. Jest to identyfikator klienta aplikacji uzyskany w konsoli Google Cloud.
iat integer Godzina wydania tokena JWT. Reprezentowany jako liczba sekund od 1970-01-01T0:0:0Z w czasie UTC.
exp integer Czas wygaśnięcia, po którym token tożsamości nie może być akceptowany do przetwarzania. Reprezentowany jako liczba sekund od 1970-01-01T0:0:0Z w czasie UTC.
email string Adres e-mail użytkownika.
email_verified string Informacja, czy adres e-mail użytkownika został zweryfikowany. Wartość to ciąg znaków "true" lub "false".
access_type string Typ dostępu, o który proszono w pierwotnej prośbie o autoryzację.
azp string Identyfikator klienta autoryzowanej aplikacji prezentującej token uzyskany z konsoli Google Cloud.
scope string Lista zakresów przyznanych tokenowi, rozdzielona spacjami.
alg string Algorytm użyty do podpisania tokena tożsamości.
kid string Identyfikator klucza użytego do podpisania tokena tożsamości.
typ string Typ tokena. Zawsze JWT.