Versão CSP

Versão CSP (Content Security Policy)

O que é CSP?

Content Security Policy (CSP) é um mecanismo de segurança implementado pelos navegadores que permite controlar quais recursos (scripts, estilos, imagens, fontes, conexões etc.) uma página web pode carregar e executar. Ele é configurado pelo servidor por meio do header HTTP Content-Security-Policy e atua como uma camada de defesa contra ataques como Cross-Site Scripting (XSS) e injeção de dados.

Quando um recurso viola uma diretiva CSP, o navegador bloqueia o recurso e registra a violação no console do desenvolvedor.

Por que o CSP impacta o Fortface SDK?

O Fortface SDK Web é construído como um Web Component que carrega dinamicamente módulos de detecção facial e recursos de segurança. Esse processo envolve operações que políticas CSP restritivas podem bloquear:

  • Carregamento de scripts de uma CDN própria
  • Injeção de estilos inline pelo Shadow DOM do Web Component
  • Uso de recursos para o motor de detecção facial
  • Geração de imagens em data: URI para preview de captura
  • Criação de Web Workers via blob: URL para processamento de documentos

Diretivas CSP necessárias

Para utilizar sdk-web com CSP é necessário fazer a liberação das seguintes configurações:

directives: {
defaultSrc: ["'self'"],
scriptSrc: ["'self'", "https://cdn-loader.isface.live", "https://cdn.isface.live", "'unsafe-eval'", "'wasm-unsafe-eval'"],
styleSrc: ["'self'", "https://cdn.isface.live", "'unsafe-inline'"],
imgSrc: ["'self'", "data:"],
connectSrc: ["'self'", "https://cdn.isface.live", "https://telemetry.isface.live/", "data:", "blob:"],
fontSrc: ["'self'", "https://cdn.isface.live"],
frameSrc: ["'none'"],
frameAncestors: ["'none'"],
workerSrc: ["'self'", "blob:"],
childSrc: ["'none'"],
objectSrc: ["'none'"],
mediaSrc: ["'none'"],
baseUri: ["'self'"],
formAction: ["'self'"],
manifestSrc: ["'self'"],
upgradeInsecureRequests: [],
},

Funcionalidades do SDK por diretiva

FuncionalidadeDiretivas utilizadas
Biometria facialscript-src, style-src, img-src, connect-src, font-src
Captura de documentosscript-src, style-src, img-src, connect-src, font-src
Upload de documentosscript-src, style-src, img-src, connect-src, font-src, worker-src (+blob:), connect-src (+blob:)

Nota: Se a funcionalidade de upload de documentos não for utilizada, os valores blob: em worker-src e connect-src podem ser removidos.