Потоки OAuth для настольных компьютеров и веб-приложений
Оптимизируйте свои подборки
Сохраняйте и классифицируйте контент в соответствии со своими настройками.
Это руководство поможет вам настроить OAuth 2.0 для доступа к API с использованием ваших учётных данных, используя как рабочий стол , так и веб-интерфейс . Эти шаги необходимо выполнить только один раз, если только вы не отзовёте, не удалите или не измените разрешённые области действия для своих учётных данных OAuth 2.0.
Запишите идентификатор клиента и секретный код клиента , затем вернитесь на эту страницу.
Настройте клиентскую библиотеку
Запустите в терминале пример GenerateUserCredentials . При появлении запроса введите идентификатор клиента OAuth 2.0 и секретный ключ клиента.
dotnet run GenerateUserCredentials.csproj
Этот пример кода автоматически открывает URL-адрес в браузере. Если вы не вошли в браузер, веб-страница предложит вам войти в свою учётную запись Google. Если вы уже вошли в систему, запрос на вход будет пропущен, и вы будете перенаправлены на URL-адрес, где необходимо разрешить приложению доступ к вашей учётной записи Google Рекламы от вашего имени.
Войдите в аккаунт Google, который вы используете для доступа к Google Рекламе. Обычно это адрес электронной почты для входа в управляющий аккаунт Google Рекламы, содержащий все необходимые вам аккаунты в рамках его иерархии. Нажмите «Продолжить» на экране согласия OAuth 2.0.
Вы будете перенаправлены на страницу с сообщением об успешной авторизации.
Your refresh token has been fetched. Check the
console output for further instructions.
Вернитесь в консоль, где запущен пример кода. Вы увидите, что пример кода выполнен и отображает ваш токен обновления и некоторые инструкции, а затем инструкции по настройке клиентской библиотеки:
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 = '******' />
Убедитесь, что вы также настроили заголовок LOGIN_CUSTOMER_ID в файле App.config . Подробнее см. в руководстве по настройке .
<add key = 'LoginCustomerId' value = 'INSERT_LOGIN_CUSTOMER_ID_HERE' />
Генерация учетных данных OAuth2 для интерактивных приложений
Если вы заранее не знаете, к какому аккаунту Google Ads будут выполняться вызовы API, вы можете определить его во время выполнения, используя учётные данные вошедшего в систему пользователя для сеанса. См. AuthenticateInAspNetCoreApplication для примера, где текущий вошедший в систему пользователь проходит аутентификацию, а учётные данные OAuth2 получаются во время выполнения.
[null,null,["Последнее обновление: 2025-08-29 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."]]