Este documento contém informações de autorização e autenticação específicas da API Google Drive. Antes de ler este documento, confira as informações gerais de autenticação e autorização do Google Workspace em Saiba mais sobre autenticação e autorização.
Configurar o OAuth 2.0 para autorização
Para autorizar seu app, a API Google Drive exige que você defina escopos do OAuth em dois lugares: o console do Google Cloud e seu app.
No console do Google Cloud, declare os escopos necessários para seu app na configuração da tela de permissão OAuth. Essas são as permissões de nível mais alto que seu app pode solicitar. Isso serve como uma solicitação formal ao Google, e os escopos declarados são o que o Google mostra aos usuários na tela de consentimento. Ele permite que o usuário entenda exatamente quais dados e ações seu app está pedindo acesso.
Configure a tela de permissão do OAuth e escolha escopos para definir quais informações são mostradas aos usuários e revisores de apps e registre o app para poder publicá-lo mais tarde.
No seu app, ao iniciar a API, você precisa solicitar explicitamente os escopos específicos necessários para essa sessão. Embora o console do Google Cloud defina o nível mais alto de permissões que seu app pode solicitar, o código determina as permissões reais de um determinado usuário. Isso ajuda a garantir que o app peça apenas as permissões necessárias para uma tarefa específica.
É possível declarar um ou mais escopos do OAuth por vez no código do app como uma matriz.
O exemplo de código a seguir mostra como declarar vários escopos do 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'
];
Para saber como os escopos são declarados e usados em um exemplo de código completo, consulte Guias de início rápido.
Escopos da API Drive
Para definir o nível de acesso concedido ao seu app, é necessário identificar e declarar escopos de autorização. Um escopo de autorização é uma string URI do OAuth 2.0 que contém o nome do app do Google Workspace, o tipo de dados acessados e o nível de acesso. Os escopos são solicitações do app para trabalhar com dados do Google Workspace, incluindo dados da Conta do Google dos usuários.
Quando o app é instalado, o usuário precisa validar os escopos usados por ele. Em geral, escolha o escopo mais restrito possível e evite solicitar escopos que o app não exige. Os usuários concedem acesso mais facilmente a escopos limitados e claramente descritos.
Sempre que possível, use escopos não sensíveis, já que eles concedem acesso por arquivo e restringem o acesso a recursos específicos necessários para um app.
Escopos não confidenciais
Os seguintes escopos da API Drive são recomendados para a maioria dos casos de uso:
| Código do escopo | Descrição |
|---|---|
https://www.googleapis.com/auth/drive.appdata |
Ver e gerenciar os dados de configuração do app no Google Drive. |
https://www.googleapis.com/auth/drive.install |
Permitir que os apps apareçam como opção no menu "Abrir com" ou "Novo". |
https://www.googleapis.com/auth/drive.file |
Criar ou modificar arquivos do Drive abertos com um app ou compartilhados com ele pelo usuário ao usar a API Google Picker ou o seletor de arquivos do app. |
Escopos confidenciais
| Código do escopo | Descrição |
|---|---|
https://www.googleapis.com/auth/drive.apps.readonly |
Ver os apps autorizados a acessar seu Drive. |
Escopos restritos
| Código do escopo | Descrição |
|---|---|
https://www.googleapis.com/auth/drive |
Ver e gerenciar todos os seus arquivos do Drive. |
https://www.googleapis.com/auth/drive.readonly |
Ver e baixar todos os seus arquivos do Drive. |
https://www.googleapis.com/auth/drive.activity |
Veja e adicione ao registro de atividades de arquivos no seu Drive. |
https://www.googleapis.com/auth/drive.activity.readonly |
Veja o registro de atividades de arquivos no seu Drive. |
https://www.googleapis.com/auth/drive.meet.readonly |
Confira os arquivos do Drive criados ou editados pelo Google Meet. |
https://www.googleapis.com/auth/drive.metadata |
Ver e gerenciar metadados dos arquivos no seu Drive. |
https://www.googleapis.com/auth/drive.metadata.readonly |
Ver metadados de arquivos no Drive. |
https://www.googleapis.com/auth/drive.scripts |
Mude o comportamento dos scripts do Google Apps Script. |
Os escopos nas tabelas anteriores indicam a sensibilidade deles, de acordo com as seguintes definições:
Não sensíveis: esses escopos fornecem o menor escopo de autorização e exigem apenas a Verificação de apps OAuth básica. Para mais informações, consulte Requisitos de verificação.
Sensíveis: esses escopos fornecem acesso a dados específicos do usuário do Google que os usuários autorizam para seu app. Eles exigem verificação do app OAuth adicional. Para mais informações, consulte Requisitos de escopo sensível e restrito.
Restrito: esses escopos oferecem amplo acesso aos dados de usuário do Google e exigem a verificação de apps OAuth com escopo restrito. Para mais informações, consulte a Política de dados do usuário dos serviços de API do Google e os Requisitos adicionais para escopos de API específicos. Consulte também os Termos de Serviço do Google Drive.
Se você armazenar (ou transmitir) dados de escopo restrito em servidores, será necessário passar por uma avaliação de segurança.
Se o app precisar de acesso a outras APIs do Google, adicione esses escopos também. Para mais informações sobre os escopos das APIs do Google, consulte Como usar o OAuth 2.0 para acessar as APIs do Google.
Para mais informações sobre escopos específicos do OAuth 2.0, consulte Escopos do OAuth 2.0 para APIs do Google.
Qualificações para escopos restritos
Apenas tipos específicos de aplicativos podem usar escopos restritos para o Google Drive. Para se qualificar, seu app precisa se enquadrar em uma das seguintes categorias:
Backup e sincronização: apps da Web e específicos da plataforma que oferecem sincronização local ou backup automático dos arquivos do Drive dos usuários.
Produtividade e educação: apps com uma interface principal que pode envolver interação com arquivos, metadados ou permissões do Drive. Esses apps incluem gerenciamento de tarefas, anotações, comunicações de grupo de trabalho e colaboração em sala de aula.
Relatórios e segurança: apps que oferecem insights aos usuários ou clientes sobre como os arquivos são compartilhados ou acessados.
Para continuar usando escopos restritos, prepare seu app para a verificação de escopo restrito.
Migrar um app atual de escopos restritos
Se o app do Drive usar escopos restritos, recomendamos migrar
para um escopo não sensível da API Drive. Usar escopos não sensíveis, como
drive.file, concede acesso por arquivo e restrito a recursos específicos necessários
por um app.
Muitos apps podem fazer a transição para o acesso por arquivo sem nenhuma mudança.
Se você estiver usando seu próprio seletor de arquivos, recomendamos mudar para a API Google Picker, que oferece suporte total a diferentes escopos.
Benefícios do escopo de arquivo do Drive
Usar o escopo drive.file do OAuth em combinação com a API Google Picker
otimiza a experiência e a segurança do usuário no seu app.
O escopo do OAuth drive.file permite que os usuários escolham quais arquivos querem compartilhar
com seu app. Isso dá a eles mais controle e confiança de que o acesso do app
aos arquivos é limitado e mais seguro. Por outro lado, exigir acesso amplo a todos os arquivos do Drive pode desencorajar os usuários a interagir com seu app.
Confira alguns motivos para usar o escopo drive.file:
Usabilidade: o escopo
drive.filefunciona com todos os recursos REST da API Drive, o que significa que você pode usá-lo da mesma forma que usa escopos OAuth mais amplos.Recursos: a API Google Picker oferece uma interface semelhante à interface do Drive. Isso inclui várias visualizações mostrando prévias e miniaturas de arquivos do Drive, além de uma janela modal inline para que os usuários nunca saiam do app principal.
Praticidade: os apps podem aplicar filtros para determinados tipos de arquivos do Drive (como Documentos, Planilhas e fotos) ao usar um filtro em arquivos do Google Picker.
Verificação simples: como
drive.filenão é sensível, o processo de verificação é mais simples.
Armazenar tokens de atualização com segurança
Para acessar dados particulares usando a API Drive, seu app precisa receber um token de acesso que conceda acesso a essa API. Um único token de acesso pode conceder vários graus de acesso a várias APIs, regidos pelos escopos solicitados.
Como os tokens de acesso são de curta duração, use tokens de atualização para acesso de longo prazo à API Drive. Um token de atualização permite que seu app solicite novos tokens de acesso.
Salve os tokens de atualização em um armazenamento seguro de longo prazo e continue usando-os enquanto forem válidos.
Para mais informações, consulte Como usar o OAuth 2.0 para acessar as APIs do Google.
Temas relacionados
- Para ter uma visão geral da autenticação e da autorização no Google Workspace, consulte Saiba mais sobre autenticação e autorização.
- Para uma visão geral da autenticação e autorização no Google Cloud, consulte Visão geral da autenticação.
- Para saber mais sobre contas de serviço, consulte Contas de serviço.
- Para receber ajuda com a solução de problemas, consulte Resolver erros.