Suporte à integridade de subrecursos (SRI)

Este documento aborda como a SRI (Subresource Integrity, integridade de subrecursos) é suportada no Adobe Experience Platform Launch.

Sites modernos são criados referenciando imagens, conteúdo e scripts de vários locais na Web. O SRI permite que um navegador verifique se o conteúdo de um arquivo solicitado não foi modificado inesperadamente.

Embora seus casos de uso se complementem, a SRI é diferente de uma Política de segurança de conteúdo (CSP), o que garante que somente arquivos de origens confiáveis sejam permitidos em seu site. A SRI vai um passo além, garantindo que o conteúdo desses arquivos corresponda às suas expectativas.

OBSERVAÇÃO

Para obter informações mais detalhadas sobre a SRI, consulte os documentos da Web do MDN.

O processo de validação da SRI pode ser resumido da seguinte forma:

  1. Você gera um hash criptográfico do ativo que deseja validar.
  2. Em seu site, o hash é colocado no atributo integrity do elemento HTML que carrega o arquivo.
  3. Quando o navegador vê o atributo integrity, o navegador solicita o recurso e gera independentemente sua própria versão do hash criptográfico.
  4. O navegador compara o hash do integrity com o que ele gerou. Se houver correspondência, o ativo será permitido. Se não corresponderem, o ativo será bloqueado.

Limitações nos sistemas de gerenciamento de tags

Como um sistema de gerenciamento de tags (TMS), o Platform Launch fornece uma build de biblioteca JavaScript que você carrega em suas páginas com um único elemento do <script> (código integrado). A funcionalidade dinâmica oferecida pelo TMS é alcançada pela troca dinâmica do conteúdo desse script sem a necessidade de alterar mais nada.

No entanto, quando o conteúdo do script é alterado, o mesmo acontece com o hash criptográfico desse conteúdo. Portanto, a única maneira de fazer a SRI funcionar com um TMS é atualizar seu código integrado ao mesmo tempo em que você publica uma nova build. Para muitos, isso elimina o objetivo principal de usar um TMS em primeiro lugar.

A próxima melhor opção de segurança para o Platform Launch é implementar uma Política de segurança de conteúdo. Para obter mais informações, consulte o guia sobre CSPs Platform Launch.

Integração da SRI na implantação de build

Se você ainda quiser usar a SRI para seus builds de biblioteca, é necessário usar a hospedagem própria. Se você estiver usando a hospedagem gerenciada pela Adobe, não há como usar a SRI sem ter algum tempo em que o novo conteúdo da build não corresponda ao atributo integrity do código integrado.

A automatização do processo de atualização do código integrado varia em complexidade, dependendo da estrutura do site, mas as etapas gerais podem ser resumidas da seguinte maneira:

  1. Recupere a build da biblioteca de produção, por meio do delivery SFTP ou baixe o arquivo da interface do usuário.
  2. Gere o hash criptográfico da build principal.
  3. Verifique se o atributo integrity do código integrado foi atualizado para o novo hash e se a build referenciada foi atualizada como parte da mesma implantação.
IMPORTANTE

Essa abordagem só abrange a build principal. Ela não inclui nenhum dos arquivos menores que possam existir.

Próximas etapas

Esse documento cobriu as limitações do uso da SRI no Platform Launch e as etapas necessárias para integrá-la às implantações de build da biblioteca, apesar dessas limitações. Se ainda não leu, é altamente recomendável que você leia o guia sobre as CSPs Platform Launch para obter uma opção alternativa de segurança.

Nesta página

Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free
Adobe Summit Banner

A virtual event April 27-28.

Expand your skills and get inspired.

Register for free