Permissões únicas no Chrome

Com um lançamento gradual a partir do Chrome 116, vamos adicionar a opção Permitir desta vez aos prompts de permissão. Nosso objetivo é facilitar o uso de recursos da Web avançados para as pessoas. A opção Permitir desta vez vai estar disponível inicialmente em computadores para algumas das permissões mais comuns: geolocalização, câmera e microfone. As solicitações de permissão para outros recursos e na Web para dispositivos móveis não mudaram por enquanto, mas podem mudar no futuro.

Se você é proprietário de um site, confira 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 permissão novamente mais tarde, 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. Essa é a nova solicitação de permissão no computador para geolocalização, câmera e microfone.

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 permanente.
  • 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 outras permissões, usando os Controles do site ou as Configurações do site.

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

A opção Permitir desta vez oferece aos usuários:

  • Mais controle. A pesquisa de usuários do Chrome mostrou que eles geralmente não estão prontos para tomar uma decisão permanente sobre as permissões de sites, tentando avaliar se recebem valor em troca da concessão de permissões. Oferecer uma opção "Permitir uma vez" atende a essa necessidade e torna a permissão de acesso menos arriscada.
  • 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 Safari e 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 a persistência do acesso por 24 horas usando uma caixa de seleção.
  • No Firefox 115 para computador, 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 toda a visita. As permissões únicas não fazem diferença nesse sentido.
  • No entanto, se o usuário selecionar Permitir desta vez, um pedido de permissão vai aparecer novamente na próxima visita.

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

Práticas recomendadas

Permitir esse 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. Isso torna ainda mais importante seguir as práticas recomendadas.

  • Forneça o contexto necessário antes de pedir 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 é que os usuários possam expressar a intenção de usar um determinado recurso no próprio ritmo.
  • Durante a visita do usuário, ofereça a mesma experiência, independente de ele ter selecionado a opção única ou persistente.

Confira mais orientações em UX de permissão.

Expiração das permissões únicas

Por padrão, todas as permissões da Web estão vinculadas a uma origem, que pode ser considerada um app independente. 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, mas depois voltar.

Em mais detalhes, as concessões de permissão única expiram assim que uma das seguintes condições é atendida:

  • A página foi fechada, saiu da navegação ou foi descartada. Isso inclui fechar o Chrome.
  • 16 horas se passaram desde que você concedeu a permissão.
  • O usuário revoga manualmente a permissão (por exemplo, em Controles do site) ou ela é substituída por uma política empresarial.
  • A página está em segundo plano há pelo menos 5 minutos, exceto se a capacidade puder ser executada 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 timer de cinco minutos até que a página pare de usar o recurso. O timer de 16 horas ainda está em execução.

Guia em segundo plano

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

No Chrome, alguns recursos, como 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 destaca uma guia ativa em primeiro plano e uma guia inativa em segundo plano.

Indicador da barra de guias

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

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

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

Exemplos

  • Geolocalização: o usuário está no example.com e concede acesso único à geolocalização. O usuário muda para outra guia. Isso torna example.com uma guia em segundo plano. O acesso à geolocalização é pausado imediatamente porque o Chrome não permite o acesso 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 timer de expiração de cinco minutos será redefinido. Caso contrário, a permissão única expira.
  • Câmera/microfone: o usuário está no example.com e concede acesso único à câmera. O usuário muda para outra guia. Isso torna example.com uma guia em segundo plano. O acesso à câmera pode continuar porque o Chrome permite que ele seja feito em segundo plano. O Chrome continua mostrando o indicador da faixa de guias da câmera enquanto ela está 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 5 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 Permissions 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á redefinido para 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 desktop.
  2. Abra chrome://flags/#one-time-permission e selecione Ativar. Reinicie o Chrome. Essa etapa força a ativação das permissões únicas caso elas ainda não tenham sido lançadas no seu navegador Chrome.
  3. Abra https://permission.site/one-time.
  4. Clique no botão Geolocalização.
  5. Observe o novo pedido de permissão única.
  6. Escolha Permitir desta vez.
  7. Abra os Controles do site. Observe que é possível gerenciar a permissão única.
  8. Feche a guia https://permission.site/one-time. Verifique se nenhuma outra guia dessa origem está aberta.
  9. Abra https://permission.site/one-time em uma nova guia.
  10. Abra os Controles do site. Acesse as Configurações do site.
  11. Observe que 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 traz uma experiência mais consistente em navegadores e plataformas.

Se você encontrar 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 revisarem este artigo.