В этом руководстве рассказывается, как обеспечить безопасность приложения и учетных данных пользователей.
Как пройти проверку приложения OAuth
Область действия OAuth 2.0 для Google Ads API классифицируется как область действия с ограниченным доступом. Это означает, что перед запуском приложения в производство необходимо пройти проверку приложения OAuth. Дополнительную информацию можно найти в документации по Google Identity, статье Справочного центра о непроверенных приложениях и документации по настройке окна запроса доступа OAuth.
Защитите учетные данные приложения
Защитите идентификатор клиента OAuth 2.0 и секретный код клиента. Эти учетные данные помогают пользователям и Google идентифицировать ваше приложение, поэтому с ними следует обращаться осторожно. К этим учетным данным приложения следует относиться как к паролям. Не делитесь ими через небезопасные каналы, например не публикуйте на форумах, не отправляйте файлы конфигурации с этими учетными данными по электронной почте, не задавайте их в коде и не добавляйте в репозиторий. Рекомендуем по возможности использовать менеджер секретов, например Google Cloud Secret Manager или AWS Secrets Manager.
Если секретные коды клиентов OAuth 2.0 будут скомпрометированы, вы можете сбросить их.
Защитите сервисные аккаунты
Если вы используете сервисные аккаунты, защитите их следующим образом:
Относитесь к ключу сервисного аккаунта и файлу JSON как к паролям. По возможности защищайте их с помощью менеджера секретов, например Google Cloud Secret Manager или AWS Secrets Manager.
Следуйте дополнительным рекомендациям Google Cloud по защите сервисных аккаунтов и управлению ими.
Защитите пользовательские токены
Если ваше приложение авторизует нескольких пользователей, вам следует предпринять дополнительные меры для защиты их токенов обновления и токенов доступа. Храните токены в зашифрованном виде и никогда не передавайте их в виде обычного текста. Используйте систему безопасного хранения, подходящую для вашей платформы.
Как обрабатывать отзыв и истечение срока действия токена обновления
Если ваше приложение запрашивает токен обновления OAuth 2.0 в рамках авторизации, вы также должны обрабатывать его аннулирование или истечение срока действия. Токены обновления могут быть признаны недействительными по разным причинам. В этом случае приложение должно либо повторно авторизовать пользователя при следующем входе, либо удалить его данные. Офлайн-задания, например задания cron, должны выявлять и регистрировать аккаунты, у которых истек срок действия токенов обновления, а не продолжать отправлять неудачные запросы. Чтобы поддерживать стабильность серверов API, Google может ограничивать работу приложений, которые в течение длительного времени генерируют большое количество ошибок.
Как управлять согласием для нескольких областей действия
Если ваше приложение запрашивает авторизацию для нескольких областей действия OAuth 2.0, пользователь может не предоставить все запрошенные вами области действия OAuth. Если пользователь не предоставит доступ к областям, приложение должно отключить соответствующие функции. Повторный запрос можно отправить, только если пользователь явно выразил намерение использовать функцию, для которой требуется область действия. В таких случаях используйте дополнительную авторизацию, чтобы запрашивать нужные области действия OAuth.
Если для работы основных функций приложения требуется несколько областей доступа, объясните это пользователю, прежде чем запрашивать согласие.