Permissões únicas no Chrome

Maud Nalpas
Maud Nalpas

Com o lançamento gradual do Chrome 116, vamos adicionar a opção Permitir desta vez aos avisos de permissão. Nosso objetivo é facilitar o uso de recursos avançados da Web de acordo com as necessidades das pessoas. A opção Permitir desta vez vai estar disponível inicialmente no computador para algumas das permissões mais comuns: geolocalização, câmera e microfone. Por enquanto, os avisos de permissão para outros recursos e na Web para dispositivos móveis não mudaram, mas isso pode acontecer no futuro.

Se você for proprietário de um site, consulte Impacto e recomendações e teste a demonstração.

Uma nova UX para permissões

UX de permissões antes do Chrome 116

Solicitação de permissão mostrando apenas "Bloquear" e "Permitir".
Prompt de permissão antes do Chrome 116.

Os usuários têm três opções:

  • Permitir: permissão persistente.
  • Bloqueio: bloqueio persistente.
  • Clicar no botão x: bloqueio temporário. O site pode pedir novamente para o usuário, no máximo três vezes.

As permissões podem ser gerenciadas nos Controles do site na barra de endereço ou nas Configurações do site.

Nova UX de permissões do Chrome 116

Solicitação de permissão com a nova opção única.
Solicitação de permissão com a nova opção única. Esta é a nova solicitação de permissão para geolocalização, câmera e microfone em computadores.

Os usuários têm quatro opções:

  • Permitir desta vez: permissão temporária.
  • Permitir em todos os acessos: permissão persistente.
  • Não permitir: bloqueio persistente.
  • Clicar no botão x: bloqueio temporário.

Quando os usuários selecionam Permitir desta vez, a permissão concedida é temporária, também chamada de permissão única. A duração é limitada à interação atual com um aplicativo da Web.

As permissões únicas podem ser gerenciadas como as outras, pelos Controles do site ou nas Configurações do site.

Benefícios para o usuário e design de UX de "Permitir desta vez"

Permitir desta vez oferece aos usuários:

  • Mais controle. A pesquisa de usuários do Chrome mostrou que, muitas vezes, os usuários não estão prontos para tomar uma decisão persistente sobre as permissões de sites, tentando avaliar se recebem algo em troca de conceder permissões. Oferecer uma opção de permissão única atende a essa necessidade e torna o acesso menos arriscado.
  • Mais clareza. As opções explícitas Permitir desta vez e Permitir em todos os acessos deixam claro que uma das opções é temporária, enquanto a outra é persistente.

Permissões únicas em outros navegadores

Na Web, as permissões únicas são compatíveis com vários navegadores, incluindo o Safari e o Firefox. Para saber como elas funcionam no seu dispositivo, teste https://permission.site/one-time. Teste as permissões de geolocalização, câmera e microfone, porque elas podem ter comportamentos específicos.

Exemplo:

  • No Safari 16 para computador, a geolocalização é única por padrão (até a próxima navegação). O usuário pode ativar o acesso persistente por 24 horas usando uma caixa de seleção.
  • No Firefox 115 para computadores, as permissões de geolocalização, câmera e microfone são únicas por padrão. O usuário pode ativar o acesso persistente usando uma caixa de seleção.

Impacto e recomendações

Impacto das permissões únicas:

  • A introdução de permissões únicas não afeta as permissões que os usuários concederam de forma permanente.
  • Depois que um usuário toma uma decisão sobre uma solicitação de permissão, o estado da permissão é concedido ou negado durante a visita. As permissões únicas não fazem diferença nesse sentido.
  • No entanto, se o usuário selecionar Permitir desta vez, ele vai receber uma solicitação de permissão novamente na próxima visita.

Para acomodar permissões únicas, recomendamos que os proprietários de sites façam o seguinte:

Práticas recomendadas

A opção Permitir este tempo pode aumentar a probabilidade de as pessoas concederem permissões para testar recursos, mas também pode reduzir a disposição delas de conceder acesso permanente. Por isso, é ainda mais importante seguir as práticas recomendadas.

  • Forneça o contexto necessário antes de solicitar permissões. Explique aos usuários por que eles vão se beneficiar de um recurso.
  • Solicita permissões em um momento adequado e esperado. O ideal é permitir que os usuários expressem a intenção de usar um determinado recurso no próprio ritmo.
  • Durante a visita do usuário, ofereça a mesma experiência, independentemente de ele ter selecionado a opção única ou persistente.

Confira outras orientações em UX de permissões.

Validade das permissões únicas

Por padrão, todas as permissões da Web são vinculadas a uma origem, que pode ser considerada um app próprio. Com a opção Permitir desta vez, o usuário concede uma permissão única a uma origem. Em essência, as permissões únicas expiram quando o usuário para de interagir ativamente com essa origem por algum tempo. Isso significa que o site pode continuar usando o recurso se o usuário mudar brevemente para outra página da Web em uma guia diferente e voltar.

