As extensões do Chrome melhoram a experiência do navegador do usuário. Para fazer isso, use as APIs do Chrome que exigem determinadas permissões. Algumas permissões são menos invasivas e não exibem um aviso. Outras permissões acionam um aviso que os usuários precisam autorizar. Esta página fornece diretrizes para trabalhar com avisos de permissão. Avisos específicos são anotados em Permissões na permissão a que se aplicam.
![Exemplos de avisos de permissão aparecem quando o usuário adiciona uma extensão](https://developer.chrome.com/static/docs/extensions/develop/concepts/permission-warnings/image/example-permission-warni-8d794fb2f9274.png?authuser=6&hl=pt)
Quando uma nova permissão que aciona um aviso é adicionada, a extensão é desativada até que o usuário aceite a nova permissão. Consulte Como atualizar permissões para saber como testar esse comportamento.
![Exemplo de uma extensão que fica desativada até que o usuário aceite a nova permissão.](https://developer.chrome.com/static/docs/extensions/develop/concepts/permission-warnings/image/example-an-extension-is-6772580db51de.gif?authuser=6&hl=pt)
Algumas permissões podem não mostrar avisos quando pareadas
com outras. Por exemplo, o aviso "tabs"
não será exibido se a extensão também solicitar "<all_urls>"
.
Práticas recomendadas
Os avisos de permissão descrevem os recursos que uma API concede, mas alguns avisos são mais difíceis de entender do que outros. É mais provável que os usuários instalem extensões que sigam estas diretrizes:
- Solicitar as permissões relevantes
- As extensões são necessárias para atender a uma única finalidade e obedecer à política de uso de permissões. Solicite apenas permissões compatíveis com a funcionalidade principal da extensão.
- Usar permissões opcionais
- Peça permissões no momento da execução para melhorar a experiência de integração. Isso permite fornecer mais contexto sobre uma permissão específica e permite que os usuários escolham quais recursos querem ativar. Consulte a API Permissions para conferir detalhes da implementação.
- Usar a permissão "activeTab"
- Essa permissão não exibe um aviso de permissão. Concede permissão de host temporária ao site em que o usuário está. Para mais detalhes, consulte Noções básicas sobre a permissão activeTab.
Mostrar avisos
Para ver os avisos de permissão de uma extensão, você tem as seguintes opções:
Usar a ferramenta de teste de atualização de extensão
Antes de começar
- Instale o Node.js e o NPM.
- Instale o Chromium.
- Clone o repositório extension-update-testing-tool.
- Execute
npm install
na raiz do repositório.
Como usar a ferramenta
- Execute
npm start
. - Abra o servidor local em http://localhost:8080 no Chromium.
- Arraste uma extensão descompactada (pasta ou arquivo .zip) para a página.
- Siga as instruções em "Instalar manualmente" para fazer o download e instalar a extensão.
Compactando a extensão manualmente
- Acesse
chrome://extensions
- Ativar o modo de desenvolvedor
- Clique em Compactar extensão.
Figura 3: modo de desenvolvedor ativado na página "Gerenciamento de extensões" - Especifique o caminho para a pasta da extensão no campo do diretório raiz da extensão. Ignore o campo Chave privada para novos pacotes.
Clique no botão Compactar extensão.
Figura 4: especificação do caminho da extensão O Chrome criará dois arquivos:
.crx
e.pem
. O arquivo.pem
contém a chave privada usada para assinar a extensão. Não se esqueça de lembrar em qual diretório esses arquivos foram salvos.Figura 5: arquivos de extensão em pacotes Mantenha o arquivo
.pem
em um local secreto e seguro. Ele será necessário para atualizar a extensão.Instale o arquivo
.crx
soltando-o na página "Gerenciamento da extensão".Figura 6: solte o arquivo para instalar Depois de descartar o arquivo
.crx
, o navegador vai perguntar se a extensão pode ser adicionada e exibir avisos.Figura 7: aviso da extensão "Nova guia".
Atualizar permissões
Quando uma extensão adiciona uma nova permissão que aciona um aviso, ela pode desativá-la temporariamente. A extensão só será reativada depois que o usuário concordar em aceitar a nova permissão.
Para verificar se a extensão será desativada quando uma nova permissão for adicionada, você tem as seguintes opções:
Atualizar usando a ferramenta de teste de atualização de extensão
Estas etapas pressupõem que você seguiu as instruções Como usar a ferramenta de teste de atualização de extensão para iniciar o servidor.
Como usar a ferramenta
- Adicione uma nova permissão com aviso.
- Aumente o número da versão da extensão.
- Arraste a extensão descompactada (pasta ou arquivo .zip) para a página.
- Acesse
chrome://extensions
. - Clique no botão Atualizar.
Atualizar sua extensão manualmente
- Encontre o arquivo
.crx
que você acabou de criar em Ver avisos. - Renomeie-o ou exclua-o.
- Abra seu
manifest.json
e adicione qualquer permissão que acione um aviso. - Acesse
chrome://extensions
. Não remova o pacote instalado anteriormente. - Empacote a extensão novamente, mas desta vez adicione o arquivo pem na segunda entrada.
Figura 8: caixa de diálogo da extensão de empacotamento com arquivo pem incluído. - Arraste a nova extensão empacotada para a página Gerenciamento de Extensões.
Você verá uma caixa de diálogo que solicita que o usuário aceite as novas permissões.
Figura 9: aviso de extensão desativada Figura 10: caixa de diálogo solicitando nova permissão.