Как настроить доступ к API

Ниже рассказывается, как настроить доступ к Data Manager API с помощью SDK или REST.

Требования

  1. Проект Google Cloud или аккаунт Google, который будет владельцем проекта.

  2. Установленная командная строка Google Cloud.

Включение API

Если вы ещё не сделали этого, включите Data Manager API в своём облачном проекте Google Cloud, нажав Включить Data Manager API, или следуйте инструкциям, чтобы выполнить этот шаг вручную.

Как включить Data Manager API

Если вы не можете найти Data Manager API или включить его, убедитесь, что ваш аккаунт Google соответствует требованиям.

Как настроить аутентификацию

Вы можете использовать любой из методов аутентификации в Google, кроме ключей API. Чтобы выбрать подходящий способ, ознакомьтесь с информацией о том, как выбрать подходящий способ аутентификации.

Два распространенных способа аутентификации – это аккаунты пользователей и сервисные аккаунты.

  • Аккаунты пользователей. Представляют людей, которые напрямую взаимодействуют с API и сервисами Google.
  • Сервисные аккаунты представляют собой приложения, а не людей. Они позволяют приложениям управлять аутентификацией и авторизацией. Например, если приложению требуется доступ к ресурсам Google Cloud.

В интеграции можно использовать Application Default Credentials (ADC), чтобы автоматически находить учетные данные в среде, и вам не придется менять код клиента для аутентификации.

Выберите Аккаунт пользователя или Сервисный аккаунт, чтобы настроить ADC:

Аккаунт пользователя

Чтобы выполнить аутентификацию с помощью учетных данных аккаунта пользователя, сделайте следующее:

  1. Настройте параметры Google Auth Platform для своего проекта.

    1. Откройте страницу брендинга в консоли Google Cloud.

    2. Выберите проект.

    3. Заполните форму и нажмите Создать.

  2. Поскольку область действия Data Manager API является конфиденциальной, необходимо выполнить следующие действия:

    1. Перейдите к настройкам Доступ к данным для своего проекта.

    2. Нажмите Добавить или удалить области.

    3. Установите флажок рядом с пунктом Data Manager API (API Менеджера данных) в списке областей действия и нажмите Update (Обновить).

    4. Нажмите Сохранить.

    5. В консоли Google Cloud перейдите в раздел Аудитория и настройте параметры для начальной разработки:

      • В разделе Статус публикации выберите Тестирование.
      • В поле Тип пользователя выберите Внутренний (если проект находится в организации Google Workspace) или Внешний (если нет).
      • Если вы используете Внешний, добавьте аккаунты Google, которые вы используете для создания учетных данных, в качестве Тестовых пользователей.

      Подробнее об этих настройках можно узнать в статье Как управлять аудиторией приложения.

  3. Нажмите Создать клиента OAuth2, чтобы создать клиента OAuth2 в проекте, или следуйте инструкциям, чтобы создать клиента OAuth2 для ПК. Этот шаг можно пропустить, если у вас уже есть клиент OAuth2 для ПК, который вы хотите использовать для Data Manager API.

    Если вы нажмете Создать клиента OAuth2, выберите Приложение для ПК, когда появится запрос Настроить клиента OAuth. Это позволит вам использовать клиента на оставшихся этапах.

    Создание клиента OAuth2

    На последнем шаге нажмите Скачать конфигурацию клиента и запомните выбранное местоположение файла.

  4. Создайте локальный файл ADC, выполнив следующую команду: Эта команда запускает веб-процесс, в котором вам будет предложено войти в аккаунт Google, используемый с API.

    Замените PATH_TO_CLIENT_JSON названием скачанного файла JSON.

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/cloud-platform" \
      --client-id-file="PATH_TO_CLIENT_JSON"
    

    Если вы хотите использовать одни и те же учетные данные для Data Manager API и Google Ads API, добавьте область действия Google Ads API в список --scopes:

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform" \
      --client-id-file="PATH_TO_CLIENT_JSON"
    

    Если вы хотите использовать одни и те же учетные данные для Data Manager API и Display & Video 360 API, добавьте область Display & Video 360 API в список --scopes:

    gcloud auth application-default login \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/display-video,https://www.googleapis.com/auth/cloud-platform" \
      --client-id-file="PATH_TO_CLIENT_JSON"
    
  5. Убедитесь, что учетные данные настроены правильно, с помощью следующей команды: Если все пройдет успешно, команда выведет в консоль токен доступа.

    gcloud auth application-default print-access-token
    

Сервисный аккаунт