Mais especificamente, as permissões únicas expiram assim que uma das seguintes condições é atendida:

  • A página foi fechada, saiu da navegação ou foi descartada. Isso inclui o fechamento do Chrome.
  • 16 horas tenham se passado desde a concessão da permissão.
  • O usuário revoga a permissão manualmente (por exemplo, nos Controles do site) ou ela é substituída por uma política corporativa.
  • A página está em segundo plano há pelo menos 5 minutos, exceto se o recurso tiver permissão para ser executado em segundo plano, como câmera ou microfone. Nesse caso, enquanto o site usa o recurso, o Chrome mostra um indicador de faixa de guias e não inicia o cronômetro de cinco minutos até que a página pare de usar o recurso. O timer de 16 horas ainda está em execução.

Guia "Plano de fundo"

Uma guia do navegador está em segundo plano quando não está em primeiro plano. Uma guia está em primeiro plano quando é a guia visível em uma janela de navegador que não está minimizada.

No Chrome, alguns recursos, como a geolocalização, só podem ser executados na guia em primeiro plano. Eles não podem ser executados em uma guia em segundo plano. Outros, como câmera e microfone, podem ser executados em uma guia em segundo plano.

Uma captura de tela da janela do navegador destacando uma guia ativa em primeiro plano e uma guia inativa em segundo plano.

Indicador de faixa de guias

Os recursos que continuam sendo executados quando a guia está em segundo plano têm um indicador de faixa de guia. Por exemplo, a câmera tem um indicador de faixa de guia.

Uma guia com um ponto vermelho.
O indicador de guia para acesso à câmera é um ponto vermelho.

A geolocalização não precisa de um indicador de faixa de guias, porque o acesso à geolocalização é pausado assim que a página fica em segundo plano.

Exemplos

  • Geolocalização: o usuário está em example.com e concede acesso único à geolocalização. O usuário muda para outra guia. Isso faz com que example.com seja uma guia em segundo plano. O acesso à geolocalização é pausado imediatamente porque o Chrome não permite o acesso à geolocalização em segundo plano, mas a concessão de permissão única ainda é válida. Se o usuário voltar para example.com em até cinco minutos, a página poderá retomar o acesso à geolocalização, e o cronômetro de expiração de 5 minutos será redefinido. Caso contrário, a permissão única vai expirar.
  • Câmera/microfone: o usuário está em example.com e concede acesso único à câmera. O usuário muda para outra guia. Isso faz com que example.com seja uma guia em segundo plano. O acesso à câmera pode continuar porque o Chrome permite que o acesso à câmera continue em segundo plano. O Chrome continua mostrando o indicador da faixa de guias para a câmera enquanto ela estiver em uso, para manter o usuário informado. Em algum momento, o site pode decidir interromper o acesso à câmera. Nesse caso, o timer de expiração de cinco minutos é iniciado. Após cinco minutos sem acesso à câmera, a permissão única expira.

API Permissions

Para consultar o status das permissões da API, use a API Permissions:

  • Se o usuário escolher Permitir desta vez, o status da API de permissão será definido como granted. Isso significa que uma permissão única não expirada e uma permissão persistente são indistinguíveis e têm o mesmo status: granted.
  • Quando a permissão única expirar, o status será definido como prompt.
  • Para observar a expiração de uma permissão única, registre um manipulador de eventos PermissionStatus.onchange.

Demonstração

  1. Abra o Chrome 116 ou uma versão mais recente em um computador.
  2. Abra chrome://flags/#one-time-permission e selecione Ativar. Reinicie o Chrome. Essa etapa ativa as permissões únicas caso elas ainda não tenham sido lançadas no navegador Chrome.
  3. Abra https://permission.site/one-time.
  4. Clique no botão Geolocalização.
  5. Observe a nova solicitação de permissão única.
  6. Selecione Permitir desta vez.
  7. Abra os Controles do site. É possível gerenciar a permissão única.
  8. Feche a guia https://permission.site/one-time. Verifique se não há nenhuma outra guia aberta para essa origem.
  9. Abra https://permission.site/one-time em uma nova guia.
  10. Abra os Controles do site. Acesse as Configurações do site.
  11. A permissão de geolocalização voltou ao estado inicial: Perguntar (padrão).

Conclusão e feedback

As permissões únicas oferecem mais opções aos usuários, e a nova interface de permissões do Chrome oferece uma experiência mais consistente em todos os navegadores e plataformas.

Se você tiver problemas com as permissões únicas, registre um novo problema do crbug para solicitações de permissão.

Agradecimentos

Agradecemos a Rachel Andrew, Serena Chen, Balazs Engedy, Marian Harbach, Florian Jacky e Thomas Steiner por revisar este artigo.