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

Некоторые API Google (те, которые принимают области действия «Конфиденциальные» или «Ограниченные ») предъявляют требования к приложениям, запрашивающим разрешение на доступ к данным потребителей. Эти дополнительные требования для областей действия «Ограниченные» требуют, чтобы приложение подтвердило, что оно относится к разрешённому типу приложений, и прошло дополнительные проверки, включая возможную оценку безопасности.

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

При использовании OAuth 2.0 для получения разрешения от учётной записи Google на доступ к этим данным используются строки, называемые областями доступа , чтобы указать тип данных, к которым вы хотите получить доступ, и необходимый объём доступа. Если ваше приложение запрашивает конфиденциальные или ограниченные области доступа, вам необходимо пройти процедуру проверки, если только использование вашего приложения не подпадает под исключение .

Ограниченных областей меньше по сравнению с конфиденциальными областями. Актуальный список конфиденциальных и ограниченных областей действия (Security и Restricted) представлен в разделе «Часто задаваемые вопросы о проверке API OAuth» . Эти области действия предоставляют широкий доступ к данным пользователей Google и требуют прохождения проверки области действия перед запросом областей действия из любой учетной записи Google. Подробнее об этом требовании см. в разделе «Политика использования данных пользователей сервисов API Google» и «Дополнительные требования для конкретных областей действия API» или на странице Google Developers для конкретного продукта. Если вы храните или передаете данные об ограниченных областях действия на серверах, вам необходимо пройти оценку безопасности .

Понимание ограниченных областей

Если ваше приложение запрашивает какие-либо ограниченные области действия и не соответствует требованиям для исключения , вам необходимо выполнить Дополнительные требования для определенных областей действия API Политики в отношении пользовательских данных служб API Google или специфические требования к продукту на странице разработчика Google для данного продукта, что требует более обширной процедуры проверки.

Поймите, как вы используете область применения

  • Проверьте области действия, которые использует ваше приложение или которые вы хотите использовать. Чтобы узнать, как используются текущие области действия, проверьте исходный код приложения на наличие областей действия, отправленных с запросами авторизации.
  • Определите, необходима ли каждая запрошенная область действия для предполагаемых действий функции вашего приложения, и используйте минимальные привилегии, необходимые для предоставления этой функции. Справочная документация по конечным точкам API Google обычно доступна на странице разработчика Google для каждого продукта, включая область действия, необходимую для вызова конечной точки или конкретных свойств внутри неё. Для получения дополнительной информации о необходимых областях доступа для конечных точек API, вызываемых вашим приложением, ознакомьтесь со справочной документацией по этим конечным точкам. For example, for an app that only uses Gmail APIs to occasionally send emails on a user's behalf, don't request the scope that provides full access to the user's email data.
  • Данные, которые вы получаете от API Google, должны использоваться только в соответствии с политиками API и так, как вы представляете своим пользователям в действиях вашего приложения и в вашей политике конфиденциальности.
  • Обратитесь к документации API, чтобы узнать больше о каждой области применения, включая ее потенциал. sensitive or restricted статус.
  • Объявите все области, используемые вашим приложением, в Cloud Console's Data Access page Указанные вами области группируются в категории «конфиденциально» или «ограниченно», чтобы выделить любую требуемую дополнительную проверку.
  • Найдите наилучшую область применения, которая соответствует данным, используемым вашей интеграцией, разберитесь в ее назначении, убедитесь еще раз, что все по-прежнему работает в тестовой среде, а затем подготовьтесь к отправке на проверку.

Обязательно учтите время, необходимое для завершения проверки, в плане запуска приложения или любых новых функций, требующих новой области действия. Одно из этих дополнительных требований возникает, если приложение обращается к данным пользователей Google с сервера или через него. В таких случаях система должна проходить ежегодную оценку безопасности, проводимую независимым сторонним оценщиком, одобренным Google. По этой причине процесс проверки с ограниченными областями действия может занять несколько недель. Обратите внимание, что все приложения должны сначала пройти этап проверки бренда , который обычно занимает 2–3 рабочих дня, если информация о бренде изменилась с момента последней одобренной проверки на экране согласия OAuth.

Разрешенные типы приложений

Определённые типы приложений могут получать доступ к ограниченным областям действия каждого продукта. Типы приложений можно найти на странице разработчиков Google для конкретного продукта (например, в разделе «Политика API Gmail»).

Вы несете ответственность за понимание и определение типа своего приложения. Однако, если вы действительно не уверены в типе своего приложения, вы можете не указывать варианты ответа на вопрос «Какие функции вы будете использовать? » при отправке приложения на проверку. Команда проверки API Google определит тип приложения.

Оценка безопасности

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

Для стандартизации оценки безопасности мы используем App Defense Alliance и фреймворк оценки безопасности облачных приложений (CASA).

