Потоки OAuth для настольных компьютеров и веб-приложений

Это руководство поможет вам настроить OAuth 2.0 для доступа к API с использованием ваших учётных данных, используя как рабочий стол , так и веб-интерфейс . Эти шаги необходимо выполнить только один раз, если только вы не отзовёте, не удалите или не измените разрешённые области действия для своих учётных данных OAuth 2.0.

Создать учетные данные OAuth 2.0

  1. Следуйте инструкциям по настройке проекта консоли API Google для API Google Ads .

  2. Запишите идентификатор клиента и секретный код клиента , затем вернитесь на эту страницу.

Настройте клиентскую библиотеку

  1. Запустите в терминале пример GenerateUserCredentials . При появлении запроса введите идентификатор клиента OAuth 2.0 и секретный ключ клиента.

    dotnet run GenerateUserCredentials.csproj
    
  2. Этот пример кода автоматически открывает URL-адрес в браузере. Если вы не вошли в браузер, веб-страница предложит вам войти в свою учётную запись Google. Если вы уже вошли в систему, запрос на вход будет пропущен, и вы будете перенаправлены на URL-адрес, где необходимо разрешить приложению доступ к вашей учётной записи Google Рекламы от вашего имени.

    Войдите в аккаунт Google, который вы используете для доступа к Google Рекламе. Обычно это адрес электронной почты для входа в управляющий аккаунт Google Рекламы, содержащий все необходимые вам аккаунты в рамках его иерархии. Нажмите «Продолжить» на экране согласия OAuth 2.0.

    Экран согласия OAuth 2.0

    Вы будете перенаправлены на страницу с сообщением об успешной авторизации.

    Your refresh token has been fetched. Check the
    console output for further instructions.
  3. Вернитесь в консоль, где запущен пример кода. Вы увидите, что пример кода выполнен и отображает ваш токен обновления и некоторые инструкции, а затем инструкции по настройке клиентской библиотеки:

    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 получаются во время выполнения.