Autorizar URLs

Use listas de permissões para designar URLs específicos pré-aprovados para acesso pelo script ou complemento. Essas listas ajudam a proteger os dados do usuário. Quando você define uma lista de permissões, os projetos de script não podem acessar URLs que não estão na lista.

Esse campo é opcional quando você instala uma implantação de teste, mas é obrigatório ao criar uma implantação com controle de versão.

Elas são usadas quando o script ou complemento realiza as seguintes ações:

  • Recupera ou busca informações de um local externo (como endpoints HTTPS) usando o serviço UrlFetch do Apps Script. Para adicionar URLs de busca à lista de permissões, inclua o campo urlFetchWhitelist no arquivo de manifesto.
  • Abre ou exibe um URL em resposta a uma ação do usuário (obrigatório para complementos do Google Workspace que abrem ou exibem URLs externos ao Google). Para adicionar URLs que podem ser abertos na lista de permissões, inclua o campo addOns.common.openLinkUrlPrefixes no seu arquivo de manifesto.

Adicionar prefixos à lista de permissões

Ao especificar listas de permissões no arquivo de manifesto (incluindo o campo addOns.common.openLinkUrlPrefixes ou urlFetchWhitelist), você precisa incluir uma lista de prefixos de URL. Os prefixos adicionados ao manifesto precisam atender aos seguintes requisitos:

  • Cada prefixo precisa ser um URL válido.
  • Cada prefixo precisa usar https://, não http://.
  • Cada prefixo precisa ter um domínio completo.
  • Cada prefixo precisa ter um caminho não vazio. Por exemplo, https://www.google.com/ é válido, mas https://www.google.com não.
  • Você pode usar caracteres curinga para corresponder a prefixos de subdomínio de URL.
  • Um único caractere curinga * pode ser usado no campo addOns.common.openLinkUrlPrefixes para corresponder a todos os links, mas isso não é recomendado, porque pode expor os dados do usuário a risco e prolongar o processo de revisão de complementos. Use um caractere curinga apenas se ele for necessário para a funcionalidade do complemento.

Ao determinar se um URL corresponde a um prefixo da lista de permissões, as seguintes regras se aplicam:

  • A correspondência de caminho diferencia maiúsculas de minúsculas.
  • Se o prefixo for idêntico ao URL, é uma correspondência.
  • Se o URL for igual ou filho do prefixo, ele será uma correspondência.

Por exemplo, o prefixo https://example.com/foo corresponde aos seguintes URLs:

  • https://example.com/foo
  • https://example.com/foo/
  • https://example.com/foo/bar
  • https://example.com/foo?bar
  • https://example.com/foo#bar

Uso de caracteres curinga

É possível usar um único caractere curinga (*) para corresponder a um subdomínio nos campos urlFetchWhitelist e addOns.common.openLinkUrlPrefixes. Não é possível usar mais de um caractere curinga para corresponder a vários subdomínios, e ele precisa representar o prefixo inicial do URL.

Por exemplo, o prefixo https://*.example.com/foo corresponde aos seguintes URLs:

  • https://subdomain.example.com/foo
  • https://any.number.of.subdomains.example.com/foo

O prefixo https://*.example.com/foo não corresponde aos seguintes URLs:

  • https://subdomain.example.com/bar (incompatibilidade de sufixo)
  • https://example.com/foo (pelo menos um subdomínio precisa estar presente)

Algumas das regras de prefixo são aplicadas quando você tenta salvar seu manifesto. Por exemplo, os prefixos a seguir causam um erro se estiverem presentes no manifesto quando você tenta salvar:

  • https://*.*.example.com/foo (vários caracteres curinga são proibidos)
  • https://subdomain.*.example.com/foo (caracteres curinga precisam ser usados como prefixo inicial)