Ниже описано, как создать сервисный аккаунт и использовать олицетворение сервисного аккаунта для аутентификации в локальной среде разработки. В этих инструкциях вместо ключей сервисных аккаунтов используется олицетворение, поскольку неправильное управление ключами сервисных аккаунтов может привести к проблемам с безопасностью.

  1. Нажмите кнопку Создать сервисный аккаунт или следуйте инструкциям, чтобы выбрать или создать сервисный аккаунт.

    Создать сервисный аккаунт
  2. Предоставьте сервисному аккаунту роль IAM Потребитель использования сервисов (roles/serviceusage.serviceUsageConsumer), которая включает разрешение serviceusage.services.use, позволяющее сервисному аккаунту отправлять запросы API для проекта.

    gcloud projects add-iam-policy-binding PROJECT_ID \
      --member="serviceAccount:SERVICE_ACCOUNT_EMAIL" \
      --role="roles/serviceusage.serviceUsageConsumer"
    
  3. Предоставьте аккаунту Google роль IAM Создатель токена сервисного аккаунта (roles/iam.serviceAccountTokenCreator) для сервисного аккаунта.

    gcloud iam service-accounts add-iam-policy-binding SERVICE_ACCOUNT_EMAIL \
      --member="user:USER_EMAIL" \
      --role="roles/iam.serviceAccountTokenCreator"
    
  4. Настройте ADC, выполнив следующую команду:

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/cloud-platform"
    

    Если вы хотите использовать одни и те же учетные данные для Data Manager API и Google Ads API, добавьте область действия Google Ads API в список --scopes:

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/adwords,https://www.googleapis.com/auth/cloud-platform"
    

    Если вы хотите использовать одни и те же учетные данные для Data Manager API и Display & Video 360 API, добавьте область Display & Video 360 API в список --scopes:

    gcloud auth application-default login \
      --impersonate-service-account=SERVICE_ACCOUNT_EMAIL \
      --scopes="https://www.googleapis.com/auth/datamanager,https://www.googleapis.com/auth/display-video,https://www.googleapis.com/auth/cloud-platform"
    

    Когда появится запрос на вход, войдите в аккаунт Google с ролью "Создатель токена сервисного аккаунта".

  5. Убедитесь, что учетные данные настроены правильно, с помощью следующей команды: Если команда выполнена успешно, в консоли будет напечатан токен доступа.

    gcloud auth application-default print-access-token --scopes="https://www.googleapis.com/auth/datamanager"
    

Чтобы узнать больше об аутентификации и учетных данных для вашего приложения, ознакомьтесь со статьями Методы аутентификации в Google и Как работают учетные данные приложения по умолчанию.

Как настроить доступ к аккаунту

Аккаунт пользователя

Выберите вкладку, соответствующую вашему варианту использования.

  • Выберите Рекламодатель, если вы используете учетные данные аккаунта Google, который является пользователем аккаунтов рекламодателей, которыми вы хотите управлять.
  • Выберите партнер по обработке данных, если вы используете учетные данные аккаунта Google, который является пользователем аккаунта партнера по обработке данных, и хотите управлять рекламными аккаунтами, связанными с аккаунтом партнера по обработке данных с помощью ссылки партнера. Аккаунты партнеров по данным выдаются только после прохождения процедуры одобрения. Чтобы начать, заполните форму.

Рекламодатель

Предоставьте адресу электронной почты, связанному с пользователем, доступ к Destination.

Следуйте инструкциям, чтобы добавить адрес электронной почты пользователя в аккаунт Google Рекламы или родительский управляющий аккаунт Google Рекламы.

Дисплей и Видео 360

Следуйте инструкциям, чтобы добавить адрес электронной почты пользователя в аккаунт.

Google Аналитика

Следуйте инструкциям, чтобы добавить адрес электронной почты пользователя в аккаунт.

Партнер по обработке данных

Предоставьте адресу электронной почты, связанному с пользователем, доступ к аккаунту партнера по обработке данных. Обычно партнеры по обработке данных используют для доступа к API сервисный аккаунт. Однако если вы используете аккаунт пользователя для тестирования или других целей, вам необходимо предоставить ему доступ к аккаунту партнера по обработке данных.

Добавьте адрес электронной почты пользователя в аккаунт партнера по обработке данных через интерфейс Google Рекламы, следуя этим инструкциям.

Сервисный аккаунт

Выберите вкладку, соответствующую вашему варианту использования.

  • Выберите Рекламодатель, если вы используете учетные данные аккаунта Google, который является пользователем аккаунтов рекламодателей, которыми вы хотите управлять.
  • Выберите партнер по обработке данных, если вы используете учетные данные аккаунта Google, который является пользователем аккаунта партнера по обработке данных, и хотите управлять рекламными аккаунтами, связанными с аккаунтом партнера по обработке данных с помощью ссылки партнера. Аккаунты партнеров по данным выдаются только после прохождения процедуры одобрения. Чтобы начать, заполните форму.

Рекламодатель

Предоставьте сервисному аккаунту доступ к Destination.

Настройте доступ к аккаунту, чтобы добавить сервисный аккаунт в аккаунт Google Рекламы или родительский управляющий аккаунт Google Рекламы.

Дисплей и Видео 360

Создайте пользователя Дисплея и Видео 360, связанного с сервисным аккаунтом.

Google Аналитика

Следуйте инструкциям, чтобы добавить адрес электронной почты сервисного аккаунта в аккаунт.

Партнер по обработке данных

Предоставьте сервисному аккаунту доступ к аккаунту партнера по обработке данных.

Доступ к аккаунту партнера по обработке данных управляется через интерфейс Google Рекламы. Чтобы добавить сервисный аккаунт и задать уровень доступа, следуйте инструкциям в разделе Настройка доступа к аккаунту.

Дальнейшие действия