Настройте OAuth для вашего приложения

Чтобы настроить OAuth для вашего приложения, вы настраиваете рабочий процесс OAuth и включаете области OAuth API переносимости данных.

Настройте рабочий процесс OAuth

Чтобы настроить поток OAuth для вашего приложения, выполните основные шаги, описанные в документации Google Identity.

Большинство разработчиков используют поток серверных веб-приложений для получения согласия OAuth, но вы также можете использовать поток веб-приложений JavaScript или поток мобильных и настольных приложений .

Области OAuth API переносимости данных

При настройке приложения API переносимости данных для OAuth включите области OAuth API переносимости данных, соответствующие вашему приложению. Некоторые области являются sensitive и restricted , и к ним предъявляются дополнительные требования.

Когда вы добавляете области API переносимости данных в поток OAuth, могут возникнуть случаи, когда ваш пользователь дает согласие на некоторые, но не на все области. Ваше приложение должно иметь возможность обрабатывать эти случаи следующим образом:

  • Разрешение частичного экспорта данных
  • Уведомление пользователя о том, что он не выбрал все необходимые области (и корректный сбой)
  • Запрос у пользователя оставшихся согласий

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

Также следует учитывать, что во время процесса OAuth ваше приложение не знает, какая учетная запись Google использовалась для предоставления согласия. Токен OAuth, который получает ваше приложение, непрозрачен.

Если вы ищете информацию о том, как пользователи передают данные, см. раздел Как поделиться копией своих данных с третьим лицом .

Ограничения областей действия

В этом разделе рассматриваются ограничения в областях, которые приводят к ошибкам.

Смешанные области применения

Запросы на области API переносимости данных (например, https://www.googleapis.com/auth/dataportability.*) нельзя смешивать с другими областями (например, https://www.googleapis.com/auth/). userinfo.email). Вот пример неправильного запроса, ограниченная часть которого выделена жирным шрифтом:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search+https://www.googleapis.com/auth/userinfo.email&
include_granted_scopes=false

Ранее предоставленные области действия

Никогда не следует устанавливать include_granted_scopes=true при запросе областей DPAPI. Вот пример неправильного запроса, ограниченная часть которого выделена жирным шрифтом:

https://accounts.google.com/o/oauth2/v2/auth?
client_id=client_id&
redirect_uri=redirect_uri&
response_type=token&
scope=https://www.googleapis.com/auth/dataportability.myactivity.search&
include_granted_scopes=true

Категории областей действия

Список всех областей OAuth, поддерживаемых API переносимости данных, и их категорий см. в разделе Доступные области OAuth . Список всех групп ресурсов и областей OAuth, поддерживаемых конкретной службой, см. на справочной странице схемы для этой службы.