I siti web che implementano una Content Security Policy (CSP) sul proprio sito web devono seguire alcune regole per garantire che il Consent Layer di Consentmanager continui a funzionare.
Regole CSP
Il Consent Layer di Consentmanager caricherà i contenuti tramite vari tipi di dati e meccanismi, a seconda delle impostazioni e dell'utilizzo del codice. Inoltre richiamerà gli script in vari modi:
- Il sistema aggiungerà
<script src="...">elementi alla pagina - Il sistema aggiungerà
<script>...</script>elementi alla pagina - Il sistema aggiungerà
<style>...</style>elementi alla pagina - Il sistema aggiungerà
<link ...>elementi alla pagina - Il sistema aggiungerà
<img ...>elementi alla pagina - Il sistema aggiungerà
<iframe ...>elementi alla pagina - Il sistema caricherà i contenuti utilizzando CORS (
window.XMLHttpRequest) - Il sistema utilizzerà
<... onclick="..."> - Il sistema utilizzerà
@font-faceper caricare i font
Il sistema non utilizzerà mai:
- Il sistema non utilizzerà
eval() - Il sistema non utilizzerà
var x = new Function(....) - Il sistema non utilizzerà argomenti stringa per
setTimeoutosetInterval(ad es.setTimeout("dosomething()")), utilizzerà sempre argomenti di funzione - Il sistema non utilizzerà
<a href="javascript:...">...</a>, ma userà sempreonclick
Per consentire quanto sopra, il modo più semplice utilizzando un CSP è abilitare l'intero dominio di Consentmanager per tutti gli elementi:
Content-Security-Policy: default-src 'self' https://*.consentmanager.net;
Nota: se utilizzi un dominio personalizzato, dovrai inserirlo nella whitelist del tuo CSP.
Se utilizzi il nostro widget di accessibilità, dovrai inserire nella whitelist https://*.acsbapp.com
Se vuoi utilizzare un CSP più restrittivo, puoi usare:
Content-Security-Policy: default-src 'self';
connect-src 'self' https://*.consentmanager.net;
frame-src 'self' https://*.consentmanager.net;
img-src 'self' https://*.consentmanager.net;
script-src 'self' https://*.consentmanager.net;
style-src 'self' https://*.consentmanager.net;
font-src 'self' https://*.consentmanager.net;
Nonce e integrità dello script
Poiché il sistema aggiungerà altri script, non supporta gli attributi nonce e integrity.