Разделение согласия в Ads API

Четверг, 20 февраля 2025 г.

Что изменится?
Начиная с недели, которая начнется 1 мая 2025 года, мы будем внедрять разделение согласий для аутентификации пользователей OAuth во всех облачных проектах Google Cloud, созданных до 2019 года. Если вы владеете приложением, которое использует API, связанный с Google Рекламой, через облачный проект Google Cloud, созданный до 2019 года, вам может потребоваться обновить приложение, чтобы оно могло обрабатывать согласие пользователя на отдельные действия, до 1 мая 2025 года.

Общие сведения
Разделение согласия в процессе аутентификации пользователей OAuth позволяет им выбирать, какие именно области действия OAuth они хотят разрешить для вашего приложения, вместо подхода "все или ничего". Эта функция включена во всех проектах консоли Google Cloud, созданных после 2019 года, и отключена в проектах, созданных до 2019 года.

Кого затронет это изменение?
Это изменение затронет вас, если выполняются ВСЕ следующие условия:

  1. Ваше приложение API использует проект консоли Google Cloud, созданный до 2019 года.
  2. Ваше приложение реализует процесс получения согласия пользователя OAuth 2.0 – процесс аутентификации, в котором пользователь входит в систему со своим аккаунтом Google и предоставляет одно или несколько разрешений, запрашиваемых вашим приложением.
  3. Ваше приложение использует несколько API Google, и один из них – это API, связанный с рекламой (см. список ниже).

Кого не затронет это изменение?

  • Существующие токены обновления. Это изменение не повлияет на аутентификацию пользователей, которая уже настроена. Существующие токены обновления продолжат работать без изменений и повторной аутентификации.
  • Приложения с одной областью действия. Если ваше приложение использует только одну область действия API Google, это изменение его не затронет, поскольку в нем нет нескольких областей действия OAuth, которые нужно разделить.
  • Приложения для одного пользователя или приложения с аутентификацией вручную. В вашем приложении не реализован явный процесс аутентификации пользователей OAuth. Вместо этого вы используете скрипт аутентификации вручную, например GenerateUserCredentials, gcloud CLI или OAuth Playground, чтобы выполнить аутентификацию пользователя, а затем используете эти учетные данные в течение длительного периода времени. Поскольку вы выбираете все области действия, необходимые вашему приложению, при аутентификации, это изменение не повлияет на ваше приложение.
  • Сервисные аккаунты. Если ваше приложение использует сервисный аккаунт для аутентификации вызовов API, это изменение вас не затронет.

Что нужно сделать?
Вам нужно убедиться, что ваше приложение может обрабатывать частичное согласие пользователя. Вот как это сделать:

  1. Запросите список областей действия OAuth, на которые пользователь дал согласие, добавив параметр include_granted_scopes в процесс OAuth.
  2. Проверьте фактический список областей действия OAuth, на которые пользователь дал согласие в ответе OAuth.
  3. Реализуйте в приложении пошаговую авторизацию.

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

Как протестировать эту функцию?
Протестировать эту функцию можно двумя способами:

  1. Создайте новый облачный проект Google Cloud. В новых облачных проектах Google Cloud дегруппировка запросов разрешений OAuth включена по умолчанию. Вы можете создать новый проект Google Cloud и использовать его для тестирования приложения.
  2. Включите разделение согласий в существующем проекте. Для этого в запросе авторизации OAuth задайте для параметра enable_granular_consent значение true.

Какие области действия API затронуты?
Изменение затронет следующие API, связанные с Google Рекламой:

API Область действия OAuth
Google Ads API https://adwords.google.com/api/adwords
Google Ad Manager API (SOAP API, бета-версия) https://www.googleapis.com/auth/dfp
https://www.googleapis.com/auth/admanager
Bid Manager API https://www.googleapis.com/auth/doubleclickbidmanager
Content API for Shopping https://www.googleapis.com/auth/content
Display and Video 360 API https://www.googleapis.com/auth/display-video-mediaplanning
https://www.googleapis.com/auth/display-video-user-management
AdMob API https://www.googleapis.com/auth/admob.report
https://www.googleapis.com/auth/admob.googlebidding.readwrite
https://www.googleapis.com/auth/admob.monetization
AdSense for Platforms API https://www.googleapis.com/auth/adsensehost
https://www.googleapis.com/auth/adsense
https://www.googleapis.com/auth/adsense.readonly
Google Analytics API https://www.googleapis.com/auth/analytics
https://www.googleapis.com/auth/analytics.readonly
https://www.googleapis.com/auth/analytics.edit
https://www.googleapis.com/auth/analytics.manage.users
https://www.googleapis.com/auth/analytics.manage.users.readonly
https://www.googleapis.com/auth/analytics.provision
https://www.googleapis.com/auth/analytics.user.deletion
Campaign Manager 360 API https://www.googleapis.com/auth/ddmconversions
https://www.googleapis.com/auth/dfareporting
https://www.googleapis.com/auth/dfatrafficking
Search Ads 360 API https://www.googleapis.com/auth/doubleclicksearch
Google Tag Manager API https://www.googleapis.com/auth/tagmanager.delete.containers
https://www.googleapis.com/auth/tagmanager.edit.containers
https://www.googleapis.com/auth/tagmanager.edit.containerversions
https://www.googleapis.com/auth/tagmanager.manage.accounts
https://www.googleapis.com/auth/tagmanager.manage.users
https://www.googleapis.com/auth/tagmanager.publish
https://www.googleapis.com/auth/tagmanager.readonly
Real-time Bidding API https://www.googleapis.com/auth/realtime-bidding
Authorized Buyers Marketplace API https://www.googleapis.com/auth/authorized-buyers-marketplace
https://www.googleapis.com/auth/adexchange.buyer

Как получить помощь
Если у вас есть вопросы или вам нужна помощь, обратитесь в службу поддержки соответствующего API.

Ярлыки: authentication, oauth