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

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

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

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

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

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

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

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

  • Просмотрите области, которые использует ваше приложение или которые вы хотите использовать. Чтобы найти существующее использование области, проверьте исходный код вашего приложения на наличие областей, отправленных с запросами авторизации.
  • Определите, что каждая запрошенная область необходима для предполагаемых действий функции вашего приложения и использует наименьшие привилегии, необходимые для предоставления функции. Google API обычно имеет справочную документацию на странице продукта Google Developer для своих конечных точек, которая включает область действия, необходимую для вызова конечной точки или определенных свойств внутри. Дополнительные сведения о необходимых областях доступа для конечных точек 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 .
  • Объявите все области, используемые вашим приложением, на странице областей конфигурации экрана согласия OAuth API Console. Указанные вами области сгруппированы в деликатные или ограниченные категории, чтобы выделить любую дополнительную проверку, которая требуется.
  • Найдите наилучшую область, которая соответствует данным, используемым вашей интеграцией, изучите ее использование, еще раз убедитесь, что все по-прежнему работает в тестовой среде, а затем подготовьтесь к отправке на проверку.

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

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

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

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

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

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

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

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

Команда проверки Google сообщит вам по электронной почте, когда придет время повторно сертифицировать ваше приложение. Чтобы удостовериться, что нужные члены вашей команды уведомлены об этом ежегодном введении в действие, свяжите дополнительные учетные записи Google со своим проектом API Console в качестве владельца или редактора. Это также помогает поддерживать актуальность адресов электронной почты службы поддержки пользователей и разработчиков, которые указаны в Google API Console OAuth Consent Screen 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 API Console организует все ваши ресурсы API Console . Проект состоит из набора связанных учетных записей Google, у которых есть разрешение на выполнение операций проекта, набора включенных API и настроек выставления счетов, проверки подлинности и мониторинга для этих API. Например, проект может содержать одного или нескольких клиентов OAuth, настраивать API для использования этими клиентами и настраивать экран согласия OAuth , который отображается пользователям до того, как они разрешат доступ к вашему приложению.

Если какой-либо из ваших клиентов OAuth не готов к работе, мы предлагаем вам удалить его из проекта, запрашивающего проверку. Вы можете сделать это в файле Google API Console.

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

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

    https://console.developers.google.com/apis/credentials/consent?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 должен быть настроен для внутреннего типа пользователя . В этом случае вашему приложению может потребоваться одобрение администратора организации. Дополнительные сведения см. в разделе Дополнительные рекомендации по Google Workspace .

Установка для всего домена

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

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