Wdrażanie uwierzytelniania OAuth 2.0
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
YouTube Live Streaming API obsługuje protokół OAuth 2.0 do autoryzacji dostępu do prywatnych danych użytkownika.
Poniżej znajdziesz wyjaśnienie kilku 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.
-
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 autoryzację aplikacji do dostępu do tych zasobów, Google zwróci Twojej aplikacji 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 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 uwierzytelniające w Konsoli interfejsów API Google.
Więcej informacji znajdziesz w przewodniku autoryzacji OAuth 2.0.
Uwaga: aby móc korzystać z funkcji YouTube Live, kanał musi zostać zatwierdzony. Umożliwia to właścicielowi kanału strumieniowanie treści na żywo. Jeśli wysyłasz żądania interfejsu API w imieniu uwierzytelnionego użytkownika, którego kanał nie jest włączony lub nie kwalifikuje się do transmisji na żywo, interfejs API zwróci błąd insufficientPermissions
.
Przepływy OAuth 2.0
Interfejsy API Google obsługują kilka przypadków użycia protokołu OAuth 2.0:
O ile nie stwierdzono inaczej, treść tej strony jest objęta licencją Creative Commons – uznanie autorstwa 4.0, a fragmenty kodu są dostępne na licencji Apache 2.0. Szczegółowe informacje na ten temat zawierają zasady dotyczące witryny Google Developers. Java jest zastrzeżonym znakiem towarowym firmy Oracle i jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2024-11-05 UTC.
[null,null,["Ostatnia aktualizacja: 2024-11-05 UTC."],[[["\u003cp\u003eThe YouTube Live Streaming API uses OAuth 2.0 for authorizing access to private user data, requiring an application to initiate the authorization process when a user attempts to use features needing a Google or YouTube account.\u003c/p\u003e\n"],["\u003cp\u003eDuring OAuth 2.0 authorization, the application directs the user to Google's authorization server, where the requested access scope is defined, specifying which resources the application can interact with.\u003c/p\u003e\n"],["\u003cp\u003eUpon user consent, Google returns a token to the application, which may be exchanged for an access token and a refresh token, enabling the application to make authorized requests and renew authorization when needed.\u003c/p\u003e\n"],["\u003cp\u003eTo utilize OAuth 2.0 Authorization, you must obtain authorization credentials from the Google API Console.\u003c/p\u003e\n"],["\u003cp\u003eThe YouTube Live Streaming API supports several OAuth 2.0 flows, but does not support the Service Account flow.\u003c/p\u003e\n"]]],["The YouTube Live Streaming API utilizes OAuth 2.0 for authorizing access to user data. Applications initiate authorization, redirecting users to Google's server to define access scope. Upon user consent, Google issues a token; web apps exchange this for access and refresh tokens. Developers must obtain authorization credentials from the Google API Console. Different flows support various application types, but the service account flow is not compatible with the YouTube Live Streaming API. Channels must also be approved to enable live streaming.\n"],null,["# Implementing OAuth 2.0 Authentication\n\nThe YouTube Live Streaming API supports the [OAuth 2.0 protocol](http://oauth.net/2/) for authorizing access to private user data.\n\nThe following list explains some core OAuth 2.0 concepts:\n\n- When a user first attempts to use features in your application that requires the user to be logged in to a Google Account or YouTube account, your application initiates the OAuth 2.0 authorization process.\n\n- Your application directs the user to Google's authorization server. The link to that page specifies the **scope** of access that your application is requesting for the user's account. The **scope** specifies the resources that your application can retrieve, insert, update, or delete when acting as the authenticated user.\n\n- If the user consents to authorize your application to access those resources, Google returns a token to your application. Depending on your application's type, it either validates the token or exchanges it for a different type of token.\n\n For example, a server-side web application exchanges the returned token for an access token and a refresh token. The access token lets the application authorize requests on the user's behalf, and the refresh token lets the application retrieve a new access token when the original access token expires.\n\n**Important:** To use the OAuth 2.0 Authorization, you need to [obtain authorization credentials in the Google API Console](/youtube/v3/live/registering_an_application).\n\nFor more details, see the [OAuth 2.0 Authorization Guide](https://developers.google.com/identity/protocols/oauth2).\n\n**Note:** A channel must be approved to use the YouTube Live\nfeature, which enables the channel owner to stream live content to that channel. If you send API\nrequests on behalf of an authenticated user whose channel is not enabled or eligible to stream\nlive content, the API will return an `insufficientPermissions` error.\n\nOAuth 2.0 flows\n---------------\n\nGoogle APIs support several OAuth 2.0 use cases:\n\n- The [server-side web apps](/youtube/v3/live/guides/auth/server-side-web-apps) flow supports web applications that can securely store persistent information.\n- The [JavaScript web apps](/youtube/v3/live/guides/auth/client-side-web-apps) flow supports JavaScript applications running in a browser.\n- The [mobile and desktop apps](/youtube/v3/live/guides/auth/installed-apps) flow supports applications installed on a device, such as a phone or computer.\n- The [TVs and limited-input devices](/youtube/v3/live/guides/auth/devices) flow supports devices with limited input capabilities, such as game consoles and video cameras.\n- The OAuth 2.0 flow for service account flow supports server-to-server interactions that do not access user information. However, the YouTube Live Streaming API does not support this flow. Since there is no way to link a Service Account to a YouTube account, attempts to authorize requests with this flow will generate a `NoLinkedYouTubeAccount` error."]]