Verificação de escopo sensível

Se o app pedir permissão para usar APIs e acessar dados de usuários do Google, talvez seja necessário concluir um processo de verificação antes de disponibilizar o app publicamente pela primeira vez.

A aplicação desse requisito ao seu app depende principalmente de dois fatores:

  1. O tipo de dados do usuário que você acessa: informações públicas do perfil, entradas da agenda, arquivos no Drive, determinados dados de saúde e condicionamento físico etc.
  2. O grau de acesso necessário: somente leitura, leitura e gravação etc.

Ao usar o OAuth 2.0 para receber permissão de uma Conta do Google para acessar os dados dela, use strings chamadas escopos para especificar o tipo de dados que você quer acessar em nome delas. Se o app solicita escopos categorizados como confidenciais ou restritos, provavelmente é necessário concluir o processo de verificação, a menos que o uso do app se qualifique a uma exceção.

Exemplos de escopos confidenciais incluem a leitura de eventos armazenados no Google Agenda, o armazenamento de um novo contato nos Contatos do Google ou a exclusão de um vídeo do YouTube. Para mais informações sobre os escopos disponíveis e as classificações deles, consulte a documentação de referência dos endpoints da API chamados pelo seu app e qualquer guia de autorização relacionado publicado para a API.

Você precisa solicitar escopos que exijam o mínimo de acesso necessário aos dados do usuário para oferecer essa funcionalidade. Por exemplo, um app que só lê dados não pode solicitar acesso para ler, gravar e excluir conteúdo quando um escopo mais restrito estiver disponível para a API e os endpoints relacionados. Os dados que você recebe de uma API do Google só podem ser usados em conformidade com as políticas da API e da maneira que você representa para os usuários nas ações do seu app e na sua Política de Privacidade.

Considere o tempo necessário para concluir a verificação no plano de lançamento do app ou para novos recursos que exijam um novo escopo. O processo de verificação de escopo sensível normalmente leva de três a cinco dias úteis para ser concluído. Seu app pode estar qualificado para concluir a verificação da marca como um subconjunto da solicitação de verificação de escopo sensível.

Noções básicas sobre escopos sensíveis

Escopos sensíveis exigem revisão do Google antes que qualquer Conta do Google conceda acesso. Os administradores da organização do Google Workspace podem restringir o acesso a escopos confidenciais para impedir o acesso por IDs de cliente OAuth que a organização não tenha marcado explicitamente como confiável.

Entenda o uso do escopo

  • Revise os escopos que o app usa ou que você quer usar. Para encontrar o uso de escopo atual, examine o código-fonte do app em busca de todos os escopos enviados com solicitações de autorização.
  • Determine se cada escopo solicitado é necessário para as ações pretendidas do recurso do app e usa o privilégio mínimo necessário para fornecer o recurso. Uma API do Google normalmente tem a documentação de referência na Página do Google Developers do produto para endpoints que inclui o escopo necessário para chamar o endpoint ou propriedades específicas. Para mais informações sobre os escopos necessários de acesso para os endpoints da API que seu app chama, leia a documentação de referência desses endpoints.
  • Os dados que você recebe de uma API do Google só podem ser usados em conformidade com as políticas da API e da maneira que você os representa para os usuários nas ações do seu app e na sua Política de Privacidade.
  • Consulte a documentação da API para saber mais sobre cada escopo, incluindo o possível sensitive or restricted status.
  • Declare todos os escopos usados pelo app na página de escopos de configuração da tela de consentimento do OAuth do API Console. Os escopos especificados são agrupados em categorias sensíveis ou restritas para destacar outras verificações necessárias.
  • Encontre o melhor escopo que corresponda aos dados usados pela sua integração, entenda o uso dela, confirme novamente que tudo ainda funciona em um ambiente de teste e prepare-se para enviar para verificação.
Uma tabela exibe o nome de uma API, um dos escopos confidenciais e uma descrição do que abrange.
Figura 1. Exemplo de escopo sensível mostrado na página de escopos de configuração da tela de permissão OAuth.

