Permita o acesso de gravação ilimitado e entre sites com acesso de leitura que preserva a privacidade.
Status da implementação
Neste documento, descrevemos uma proposta de armazenamento não particionado e em vários sites: a API Shared Storage.
- A API Shared Storage foi movida para a disponibilidade geral.
- Uma demonstração ao vivo está disponível, assim como testes:
- O portão de saída da seleção de URL está disponível para testes locais no Chrome M105 ou versões mais recentes.
- O portão de saída da agregação particular está disponível para testes locais no Chrome M107 ou versões mais recentes.
- A medição com a API Private Aggregate está em disponibilidade geral.
- Status da plataforma do Chrome
Proposta | Status |
---|---|
Relatórios no nível do evento para a seleção de conteúdo (selectURL() ) |
Disponível pelo menos até 2026 |
Orçamento por local Explicação |
Disponível na versão M119 |
Permitir gravação usando cabeçalhos de resposta Explicação Problema no GitHub (link em inglês) |
Disponível na versão M124. Pode ser ativado manualmente na versão M119-M123 |
Tempo limite da contribuição da agregação particular Explicação |
Disponível na versão M119 |
Como depurar os worklets de armazenamento compartilhado com o DevTools Seção |
Disponível na versão M120 |
Atualização do limite de armazenamento de dados do armazenamento compartilhado para 5 MB Explicação |
Disponível na versão M124 |
Por que precisamos dessa API?
Para evitar o rastreamento de usuários entre sites, os navegadores estão particionando todas as formas de armazenamento (cookies, localStorage, caches etc.). No entanto, há vários casos de uso legítimos que dependem do armazenamento não particionado, o que seria impossível sem a ajuda de novas APIs da Web. Por exemplo, um produtor de conteúdo pode querer medir o alcance em sites diferentes, sem depender de identificadores entre sites.
A API Shared Storage permite que os sites armazenem e acessem dados não particionados entre sites. Esses dados precisam ser lidos em um ambiente seguro para evitar vazamentos.
É possível usar os dados do armazenamento compartilhado de duas maneiras:
- Seleção de conteúdo entre sites.
- Agregação ruidosa de dados entre sites com a API Private Aggregate
A quem se destina?
Há muitos tipos diferentes de empresas que podem se beneficiar do uso da API Shared Storage. Exemplo:
- Elas podem medir o alcance da campanha, definir limites de frequência e alternar os criativos, e tudo isso depende de cookies de terceiros.
- Os provedores de pagamento podem determinar se um usuário é um cliente atual e personalizar a experiência de finalização de compra.
- As empresas de segurança da Web podem criar uma lógica personalizada para sinalizar comportamentos suspeitos ou perigosos.
Sua empresa está procurando soluções de armazenamento entre locais que ainda não foram resolvidas? Compartilhe seu caso de uso.
Casos de uso
A API Shared Storage pretende oferecer suporte a muitos casos de uso, substituindo vários usos atuais por cookies de terceiros. Isso inclui:
Caso de uso | Descrição | Porta de saída |
---|---|---|
Alternar criativos de anúncios | É possível armazenar dados como ID do criativo, contagens de visualizações e interação do usuário para determinar quais criativos os usuários veem em diferentes sites. Isso permite que você equilibre as visualizações e evite o excesso de saturação de determinados conteúdos, o que pode ajudar a evitar uma experiência do usuário negativa. | Seleção de URL |
Fazer testes A/B | Você pode atribuir um usuário a um grupo experimental e armazenar esse grupo no armazenamento compartilhado para acesso entre sites. | Seleção de URL |
Personalizar a experiência do usuário para clientes conhecidos | Você pode compartilhar conteúdo personalizado e calls-to-action com base no status de registro ou em outros estados do usuário. | Seleção de URL |
Mitigações de combate ao abuso | As organizações antiabuso, antifraude e de segurança da Web geralmente usam técnicas próprias para detectar usuários mal-intencionados, sejam eles bots automatizados ou pessoas reais tentando causar danos. É possível testar muitas estratégias diferentes aqui, seja usando o portão de saída da seleção de URL para codificar uma classificação de confiabilidade do usuário ou o portão de saída da agregação particular para criar conjuntos de dados para detecção de anomalias. | Seleção de URL, API Private Aggregate |
Medir o alcance único | Muitos produtores de conteúdo e anunciantes geralmente querem saber quantas pessoas únicas viram o conteúdo. É possível usar o armazenamento compartilhado para gerar relatórios sobre a primeira vez que um usuário viu seu anúncio, vídeo incorporado, publicação e evitar a contagem duplicada desse mesmo usuário em outro site. Isso gera um relatório com ruído agregado do seu alcance único aproximado. | API Private Aggregation |
Medir as informações demográficas do usuário | Os produtores de conteúdo geralmente querem entender as informações demográficas do público. É possível usar o armazenamento compartilhado para registrar dados demográficos do usuário em um contexto em que eles estão disponíveis, como seu site próprio, e usar relatórios agregados para gerar relatórios sobre eles em muitos outros sites, como conteúdo incorporado. | API Private Aggregation |
Medir o alcance da frequência K+ | Às vezes descrito como "frequência efetiva", geralmente há um número mínimo de visualizações para que um usuário reconheça ou se lembre de determinado conteúdo (geralmente no contexto de visualizações de anúncios). Use o armazenamento compartilhado para criar relatórios de usuários únicos que viram um conteúdo pelo menos K vezes. | API Private Aggregation |
A proposta pretende criar uma API de uso geral compatível com muitos casos de uso futuros possíveis. Isso permite que mais experimentações e mudanças possam crescer junto com o ecossistema da Web.
Como funciona o armazenamento compartilhado?
O armazenamento compartilhado permite que você tome decisões informadas com base nos dados entre sites, sem compartilhar informações do usuário (como histórico de navegação ou outros detalhes pessoais) com um site de incorporação ou exfiltrar dados para seus próprios servidores.
É possível gravar no armazenamento compartilhado a qualquer momento, como em outras APIs de armazenamento JavaScript, como localStorage ou IndexingDB. Ao contrário de outras APIs de armazenamento, só é possível ler os valores de armazenamento compartilhado em um ambiente seguro, conhecido como worklet de armazenamento compartilhado.
Os Worklets são onde você adiciona sua lógica de negócios. Dentro da worklet, é possível ler e processar um valor do armazenamento compartilhado, mas não é possível retornar diretamente o valor exato ao autor da chamada da worklet. Um conjunto de "portas" está disponível para extrair informações úteis da worklet. Há duas portas disponíveis, mas outras podem ser adicionadas no futuro.
Os portões de saída da API Shared Storage disponíveis são:
- Seleção de URL entre sites: execute um script de worklet para selecionar um URL de uma lista fornecida com base nos dados armazenados e, em seguida, renderize esse conteúdo em um frame isolado.
- Agregação com ruído com a API Private Aggregate: é possível executar uma worklet para enviar dados entre sites usando essa API e retornar um relatório de resumo.
Teste a API Shared Storage
A API Shared Storage para o portão de saída da seleção de URL e a porta de saída da
agregação particular estão disponíveis para teste. A seleção de conteúdo pode ser testada no Chrome
Canary/Dev/Beta M105+, e a API Private Aggregate está disponível para teste no
Chrome M107 e versões mais recentes Canary e Dev. Para testar a API, ative a flag
Experimento das APIs de anúncios do Sandbox de privacidade em chrome://flags/#privacy-sandbox-ads-apis
.
Usar a demonstração
Há uma demonstração disponível e você pode revisar o código no GitHub (link em inglês).
Esta demonstração foi criada da perspectiva de um anunciante, adtech, distribuidor de conteúdo ou outro serviço de terceiros que quer armazenar informações em sites de diferentes editores. Na demonstração, o mesmo código de terceiro será executado nos sites do Editor A e do Editor B para cada caso de uso. Acesse as páginas do editor para conferir como os dados são compartilhados em um contexto entre sites.
A demonstração contém casos de uso para seleção de conteúdo e agregação particular.
Para a demonstração da seleção de conteúdo, os casos de uso Alternar criativos, Personalizar a experiência de uso para clientes conhecidos e Executar testes A/B estão disponíveis.
Para a demonstração da agregação privada, você pode conferir as opções únicas Medir o alcance único e Medir o alcance da frequência K+. Medir as informações demográficas do usuário e
Depurar os worklets de armazenamento compartilhado com o DevTools
Para inspecionar os worklets de armazenamento compartilhado iniciados na página em que você está, acesse a guia "Origens" no painel do DevTools e adicione o ponto de interrupção do listener de eventos "Objeto de armazenamento compartilhado / primeira instrução do script". Esse ponto de interrupção vai pausar a execução do script do módulo inicial ou os worklets de curta duração na inicialização.
Além disso, a página chrome://inspect/#shared-storage-worklets
mostra todos os worklets ativos de armazenamento compartilhado de todas as páginas.
Interaja e compartilhe feedback
A proposta de armazenamento compartilhado está em discussão e sujeita a mudanças no futuro. Se você testar essa API e quiser enviar seu feedback, adoraríamos ouvir.
- GitHub: leia a proposta, faça perguntas e participe de discussões.
- Avisos sobre a API Shared Storage: participe ou confira avisos anteriores na nossa lista de e-mails
- Suporte ao desenvolvedor: faça perguntas e participe de discussões no repositório de suporte para desenvolvedores do Sandbox de privacidade.