В этом документе содержится информация об авторизации и аутентификации, специфичная для API Google Drive. Перед прочтением этого документа обязательно ознакомьтесь с общей информацией об аутентификации и авторизации в Google Workspace по ссылке «Узнайте об аутентификации и авторизации» .
Настройте OAuth 2.0 для авторизации.
Для авторизации вашего приложения через API Google Drive необходимо определить области действия OAuth в двух местах: в консоли Google Cloud и в вашем приложении.
В консоли Google Cloud необходимо указать области действия (scopes), необходимые вашему приложению, в конфигурации экрана согласия OAuth. Это наивысший уровень разрешений, который ваше приложение может запросить. Это служит официальным запросом в Google, и указанные области действия отображаются пользователям на экране согласия. Это позволяет пользователю точно понять, к каким данным и действиям ваше приложение запрашивает доступ.
Настройте экран согласия OAuth и выберите области действия , чтобы определить, какая информация отображается пользователям и рецензентам приложения, а также зарегистрируйте свое приложение, чтобы вы могли опубликовать его позже.
В вашем приложении при инициализации API необходимо явно запросить конкретные области доступа, необходимые для данной сессии. Хотя консоль Google Cloud определяет максимальный уровень разрешений, которые может запрашивать ваше приложение, фактические разрешения для конкретного пользователя определяются кодом. Это помогает гарантировать, что приложение запрашивает только те разрешения, которые необходимы для выполнения конкретной задачи.
В коде вашего приложения можно одновременно объявить одну или несколько областей действия OAuth в виде массива.
В следующем примере кода показано, как объявить несколько областей действия OAuth:
Java
List<String> SCOPES = Arrays.asList(
DriveScopes.DRIVE_FILE,
DriveScopes.DRIVE_METADATA_READONLY
);
Python
SCOPES = [
"https://www.googleapis.com/auth/drive.file",
"https://www.googleapis.com/auth/drive.metadata.readonly",
]
Node.js
const SCOPES = [
'https://www.googleapis.com/auth/drive.file',
'https://www.googleapis.com/auth/drive.metadata.readonly'
];
Чтобы увидеть, как объявляются и используются области видимости в полном примере кода, см. раздел «Быстрые старты» .
Области действия API привода
Чтобы определить уровень доступа, предоставляемый вашему приложению, необходимо идентифицировать и объявить области авторизации . Область авторизации — это строка URI OAuth 2.0, содержащая имя приложения Google Workspace, тип данных, к которым оно получает доступ, и уровень доступа. Области авторизации — это запросы вашего приложения на работу с данными Google Workspace, включая данные учетных записей Google пользователей.
При установке вашего приложения пользователю предлагается подтвердить области действия, используемые приложением. Как правило, следует выбирать максимально узкую область действия и избегать запросов на области, которые вашему приложению не требуются. Пользователи охотнее предоставляют доступ к ограниченным, четко описанным областям действия.
По возможности используйте неконфиденциальные области доступа, поскольку они предоставляют доступ к отдельным файлам и сужают доступ к конкретным функциям, необходимым приложению.
Неконфиденциальные прицелы
Для большинства сценариев использования рекомендуется использовать следующие области действия API Drive:
| Код области действия | Описание |
|---|---|
https://www.googleapis.com/auth/drive.appdata | Просматривайте и управляйте собственными конфигурационными данными приложения в своем Google Диске. |
https://www.googleapis.com/auth/drive.install | Разрешите приложениям отображаться в качестве опции в меню «Открыть с помощью» или «Создать». |
https://www.googleapis.com/auth/drive.file | Создавайте новые файлы в Google Диске или изменяйте существующие файлы, которые вы открываете с помощью приложения или которыми пользователь делится с приложением, используя API Google Picker или встроенную в приложение функцию выбора файлов. |
Прицелы повышенной чувствительности
| Код области действия | Описание |
|---|---|
https://www.googleapis.com/auth/drive.apps.readonly | Просмотрите список приложений, которым разрешен доступ к вашему Диску. |
Ограниченные области применения
| Код области действия | Описание |
|---|---|
https://www.googleapis.com/auth/drive | Просматривайте и управляйте всеми своими файлами на Google Диске. |
https://www.googleapis.com/auth/drive.readonly | Просмотрите и скачайте все свои файлы на Google Диске. |
https://www.googleapis.com/auth/drive.activity | Просматривайте файлы в вашем Диске и добавляйте к ним записи об активности. |
https://www.googleapis.com/auth/drive.activity.readonly | Просмотрите историю активности файлов в вашем Диске. |
https://www.googleapis.com/auth/drive.meet.readonly | Просмотр файлов Google Диска, созданных или отредактированных с помощью Google Meet. |
https://www.googleapis.com/auth/drive.metadata | Просматривайте и управляйте метаданными файлов на вашем Диске. |
https://www.googleapis.com/auth/drive.metadata.readonly | Просмотрите метаданные файлов на вашем Диске. |
https://www.googleapis.com/auth/drive.scripts | Измените поведение ваших скриптов Google Apps Script. |
В таблицах выше указаны области их чувствительности в соответствии со следующими определениями:
Неконфиденциальные данные : Эти области действия обеспечивают минимальный уровень авторизации и требуют только базовой проверки приложения OAuth . Для получения дополнительной информации см. раздел «Требования к проверке» .
Конфиденциальные данные : Эти области доступа предоставляют доступ к определенным пользовательским данным Google, на использование которых пользователи дают разрешение в вашем приложении. Для их использования требуется дополнительная проверка приложения OAuth . Дополнительную информацию см. в разделе «Требования к конфиденциальным и ограниченным областям доступа» .
Ограниченный доступ : Эти области доступа предоставляют широкий доступ к пользовательским данным Google и требуют проверки приложения OAuth с ограниченным доступом. Для получения дополнительной информации см. Политику Google API Services в отношении пользовательских данных и Дополнительные требования для конкретных областей доступа API . См. также Условия использования Google Drive .
Если вы храните (или передаете) данные с ограниченным доступом на серверах, то вам необходимо пройти оценку безопасности.
Если вашему приложению требуется доступ к другим API Google, вы также можете добавить соответствующие области действия. Дополнительную информацию об областях действия API Google см. в разделе «Использование OAuth 2.0 для доступа к API Google» .
Для получения дополнительной информации о конкретных областях действия OAuth 2.0 см. раздел «Области действия OAuth 2.0 для API Google» .
Квалификационные требования для работы в ограниченных областях.
Ограниченные области действия Google Drive разрешены только для определенных типов приложений. Для этого ваше приложение должно соответствовать одной из следующих категорий:
Резервное копирование и синхронизация : приложения для конкретных платформ и веб-приложения, обеспечивающие локальную синхронизацию или автоматическое резервное копирование файлов пользователей в Google Диске.
Повышение производительности и образование : Приложения с основным пользовательским интерфейсом, который может включать взаимодействие с файлами Google Диска, метаданными или правами доступа. К таким приложениям относятся приложения для управления задачами, ведения заметок, группового общения и совместной работы в классе.
Отчетность и безопасность : Приложения, предоставляющие пользователям или клиентам информацию о том, как происходит обмен файлами или к ним осуществляется доступ.
Для продолжения использования ограниченных областей видимости вам следует подготовить ваше приложение к проверке на наличие ограниченных областей видимости .
Перенос существующего приложения из области с ограниченными правами доступа.
Если ваше приложение Google Диск использует ограниченные области доступа, мы рекомендуем перейти на неконфиденциальные области доступа API Google Диска. Использование неконфиденциальных областей доступа, таких как drive.file , предоставляет доступ к конкретным файлам и ограничивает доступ к определенным функциям, необходимым приложению.
Многие приложения могут перейти на доступ к отдельным файлам без каких-либо изменений.
Если вы используете собственный инструмент выбора файлов, мы рекомендуем перейти на API Google Picker , который полностью поддерживает различные области видимости.
Преимущества области действия файлов Google Drive
Использование области действия OAuth drive.file в сочетании с API Google Picker оптимизирует как пользовательский опыт, так и безопасность вашего приложения.
Область действия OAuth drive.file позволяет пользователям выбирать, какими файлами они хотят поделиться с вашим приложением. Это дает им больше контроля и уверенности в том, что доступ вашего приложения к их файлам ограничен и более безопасен. Напротив, требование широкого доступа ко всем файлам Google Drive может отпугнуть пользователей от взаимодействия с вашим приложением.
Ниже приведены некоторые причины, по которым вам следует использовать область drive.file :
Удобство использования : Область действия
drive.fileработает со всеми ресурсами REST API Google Drive, а это значит, что вы можете использовать её так же, как и более широкие области действия OAuth.Особенности : API Google Picker предоставляет интерфейс, аналогичный интерфейсу Google Drive. Он включает в себя несколько представлений, отображающих предварительный просмотр и миниатюры файлов Drive, а также встроенное модальное окно, благодаря которому пользователи не покидают основное приложение.
Удобство : Приложения могут применять фильтры к определенным типам файлов Google Диска (например, к документам Google Docs, таблицам Google Sheets и фотографиям) при использовании фильтра для файлов в Google Picker .
Простая проверка : поскольку
drive.fileне содержит конфиденциальной информации, это позволяет упростить процесс проверки.
Надежно храните токены обновления.
Для доступа к конфиденциальным данным через API Google Drive ваше приложение должно получить токен доступа, предоставляющий доступ к этому API. Один токен доступа может предоставлять различную степень доступа к нескольким API в зависимости от запрашиваемых вами областей действия.
Поскольку токены доступа имеют кратковременный срок действия, для долговременного доступа к API Google Drive необходимо использовать токены обновления. Токен обновления позволяет вашему приложению запрашивать новые токены доступа.
Сохраняйте токены обновления в надежном долговременном хранилище и продолжайте использовать их, пока они остаются действительными.
Для получения дополнительной информации см. раздел «Использование OAuth 2.0 для доступа к API Google» .
Связанные темы
- Для получения общего обзора аутентификации и авторизации в Google Workspace см. раздел «Узнайте больше об аутентификации и авторизации» .
- Обзор аутентификации и авторизации в Google Cloud см. в разделе «Обзор аутентификации» .
- Для получения дополнительной информации о служебных учетных записях см. раздел «Служебные учетные записи» .
- Для получения помощи в устранении неполадок см. раздел «Устранение ошибок» .