Aplikacje internetowe muszą uzyskać token dostępu, aby bezpiecznie wywoływać interfejsy API Google.
Biblioteka JavaScript usług Google Identity Services obsługuje zarówno uwierzytelnianie na potrzeby logowania użytkownika, jak i autoryzację w celu uzyskania tokena dostępu do użytku z interfejsami Google API. Biblioteka przeznaczona jest wyłącznie do użytku w przeglądarkach.
Uwierzytelnianie określa, kim jest ktoś, i jest powszechnie określane jako rejestracja lub logowanie użytkownika. Autoryzacja to proces przyznawania lub odmawiania dostępu do danych lub zasobów. Obejmuje uzyskiwanie zgody użytkownika i zarządzanie nią, ograniczanie ilości danych lub zasobów udostępnianych zakresom oraz pobieranie tokena dostępu do użytku z interfejsami API Google.
Te przewodniki obejmują tematy dotyczące autoryzacji i udostępniania danych.
Sposób działania autoryzacji użytkownika opisuje szczegółowo poszczególne kroki autoryzacji użytkownika i zawiera przykłady okien dialogowych użytkownika.
Jeśli szukasz pomocy w zakresie uwierzytelniania i implementacji procesu rejestracji i logowania użytkownika, zobacz Zaloguj się przez Google .
Ta biblioteka nie jest przeznaczona do użytku z frameworkami JavaScript po stronie serwera, takimi jak Node.js, zamiast tego używa biblioteki klienta Google Node.js.
Co się zmieniło
Dla użytkowników biblioteka usług tożsamości Google oferuje wiele ulepszeń użyteczności w porównaniu z wcześniejszymi bibliotekami JavaScript, w tym:
- Uwierzytelnianie logowania użytkownika i autoryzacja w celu uzyskania tokena dostępu do wywoływania interfejsów API Google mają teraz dwa oddzielne i odrębne przepływy użytkowników. jeden do logowania, a drugi do wyrażania zgody podczas autoryzacji, z oddzielnymi przepływami użytkowników, aby wyraźnie odróżnić, kim jesteś, od tego, co może zrobić aplikacja.
- Lepsza widoczność i szczegółowa kontrola udostępniania danych podczas wyrażania zgody przez użytkownika .
- Wyskakujące okna dialogowe oparte na przeglądarce, aby zmniejszyć tarcia i które nie wymagają od użytkowników opuszczania witryny w celu:
- uzyskać token dostępu od Google lub
- wyślij kod autoryzacyjny na swoją platformę backendową.
W przypadku programistów naszym celem było zmniejszenie złożoności, poprawa bezpieczeństwa i jak najszybsza i najłatwiejsza integracja. Niektóre z tych zmian to:
- Uwierzytelnianie użytkownika na potrzeby logowania i autoryzacja używana do uzyskania tokena dostępu do wywoływania interfejsów API Google to dwa oddzielne i odrębne zestawy obiektów i metod JavaScript. Zmniejsza to złożoność i ilość szczegółów wymaganych do wdrożenia uwierzytelniania lub autoryzacji.
- Pojedyncza biblioteka JavaScript obsługuje teraz zarówno:
- Niejawny przepływ OAuth 2.0, używany do uzyskiwania tokenu dostępu do użycia w przeglądarce
- Przepływ kodu autoryzacyjnego OAuth 2.0, znany również jako dostęp offline, i inicjuje bezpieczne dostarczanie kodu autoryzacyjnego na platformę zaplecza, gdzie można go wymienić na token dostępu i token odświeżania. Wcześniej te przepływy były dostępne tylko przy użyciu wielu bibliotek i za pośrednictwem bezpośrednich wywołań punktów końcowych protokołu OAuth 2,0. Pojedyncza biblioteka skraca czas i wysiłek związany z integracją, zamiast dołączać i uczyć się wielu bibliotek i koncepcji OAuth 2.0, możesz skupić się na jednym, ujednoliconym interfejsie.
- Pośredniość przez funkcje w stylu gettera została usunięta dla uproszczenia i czytelności.
- Podczas obsługi odpowiedzi autoryzacyjnych wybierasz, czy chcesz użyć Obietnicy do spełnienia żądań, zamiast podejmować tę decyzję za Ciebie.
- Biblioteka klienta interfejsu API Google dla języka JavaScript została zaktualizowana o następujące zmiany:
- moduł
gapi.auth2
i powiązane z nim obiekty i metody nie są już automatycznie ładowane za kulisami i zostały zastąpione bardziej wyraźnymi obiektami i metodami biblioteki usług tożsamości Google. - Automatyczne odświeżanie wygasłych tokenów dostępu zostało usunięte, aby poprawić bezpieczeństwo i świadomość użytkowników. Po wygaśnięciu tokena dostępu aplikacja musi obsługiwać odpowiedzi na błędy interfejsu API Google, żądania i uzyskać nowy, prawidłowy token dostępu.
- Aby zapewnić wyraźne oddzielenie momentów uwierzytelniania i autoryzacji, jednoczesne logowanie użytkownika w aplikacji i na jego konto Google przy jednoczesnym wystawianiu tokena dostępu nie jest już obsługiwane. Wcześniej żądanie tokena dostępu powodowało również logowanie użytkowników na ich konta Google i zwracanie poświadczeń tokena identyfikatora JWT w celu uwierzytelnienia użytkownika.
- moduł
- Aby zwiększyć bezpieczeństwo i prywatność użytkowników, poświadczenia na użytkownika wydane w celu autoryzacji są zgodne z zasadą najmniejszych uprawnień, obejmując tylko token dostępu i informacje wymagane do zarządzania nim.