Implementacja autoryzacji OAuth 2.0

YouTube Reporting API i YouTube Analytics API obsługują protokół OAuth 2.0 na potrzeby autoryzowania dostępu do prywatnych danych użytkowników. Poniższa lista wyjaśnia niektóre z podstawowych pojęć związanych z OAuth 2.0:

  • Gdy użytkownik po raz pierwszy spróbuje użyć w Twojej aplikacji funkcji, która wymaga zalogowania się w systemie Google Account or YouTube account, aplikacja inicjuje proces autoryzacji OAuth 2.0.

  • Twoja aplikacja kieruje użytkownika do serwera autoryzacji Google. Link do tej strony określa scope uprawnień dostępu do konta użytkownika, o jakie prosi aplikacja. scope określa zasoby, które aplikacja może pobierać, wstawiać, aktualizować lub usuwać, gdy działa jako uwierzytelniony użytkownik.

  • Jeśli użytkownik wyrazi zgodę na dostęp aplikacji do tych zasobów, Google zwróci jej token. W zależności od typu aplikacji sprawdza ona token lub wymienia go na inny typ.

    Na przykład aplikacja internetowa po stronie serwera wymienia zwrócony token dla tokena dostępu i tokena odświeżania. Token dostępu pozwala aplikacji autoryzować żądania w imieniu użytkownika, a token odświeżania umożliwia aplikacji pobranie nowego tokena dostępu po wygaśnięciu oryginalnego tokena dostępu.

Ważne: aby korzystać z autoryzacji OAuth 2.0, musisz uzyskać dane uwierzytelniające w Konsoli interfejsów API Google.

Przepływy OAuth 2.0

Interfejsy API Google obsługują kilka przypadków użycia protokołu OAuth 2.0:

  • Proces aplikacji internetowych po stronie serwera obsługuje aplikacje internetowe, które mogą bezpiecznie przechowywać trwałe informacje.
  • Proces aplikacji internetowych JavaScript obsługuje aplikacje JavaScript działające w przeglądarce.
  • Proces aplikacji mobilnych i komputerowych obsługuje aplikacje zainstalowane na urządzeniu, np. na telefonie czy komputerze.
  • Protokół OAuth 2.0 na telewizorach i urządzeniach z ograniczonym dostępem obsługuje urządzenia z ograniczonymi możliwościami wprowadzania danych, takie jak konsole do gier czy kamery wideo. The YouTube Reporting and YouTube Analytics APIs do not currently support the OAuth 2.0 flow for devices.
  • Proces OAuth 2.0 na koncie usługi obsługuje interakcje między serwerami, które nie mają dostępu do informacji o użytkowniku. YouTube Reporting API i YouTube Analytics API nie obsługują jednak tego procesu. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate an error.

Określanie zakresów dostępu

Zakresy umożliwiają aplikacji żądanie dostępu tylko do potrzebnych zasobów. co pozwala użytkownikom kontrolować zakres dostępu przyznawany do aplikacji. Dlatego też może być odwrotną zależnością między liczbą żądanych zakresów a prawdopodobieństwem w celu uzyskania zgody użytkownika.

Przed rozpoczęciem wdrażania autoryzacji OAuth 2.0 zalecamy określenie zakresów do których aplikacja potrzebuje uprawnień dostępu.

Interfejs YouTube Analytics API używa tych zakresów:

Zakresy
https://www.googleapis.com/auth/youtube Zarządzaj swoim kontem YouTube
https://www.googleapis.com/auth/youtube.readonly Wyświetl swoje konto YouTube
https://www.googleapis.com/auth/youtubepartner Wyświetlaj swoje zasoby i powiązane treści w YouTube oraz zarządzaj nimi
https://www.googleapis.com/auth/yt-analytics-monetary.readonly Wyświetlaj finansowe i niepieniężne raporty YouTube Analytics dotyczące treści w YouTube
https://www.googleapis.com/auth/yt-analytics.readonly Wyświetlaj raporty YouTube Analytics dotyczące swoich treści w YouTube

Interfejs YouTube Reporting API używa tych zakresów:

Zakresy
https://www.googleapis.com/auth/yt-analytics-monetary.readonly Wyświetlaj finansowe i niepieniężne raporty YouTube Analytics dotyczące treści w YouTube
https://www.googleapis.com/auth/yt-analytics.readonly Wyświetlaj raporty YouTube Analytics dotyczące swoich treści w YouTube

Dokument Zakresy interfejsu API OAuth 2.0 zawiera pełne listę zakresów, których możesz używać do uzyskiwania dostępu do interfejsów API Google.