Как упоминалось ранее, для сохранения доступа к любым проверенным ограниченным областям применения приложения должны проходить повторную проверку на соответствие требованиям и оценку безопасности не реже одного раза в 12 месяцев с даты утверждения письма об оценке (LOA) вашим оценщиком. Если в вашем приложении добавляется новая ограниченная область применения, может потребоваться повторная оценка приложения для охвата этой дополнительной области применения, если она не была включена в предыдущую оценку безопасности.

Команда Google по проверке сообщит вам по электронной почте, когда придёт время повторной сертификации вашего приложения. Чтобы убедиться, что нужные члены вашей команды будут уведомлены об этой ежегодной проверке, свяжите дополнительные аккаунты Google с вашим приложением. Cloud Console Проект в качестве владельца или редактора. Также полезно поддерживать в актуальном состоянии адреса электронной почты службы поддержки пользователей и разработчиков, указанные в Google. Cloud Console OAuth Branding page.

Шаги по подготовке к проверке

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

  1. Подтвердите, что ваше приложение не подпадает ни под один из вариантов использования, указанных в разделе «Исключения из требований проверки» .
  2. Убедитесь, что ваше приложение соответствует требованиям к брендингу соответствующих API или продукта. Например, см. рекомендации по брендингу для областей действия входа Google.
  3. Подтвердите право собственности на авторизованные домены вашего проекта в Google Search Console . Используйте учетную запись Google, связанную с вашим проектом. API Console проект в качестве владельца или редактора.
  4. Убедитесь, что вся информация о бренде на экране согласия OAuth, например название приложения, адрес электронной почты службы поддержки, URI домашней страницы, URI политики конфиденциальности и т. д., точно отражает идентификационные данные приложения.

Требования к домашней странице приложения

Убедитесь, что ваша домашняя страница соответствует следующим требованиям:

  • Ваша домашняя страница должна быть общедоступна, а не только для зарегистрированных пользователей вашего сайта.
  • Соответствие вашей домашней страницы рассматриваемому приложению должно быть очевидным.
  • Ссылки на страницу вашего приложения в Google Play Store или на его страницу в Facebook не считаются действительными домашними страницами приложений.

Требования к ссылке на политику конфиденциальности приложений

Убедитесь, что политика конфиденциальности вашего приложения соответствует следующим требованиям:

  • Политика конфиденциальности должна быть видна пользователям, размещена в том же домене, что и домашняя страница вашего приложения, и на нее должна быть ссылка на экране согласия OAuth Google API Console. Обратите внимание, что домашняя страница должна содержать описание функциональности приложения, а также ссылки на политику конфиденциальности и дополнительные условия обслуживания.
  • Политика конфиденциальности должна раскрывать способ, которым ваше приложение получает доступ к данным пользователей Google, использует, хранит или передает их. The privacy policy must comply with the Google API Services User Data Policy and the Limited Use requirements for restricted scopes.Вы должны ограничить использование данных пользователей Google практиками, раскрытыми в вашей опубликованной политике конфиденциальности.
  • Review example cases of privacy policies that don't meet the Limited Use requirements.

Как отправить приложение на проверку

А Google Cloud Console проект организует все ваши Cloud Console Ресурсы. Проект состоит из набора связанных учётных записей Google с разрешением на выполнение операций проекта, набора включённых API, а также настроек выставления счетов, аутентификации и мониторинга для этих API. Например, проект может содержать один или несколько клиентов OAuth, настроить API для использования этими клиентами и настроить экран согласия OAuth , который отображается пользователям перед предоставлением ими доступа к вашему приложению.