Como se preparar para a verificação

Todos os apps que usam APIs do Google para solicitar acesso aos dados precisam seguir estas etapas para concluir a verificação de marca:

  1. Confirme se o app não se enquadra em nenhum dos casos de uso da seção Exceções aos requisitos de verificação.
  2. Verifique se o app obedece aos requisitos de marca das APIs ou dos produtos associados. Por exemplo, consulte as diretrizes da promoção de marca para os escopos do Login do Google.
  3. Verifique a propriedade dos domínios autorizados do seu projeto no Google Search Console. Use uma Conta do Google associada ao seu API Console projeto como Proprietário ou Editor.
  4. Verifique se todas as informações de marca na tela de permissão OAuth, como nome do aplicativo, e-mail de suporte, URI da página inicial, URI da Política de Privacidade etc., representam com precisão a identidade do app.

Requisitos da página inicial do aplicativo

Verifique se a página inicial atende aos seguintes requisitos:

  • Sua página inicial precisa ser acessível publicamente, e não apenas acessível aos usuários conectados ao seu site.
  • A relevância da sua página inicial para o app que está em revisão precisa ser clara.
  • Links para os detalhes do app na Google Play Store ou na página do Facebook dele não são considerados páginas iniciais válidas.

Requisitos do link da Política de Privacidade do aplicativo

Verifique se a Política de Privacidade do app atende aos seguintes requisitos:

  • A Política de Privacidade precisa estar visível para os usuários, hospedada no mesmo domínio da página inicial do aplicativo e vinculada à tela de permissão OAuth do Google API Console. A página inicial precisa incluir uma descrição da funcionalidade do app, além de links para a Política de Privacidade e os Termos de Serviço opcionais.
  • A Política de Privacidade precisa divulgar a maneira como seu app acessa, usa, armazena ou compartilha os dados do usuário do Google. O uso de dados do usuário do Google precisa ser limitado às práticas divulgadas na sua Política de Privacidade.

Como enviar seu app para verificação

Um Google API Console projeto organiza todos os seus API Console recursos. Um projeto consiste em um conjunto de Contas do Google associadas que têm permissão para executar operações do projeto, um conjunto de APIs ativadas e configurações de faturamento, autenticação e monitoramento dessas APIs. Por exemplo, um projeto pode conter um ou mais clientes OAuth, configurar APIs para uso por esses clientes e configurar uma tela de permissão OAuth que é mostrada aos usuários antes de autorizarem o acesso ao app.

Se algum dos seus clientes OAuth não estiver pronto para produção, sugerimos que você o exclua do projeto que está solicitando a verificação. Faça isso no Google API Console.

Siga estas etapas para enviar para verificação:

  1. Verifique se o app obedece aos Termos de Serviço das APIs do Google e à Política de dados do usuário dos serviços de API do Google.
  2. Mantenha atualizados os papéis de proprietário e editor das contas associadas ao projeto, o e-mail de suporte ao usuário e os dados de contato do desenvolvedor da tela de consentimento do OAuth no API Console. Isso garante que os membros corretos da sua equipe sejam notificados sobre novos requisitos.
  3. Acesse o API Console OAuth Consent Screen page.
  4. Clique no botão Seletor de projetos.
  5. Na caixa de diálogo Selecionar de exibida, escolha seu projeto. Se você não conseguir encontrar o projeto, mas souber o ID dele, crie um URL no navegador no seguinte formato:

    https://console.developers.google.com/apis/credentials/consent?project=[PROJECT_ID]

    Substitua [PROJECT_ID] pelo ID do projeto que você quer usar.

  6. Selecione o botão Edit App.
  7. Insira as informações necessárias na página da tela de permissão OAuth e selecione o botão Salvar e continuar.
  8. Use o botão Adicionar ou remover escopos para declarar todos os escopos solicitados pelo app. Um conjunto inicial de escopos necessários para o Login do Google é preenchido na seção Escopos não confidenciais. Os escopos adicionados são classificados como não confidenciais, sensitive, or restricted.
  9. Forneça até três links para qualquer documentação relevante sobre recursos relacionados no app.
  10. Nas próximas etapas, forneça todas as informações adicionais sobre seu app.

    1. Prepare a detailed justification for each requested sensitive scope, as well as an explanation for why a narrower scope isn't sufficient. For example: "My app will use https://www.googleapis.com/auth/calendar to show a user's Google calendar data on the scheduling screen of my app. This lets users manage their schedules through my app and sync the changes with their Google calendar."
    2. 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 its 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 scope that you request.
  11. Se a configuração de app fornecida exigir verificação, você poderá enviá-lo para verificação. Preencha os campos obrigatórios e clique em Enviar para iniciar o processo de verificação.

