Przepływy aplikacji internetowych i komputerowych OAuth
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Z tego przewodnika dowiesz się, jak skonfigurować OAuth 2.0 na potrzeby dostępu do interfejsu API za pomocą własnych danych logowania i przepływu na komputerze lub przepływu w internecie. Wystarczy, że tylko raz wykonasz te kroki, chyba że cofniesz lub usuniesz dane logowania OAuth 2.0 albo będziesz musiał zmienić dozwolone zakresy.
Zapisz identyfikator klienta i tajny klucz klienta, a potem wróć na tę stronę.
Konfigurowanie biblioteki klienta
W terminalu uruchom przykład GenerateUserCredentials. Gdy pojawi się odpowiedni komunikat, wpisz identyfikator klienta OAuth 2.0 i tajny klucz klienta.
dotnet run GenerateUserCredentials.csproj
Ten przykład kodu automatycznie otwiera adres URL w przeglądarce. Jeśli nie zalogujesz się w sesji przeglądarki, na stronie pojawi się prośba o zalogowanie się na konto Google. Jeśli jesteś już zalogowany(-a), pominiemy prośbę o zalogowanie się i przekierujemy Cię na adres URL, na którym musisz autoryzować aplikację, aby mogła uzyskać dostęp do Twojego konta Google Ads w Twoim imieniu.
Zaloguj się na konto Google, którego używasz do uzyskiwania dostępu do Google Ads. Zwykle jest to adres e-mail logowania na konto menedżera Google Ads, które zawiera wszystkie konta, którymi chcesz zarządzać w ramach jego hierarchii. Na ekranie zgody OAuth 2.0 kliknij Dalej.
Przeniesiemy Cię na stronę z komunikatem informującym, że autoryzacja się powiodła.
Your refresh token has been fetched. Check the
console output for further instructions.
Wróć do konsoli, w której uruchamiasz przykładowy kod. Zobaczysz, że przykład kodu został ukończony i wyświetla token odświeżania oraz instrukcje, a następnie instrukcje, które musisz wykonać, aby skonfigurować bibliotekę klienta:
Copy the following content into your App.config file.
<add key = 'OAuth2Mode' value = 'APPLICATION' />
<add key = 'OAuth2ClientId' value = '******' />
<add key = 'OAuth2ClientSecret' value = '******' />
<add key = 'OAuth2RefreshToken' value = '******' />
Upewnij się, że w pliku App.config
ustawiono też nagłówek LOGIN_CUSTOMER_ID. Więcej informacji znajdziesz w
przewodniku po konfiguracji.
<add key = 'LoginCustomerId' value = 'INSERT_LOGIN_CUSTOMER_ID_HERE' />
Generowanie danych logowania OAuth2 dla aplikacji interaktywnych
Jeśli nie znasz z wyprzedzeniem konta Google Ads, do którego chcesz wysyłać wywołania interfejsu API, możesz je wykryć w czasie działania programu, używając danych logowania użytkownika zalogowanego w sesji. Przykład, w którym zalogowany użytkownik jest uwierzytelniany, a dane logowania OAuth2 są uzyskiwane w czasie działania programu, znajdziesz w sekcji
AuthenticateInAspNetCoreApplication.
[null,null,["Ostatnia aktualizacja: 2025-08-31 UTC."],[[["\u003cp\u003eStarting with version 19.0.0, the Google Ads API client library for .NET will no longer support .NET 5.0, requiring an upgrade before the end of 2024 for continued functionality.\u003c/p\u003e\n"],["\u003cp\u003eThis guide explains how to set up OAuth2 for API access using your own credentials, offering two methods: the desktop flow and the web flow.\u003c/p\u003e\n"],["\u003cp\u003eYou can simplify API calls by linking your Google Ads accounts under a single manager account and using the provided example to generate OAuth2 credentials.\u003c/p\u003e\n"],["\u003cp\u003eFor interactive applications where the Google Ads account is unknown beforehand, you can discover it at runtime using the credentials of the signed-in user, as demonstrated in the provided example.\u003c/p\u003e\n"]]],[],null,["# OAuth Desktop and Web Application Flows\n\nThis guide walks you through how to set up OAuth 2.0 for API access using your\nown credentials and either the [desktop flow](/identity/protocols/oauth2/native-app)\nor the [web flow](/identity/protocols/oauth2/web-server). These steps only need\nto be done once, unless you revoke, delete, or need to change the allowed scopes\nfor your OAuth 2.0 credentials.\n\nCreate OAuth 2.0 credentials\n----------------------------\n\n1. Follow the steps to [configure a Google API Console project for the\n Google Ads API](/google-ads/api/docs/oauth/cloud-project).\n\n2. Note the *client ID* and *client secret*, then come back to this page.\n\nSet up the client library\n-------------------------\n\n| The following steps run an interactive code example, which will require you to provide input.\n\n1. In a terminal, run the [`GenerateUserCredentials`](https://github.com/googleads/google-ads-dotnet/blob/main/Google.Ads.GoogleAds/examples/Authentication/GenerateUserCredentials)example. Enter the OAuth 2.0 client ID and client secret\n when prompted.\n\n ```\n dotnet run GenerateUserCredentials.csproj\n ```\n2. This code example opens a URL automatically in the browser. If you aren't signed in to your\n browser session, the web page will prompt you to sign in to your Google Account. If you are\n already signed in, it will skip the sign-in prompt and redirect you to a URL where you must\n authorize the app to access your Google Ads account on your behalf.\n\n Sign in with the Google Account you use to access Google Ads. Usually, this is a login\n email to a Google Ads manager account that contains all the accounts you need to manage\n under its account hierarchy. Click **Continue** on the OAuth 2.0 consent screen.\n\n You'll be taken to a page with a message indicating that the authorization\n succeeded. \n\n ```\n Your refresh token has been fetched. Check the\n console output for further instructions.\n ```\n3. Return to the console where you're running the code example. You'll see that the code\n example has completed and is displaying your refresh token and some instructions, followed by\n the instructions you'll need to follow to configure the client library:\n\n Copy the following content into your App.config file.\n\n \u003cadd key = 'OAuth2Mode' value = 'APPLICATION' /\u003e\n \u003cadd key = 'OAuth2ClientId' value = '******' /\u003e\n \u003cadd key = 'OAuth2ClientSecret' value = '******' /\u003e\n \u003cadd key = 'OAuth2RefreshToken' value = '******' /\u003e\n\n Make sure you also set the `LOGIN_CUSTOMER_ID` header in your `App.config`\n file. See [the configuration guide](/google-ads/api/docs/client-libs/dotnet/configuration#settings) to learn more. \n\n ```\n \u003cadd key = 'LoginCustomerId' value = 'INSERT_LOGIN_CUSTOMER_ID_HERE' /\u003e\n ```\n\n Refer to the [configuration guide](/google-ads/api/docs/client-libs/dotnet/configuration) for\n alternate configuration options.\n\nGenerate OAuth2 credentials for interactive applications\n--------------------------------------------------------\n\nIf you don't know the Google Ads account to make API calls to in advance, you can\ndiscover it at runtime using the credentials of the signed in user for the\nsession. See\n[`AuthenticateInAspNetCoreApplication`](https://github.com/googleads/google-ads-dotnet/tree/HEAD/Google.Ads.GoogleAds/examples/Authentication/AuthenticateInAspNetCoreApplication)\nfor an example where the currently signed in user is authenticated and the OAuth2\ncredentials are obtained at runtime."]]