Konfigurera Dispatcher för att förhindra CSRF-attacker configuring-dispatcher-to-prevent-csrf-attacks

AEM tillhandahåller ett ramverk som syftar till att förhindra attacker av typen cross-site Request. För att du ska kunna använda detta ramverk på rätt sätt måste du göra följande ändringar i din dispatcherkonfiguration:

NOTE
Var noga med att uppdatera regelnumren i exemplen nedan baserat på din befintliga konfiguration. Kom ihåg att avsändare kommer att använda den senaste matchande regeln för att bevilja eller neka tillstånd, så placera reglerna längst ned i den befintliga listan.
  1. I /clientheaders i din författargrupp.any och publish-farm.any, lägg till följande post längst ned i listan:
    CSRF-Token
  2. I avsnittet /filters i author-farm.any och publish-farm.any eller publish-filters.any fil, lägg till följande rad för att tillåta begäranden för /libs/granite/csrf/token.json genom dispatchern.
    /0999 { /type "allow" /glob " * /libs/granite/csrf/token.json*" }
  3. Under /cache /rules i publish-farm.anylägger du till en regel som blockerar dispatchern från att cachelagra token.json -fil. Vanligtvis åsidosätter författare cachelagring, så du behöver inte lägga till regeln i author-farm.any.
    /0999 { /glob "/libs/granite/csrf/token.json" /type "deny" }

Kontrollera att konfigurationen fungerar genom att titta på dispatcher.log i DEBUG-läge för att kontrollera att filen token.json inte cachelagras och inte blockeras av filter. Du bör se meddelanden som liknar:
... checking [/libs/granite/csrf/token.json]
... request URL not in cache rules: /libs/granite/csrf/token.json
... cache-action for [/libs/granite/csrf/token.json]: NONE

Du kan också validera att begäranden lyckas i din apache access_log. Begäranden för"/libs/granite/csrf/token.json ska returnera en HTTP 200-statuskod.

recommendation-more-help
ce382601-480f-4a99-8be7-73178d4b6ef5