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żej znajdziesz wyjaśnienie kilku podstawowych pojęć związanych z OAuth 2.0:
-
Gdy użytkownik po raz pierwszy próbuje użyć funkcji w aplikacji, która wymaga zalogowania się w usłudze 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 pobrać, wstawić, zaktualizować lub usunąć, gdy działa jako uwierzytelniony użytkownik. -
Jeśli użytkownik wyrazi zgodę na autoryzację aplikacji do dostępu do tych zasobów, Google zwróci Twojej aplikacji token. W zależności od typu aplikacji weryfikuje ona token lub zamienia go na inny typ tokena.
Na przykład aplikacja internetowa po stronie serwera zamienia zwrócony token na token dostępu i token odświeżania. Token dostępu umożliwia aplikacji autoryzowanie żądań w imieniu użytkownika, a token odświeżania umożliwia aplikacji pobranie nowego tokena dostępu po wygaśnięciu pierwotnego tokena dostępu.
Ważne: aby korzystać z autoryzacji OAuth 2.0, musisz uzyskać dane logowania w Konsoli interfejsów API Google.
Więcej informacji znajdziesz w przewodniku autoryzacji OAuth 2.0.
Przepływy OAuth 2.0
Interfejsy API Google obsługują kilka przypadków użycia 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 komputera obsługuje aplikacje zainstalowane na urządzeniu, takim jak telefon lub komputer.
- Proces OAuth 2.0 dla telewizorów i urządzeń z ograniczoną możliwością wprowadzania danych obsługuje urządzenia z ograniczoną możliwością wprowadzania danych, takie jak konsole do gier i 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. Jednak YouTube Reporting API i YouTube Analytics API nie obsługują 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, a jednocześnie pozwalają użytkownikom kontrolować zakres dostępu, jaki przyznają aplikacji. Dlatego może występować odwrotna zależność między liczbą żądanych zakresów a prawdopodobieństwem uzyskania zgody użytkownika.
Zanim zaczniesz wdrażać autoryzację OAuth 2.0, zalecamy określenie zakresów, do których aplikacja będzie potrzebować uprawnień dostępu.
Interfejs API Statystyk YouTube 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łną listę zakresów, których możesz używać do uzyskiwania dostępu do interfejsów API Google.