Depois que você envia seu app, a Equipe de confiabilidade e segurança do Google faz o acompanhamento por e-mail com todas as informações adicionais necessárias ou as etapas que você precisa concluir. Verifique seus endereços de e-mail na seção Dados de contato do desenvolvedor e no e-mail de suporte da tela de permissão OAuth para pedidos de informações adicionais. Também é possível acessar a página da tela de permissão OAuth do seu projeto para confirmar o status de revisão atual dele, inclusive se o processo de revisão está pausado enquanto aguardamos sua resposta.

Exceções aos requisitos de verificação

Se o app for usado em algum dos cenários descritos nas seções a seguir, não é necessário enviá-lo para revisão.

Uso pessoal

Um caso de uso é se você for o único usuário do app ou se ele for usado somente por alguns usuários, que são conhecidos pessoalmente por você. Você e seu número limitado de usuários podem avançar pela tela do app não verificado e conceder às suas contas pessoais acesso ao app.

Projetos usados em níveis de desenvolvimento, teste ou preparo

Para obedecer às políticas do Google OAuth 2.0, recomendamos que você tenha projetos diferentes para ambientes de teste e produção. Recomendamos que você envie o app para verificação somente se quiser que ele seja disponibilizado a qualquer usuário que tenha uma Conta do Google. Portanto, se o app estiver nas fases de desenvolvimento, teste ou preparo, a verificação não será necessária.

Se o app estiver nas fases de desenvolvimento ou teste, deixe o Status de publicação na configuração padrão de Teste. Essa configuração significa que o app ainda está em desenvolvimento e só está disponível para usuários adicionados à lista de usuários de teste. Você precisa gerenciar a lista de Contas do Google envolvidas no desenvolvimento ou teste do app.

Mensagem de aviso informando que o Google não verificou um app que está em teste.
Figura 2. Tela de aviso do testador

Somente dados do serviço

Se o app usa uma conta de serviço para acessar apenas os próprios dados e não acessa dados do usuário (vinculados a uma Conta do Google), não é necessário enviá-la para verificação.

Para entender o que são contas de serviço, consulte Contas de serviço na documentação do Google Cloud. Para instruções sobre como usar uma conta de serviço, acesse Como usar o OAuth 2.0 para aplicativos de servidor para servidor.

Somente para uso interno

Isso significa que o app é usado apenas pelas pessoas na sua organização do Google Workspace ou do Cloud Identity. O projeto precisa pertencer à organização, e a tela de consentimento do OAuth precisa ser configurada para um tipo de usuário interno. Nesse caso, talvez o app precise da aprovação de um administrador da organização. Para mais informações, consulte Outras considerações para o Google Workspace.

Instalação em todo o domínio

Se você planeja que o app segmente apenas usuários de uma organização do Google Workspace ou do Cloud Identity e sempre use a instalação em todo o domínio, seu app não vai exigir a verificação de apps. Isso ocorre porque uma instalação em todo o domínio permite que um administrador de domínio conceda a aplicativos internos e de terceiros acesso aos dados dos seus usuários. Os administradores da organização são as únicas contas que podem adicionar o app a uma lista de permissões para uso nos domínios deles.

Saiba como tornar seu app uma instalação em todo o domínio nas perguntas frequentes Meu aplicativo tem usuários com contas empresariais de outro domínio do Google Workspace.