Een CSP configureren
A het Beleid van de Veiligheid van de Inhoud(CSP) wordt gebruikt om de middelen te beperken browser wordt toegestaan te gebruiken. Het CSP kan ook de functionaliteit van manuscript en stijlmiddelen beperken. Adobe Experience Platform Web SDK vereist geen CSP, maar het toevoegen van één kan de aanvalsoppervlakte verminderen om tegen kwaadwillige aanvallen te verhinderen.
Het CSP moet weerspiegelen hoe Platform Web SDK wordt opgesteld en gevormd. In het volgende CDV wordt aangegeven welke wijzigingen nodig zijn om de SDK correct te laten functioneren. Afhankelijk van uw specifieke omgeving zijn waarschijnlijk aanvullende CSP-instellingen vereist.
Voorbeeld van beveiligingsbeleid voor inhoud
De volgende voorbeelden tonen hoe te om CSP te vormen.
Toegang tot het randdomein toestaan
default-src 'self';
connect-src 'self' EDGE-DOMAIN
In het bovenstaande voorbeeld moet EDGE-DOMAIN
worden vervangen door het domein van de eerste partij. Het eerste partijdomein wordt gevormd voor edgeDomainhet plaatsen. Als er geen domein van de eerste partij is geconfigureerd, moet EDGE-DOMAIN
worden vervangen door *.adobedc.net
. Als de bezoekersmigratie gebruikend idMigrationEnabledwordt aangezet, moet de connect-src
richtlijn ook *.demdex.net
omvatten.
NONCE gebruiken om inlinescript en stijlelementen toe te staan
Platform Web SDK kan pagina-inhoud wijzigen en moet worden goedgekeurd om inline script- en stijltags te maken. Om dit te verwezenlijken, adviseert de Adobe het gebruiken van één keer voor gebrek-srcCSP richtlijn. Een nonce is een cryptografisch sterk willekeurig token dat door de server wordt gegenereerd en dat één keer per unieke paginaweergave wordt gegenereerd.
default-src 'nonce-SERVER-GENERATED-NONCE'
Bovendien moet CSP nonce als attribuut aan de Platform Web SDK markering van het basiscodemanuscript worden toegevoegd. Platform Web SDK gebruikt deze code vervolgens eenmaal wanneer u inline script- of stijltags aan de pagina toevoegt:
<script nonce="SERVER-GENERATED-NONCE">
!function(n,o){o.forEach(function(o){n[o]||((n.__alloyNS=n.__alloyNS||
[]).push(o),n[o]=function(){var u=arguments;return new Promise(
function(i,l){n[o].q.push([i,l,u])})},n[o].q=[])})}
(window,["alloy"]);
</script>
Als geen enkele keer wordt gebruikt, kunt u ook unsafe-inline
aan de CSP-instructies script-src
en style-src
toevoegen:
script-src 'unsafe-inline'
style-src 'unsafe-inline'
unsafe-inline
omdat het voor om het even welk manuscript om op de pagina toestaat te lopen, die de voordelen van CSP beperkt.Een CSP configureren voor In-App Messaging in-app-messaging
Wanneer u het Overseinen van het Web in-Appvormt, moet u de volgende richtlijn in uw CSP omvatten:
default-src blob:;