A partir do Chrome 115, as APIs de armazenamento, service workers e comunicação serão particionadas em contextos de terceiros. Além de serem isoladas pela política de mesma origem, as APIs afetadas usadas em contextos de terceiros também são separadas pelo site do contexto de nível superior. Os sites que não tiveram tempo de implementar compatibilidade com o particionamento de armazenamento de terceiros podem participar de um teste de descontinuação para cancelar a partição temporariamente (continuar o isolamento pela política de mesma origem, mas remover o isolamento por site de nível superior) e restaurar o comportamento anterior de armazenamento, service workers e APIs de comunicação no conteúdo incorporado no site.
Além de um teste de descontinuação geral de desparticionamento, é possível
participar de um teste de descontinuação focado apenas para window.sessionStorage
.
Esse teste está disponível devido à necessidade de alguns sites migrarem o fluxo signInWithRedirect
do Firebase. Para mais informações sobre essa migração, consulte
este artigo.
Testes de descontinuação disponíveis
A partir do Chrome 115, abriremos dois testes de descontinuação:
DisableThirdPartyStoragePartitioning
: permite que um site de nível superior cancele a partição (remova temporariamente o isolamento por site de nível superior) no armazenamento, nos service workers e nas APIs de comunicação em conteúdo de terceiros incorporado nas páginas dele.DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
: permite que um site cancele a partição desessionStorage
nas navegações.
Isso permitirá que os sites descubram e corrijam problemas antes que o particionamento de terceiros comece o processo de lançamento no Chrome 115.
Confira abaixo uma visão geral desse teste e o que esperar dele. Se você tiver feedback para compartilhar ou enfrentar problemas durante este teste, entre em contato no repositório do GitHub do teste de descontinuação do armazenamento particionado.
DisableThirdPartyStoragePartitioning
Caso você
registre o site de nível superior no teste de descontinuação do
DisableThirdPartyStoragePartitioning
, as seguintes APIs permanecerão não particionadas em contextos de terceiros:
APIs Storage
(como localStorage, sessionStorage, IndexedDB, Cota e outras),
APIs Communication
(como BroadcastChannel, SharedWorkers e WebLocks) e
API ServiceWorker.
Exemplo:
![Diagrama de particionamento de armazenamento](https://developers.google.cn/static/privacy-sandbox/assets/images/blog/storage-partitioning-diag-2b6ae6113ff7f.png?authuser=7&hl=pt)
Para uma explicação mais detalhada, confira a explicação do projeto.
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
Se você se inscrever no
teste de descontinuação do
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
, navegar em uma guia para uma origem registrada fará com que todos
os iframes entre sites dessa mesma origem permaneçam não particionados apenas por
Window.sessionStorage
e apenas durante o ciclo de vida dessa guia específica.
Enquanto o teste de descontinuação de DisableThirdPartyStoragePartitioning
afeta todos
os contextos de terceiros incorporados na origem registrada, o
teste de descontinuação de DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
registra uma determinada origem para receber acesso
não particionado quando incorporado em contextos de terceiros.
Exemplo:
![Diagrama de particionamento de armazenamento após a pareamento geral.](https://developers.google.cn/static/privacy-sandbox/assets/images/blog/storage-partitioning-diag-7e9a6550ebdb2.png?authuser=7&hl=pt)
O que isso significa para os desenvolvedores Web?
Os sites precisam auditar o uso de armazenamento não particionado, service worker e APIs de comunicação em contextos de terceiros e, se necessário, preparar-se para o particionamento de terceiros antes que esses testes de descontinuação expirem. A intenção é expirar esses testes de descontinuação com o lançamento do Chrome 127 em 23 de julho de 2024. O teste de descontinuação expira em 3 de setembro de 2024 para usuários das versões 111 a 126 do Chrome.
Para instruir o navegador a cancelar a partição do armazenamento em conteúdo de terceiros incorporado nas páginas, os sites de nível superior precisam se registrar em um ou ambos os testes de descontinuação e adicionar os tokens de teste correspondentes aos cabeçalhos de resposta HTTP. Confira o exemplo detalhado abaixo.
Cada teste de descontinuação está disponível para Windows, Mac, Linux, Chrome OS e Android.
Participar dos testes de descontinuação
Confira a seguir uma breve visão geral sobre como participar de um ou de ambos os testes de descontinuação. Para instruções mais detalhadas, acesse Introdução aos testes de origem.
- Inicie o Chrome 115 (ou mais recente) e verifique se a sinalização
ThirdPartyStoragePartitioning
está ativada. - Verifique se o comportamento do conteúdo de terceiros incorporado no site de nível superior é corrompido pelo particionamento de armazenamento. Caso contrário, não será necessário participar dos testes de descontinuação.
- Inscreva-se no teste de descontinuação e receba um token para seus domínios
acessando o seguinte:
- Para que um site de nível superior cancele a partição de armazenamento, service workers
e APIs de comunicação no conteúdo incorporado de terceiros:
DisableThirdPartyStoragePartitioning
- Para que um site de nível superior cancele a partição de sessionStorage nas
navegação:
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
- Para que um site de nível superior cancele a partição de armazenamento, service workers
e APIs de comunicação no conteúdo incorporado de terceiros:
- Adicione um token de teste de origem à sua página:
- Para o teste de
DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
, você pode adicionar umOrigin-Trial: <DEPRECATION TRIAL TOKEN>
ao cabeçalho de resposta HTTP do site de nível superior, em que<DEPRECATION TRIAL TOKEN>
contém o token que você recebeu ao se registrar no teste de descontinuação. Também é possível fazer isso via HTML ` mesma tag. - Para o teste
DisableThirdPartyStoragePartitioning
, o token precisa ser fornecido por uma tag HTML<meta>
injetada via JavaScript. O método de cabeçalho HTTP não é compatível.
- Para o teste de
- Carregue seu site no Chrome 115 (ou mais recente) com
ThirdPartyStoragePartitioning
ainda ativado e verifique se todos os problemas relacionados ao particionamento foram minimizados corretamente. - Para deixar de participar do teste de descontinuação, basta remover o token adicionado na etapa 2.
O teste de descontinuação de DisableThirdPartyStoragePartitioning
é compatível com o recurso de testes de origem de terceiros, mas o script de terceiros que injeta o token precisa ser avaliado no frame de nível superior antes que o iframe de terceiros que não terá particionamento aplicado seja carregado. O teste de descontinuação de DisableThirdPartySessionStoragePartitioningAfterGeneralPartitioning
não é compatível com testes de origem de terceiros, já que o inscrito
precisa ter sido o site de nível superior em algum momento do ciclo de vida da guia especificada. O guia para
solução de problemas de testes de origem do Chrome
fornece uma lista de verificação completa para garantir que seu token esteja configurado corretamente.
Compartilhar feedback
Envie feedback ou problemas que você encontrar para o repositório do GitHub de teste de descontinuação do armazenamento particionado.