Если какие-либо из ваших OAuth-клиентов не готовы к использованию, рекомендуем удалить их из проекта, запрашивающего проверку. Это можно сделать в Clients page.

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

  1. Убедитесь, что ваше приложение соответствует Условиям обслуживания API Google и Политике использования данных пользователей API служб Google .
  2. Сохраняйте в актуальном состоянии роли владельца и редактора связанных учетных записей вашего проекта, а также адрес электронной почты службы поддержки пользователей и контактную информацию разработчика на экране согласия OAuth. Cloud Console. Это гарантирует, что соответствующие члены вашей команды будут уведомлены о любых новых требованиях.
  3. Перейти к Cloud ConsoleЦентр проверки OAuth.
  4. Нажмите кнопку выбора проекта .
  5. В открывшемся диалоговом окне «Выбрать из» выберите свой проект. Если вы не можете найти свой проект, но знаете его идентификатор, вы можете создать URL-адрес в браузере в следующем формате:

    https://console.developers.google.com/auth/branding?project=[PROJECT_ID]

    Замените [PROJECT_ID] на идентификатор проекта, который вы хотите использовать.

  6. Нажмите кнопку «Изменить приложение» .
  7. Введите необходимую информацию на странице согласия OAuth, а затем нажмите кнопку Сохранить и продолжить .
  8. Используйте кнопку «Добавить или удалить области действия», чтобы указать все области действия, запрашиваемые вашим приложением. Начальный набор областей действия, необходимых для входа через Google, предварительно заполнен в разделе « Неконфиденциальные области действия» . Добавленные области действия классифицируются как неконфиденциальные. sensitive, or restricted.
  9. Предоставьте до трех ссылок на любую соответствующую документацию по соответствующим функциям вашего приложения.
  10. Предоставьте любую дополнительную информацию, которая будет запрошена о вашем приложении на последующих этапах.

    1. Ensure your app complies with the Additional requirements for specific API scopes, which includes undergoing an annual security assessment if your app accesses restricted scope Google users' data from or through a third-party server.
    2. Ensure your app is one of the allowed types specified in the Limited Use section of the Additional requirements for specific API scopes page.
    3. If your app is a task automation platform, your demonstration video must showcase how multiple API workflows are created and automated, and in which directions user data flows.
    4. Prepare a video that fully demonstrates how a user initiates and grants access to the requested scopes and shows, in detail, the usage of the granted sensitive and restricted scopes in the app. Upload the video to YouTube Studio and set Visibility as Unlisted. You need to provide a link to the demonstration video in the YouTube link field.

      1. Show the OAuth grant process that users will experience, in English. This includes the consent flow and, if you use Google Sign-In, the sign-in flow.
      2. Show that the OAuth consent screen correctly displays the App Name.
      3. Show that the browser address bar of the OAuth consent screen correctly includes your app's OAuth client ID.
      4. To show how the data will be used, demonstrate the functionality that's enabled by each sensitive and restricted scope that you request.
      5. If you use multiple clients, and therefore have multiple OAuth client IDs, show how the data is accessed on each OAuth client.
    5. Select your permitted application type from the "What features will you use?" list.
    6. Describe how you will use the restricted scopes in your app and why more limited scopes aren't sufficient.
  11. Если предоставленная вами конфигурация приложения требует проверки, вы можете отправить приложение на проверку. Заполните необходимые поля и нажмите «Отправить» , чтобы начать процесс проверки.

После отправки вашего приложения команда Google Trust & Safety свяжется с вами по электронной почте и предоставит всю необходимую дополнительную информацию или шаги, которые вам необходимо выполнить. Проверьте свои адреса электронной почты в разделе «Контактная информация разработчика» и адрес электронной почты службы поддержки на экране согласия OAuth, чтобы получить дополнительную информацию. Вы также можете просмотреть страницу экрана согласия OAuth для вашего проекта, чтобы узнать текущий статус проверки, в том числе приостановлен ли процесс проверки на время ожидания вашего ответа.

Исключения из требований проверки

Если ваше приложение будет использоваться в каком-либо из сценариев, описанных в следующих разделах, вам не нужно отправлять его на проверку.

Личное использование

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

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

Чтобы соответствовать политикам Google OAuth 2.0, мы рекомендуем вам использовать разные проекты для тестирования и производства. Рекомендуем отправлять приложение на проверку только в том случае, если вы хотите сделать его доступным для любого пользователя с учётной записью Google. Таким образом, если ваше приложение находится на этапе разработки, тестирования или подготовки, верификация не требуется.

Если ваше приложение находится на этапе разработки или тестирования, вы можете оставить статус публикации по умолчанию — «Тестирование» . Это означает, что ваше приложение всё ещё находится в разработке и доступно только пользователям, добавленным вами в список тестовых пользователей. Вам необходимо управлять списком учётных записей Google, участвующих в разработке или тестировании вашего приложения.

Предупреждающее сообщение о том, что Google не проверил приложение, проходящее тестирование.
Фигура 1. Экран предупреждения тестера

Только данные, принадлежащие сервису

Если ваше приложение использует учетную запись службы только для доступа к своим собственным данным и не обращается ни к каким пользовательским данным (связанным с учетной записью Google), то вам не нужно отправлять заявку на проверку.

Чтобы узнать, что такое сервисные учётные записи, см. раздел «Сервисные учётные записи» в документации Google Cloud. Инструкции по использованию сервисного учётного записи см. в разделе «Использование OAuth 2.0 для межсерверных приложений» .

Только для внутреннего использования

Это означает, что приложение используется только пользователями вашей организации Google Workspace или Cloud Identity. Проект должен принадлежать организации, а его экран согласия OAuth должен быть настроен для типа пользователя Internal . В этом случае вашему приложению может потребоваться одобрение администратора организации. Подробнее см. в разделе Дополнительные рекомендации по Google Workspace .

Установка на весь домен

Если вы планируете, что ваше приложение будет ориентировано только на пользователей организации Google Workspace или Cloud Identity и всегда будет использовать установку на уровне домена , то вашему приложению не потребуется проверка. Это связано с тем, что установка на уровне домена позволяет администратору домена предоставлять сторонним и внутренним приложениям доступ к данным ваших пользователей. Только администраторы организаций могут добавить приложение в список разрешенных для использования в своих доменах.

Узнайте, как сделать приложение устанавливаемым на уровне домена, в разделе часто задаваемых вопросов. У моего приложения есть пользователи с корпоративными учетными записями из другого домена Google Workspace .