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.
- I
/clientheaders
i din författargrupp.any och publish-farm.any, lägg till följande post längst ned i listan:CSRF-Token
- I avsnittet /filters i
author-farm.any
ochpublish-farm.any
ellerpublish-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*" }
- Under
/cache /rules
ipublish-farm.any
lägger du till en regel som blockerar dispatchern från att cachelagratoken.json
-fil. Vanligtvis åsidosätter författare cachelagring, så du behöver inte lägga till regeln iauthor-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