Table of contents
Content-Security-Policy header
Content-Security-Policy header
Frá og með version 7.3.11.43-dev (unstable) og 7.3.11.765 (stable) þá er kominn innbyggður stuðningur við Content-Security-Policy header (https://developer.mozilla.org/en-US/docs/Web/HTTP/CSP), sem þýðir að öll external resources sem verið er að vísa í (myndir, CSS, js, fontar osv.frv.) þarf að white-lista sérstaklega, því um leið og búið er að setja þennan header inn þá blocka vafrarnir allt sem ekki matchar við hann. Öll innbyggð Veva modules og þau sem eru í VevaIntegrations ættu að sjá um þetta sjálf nú þegar en ef verið er að uppfæra vef sem er með einhverjar manual vísanir í external dót, þá þarf að whitelista það sérstaklega.
Til að gera það er hægt að útfæra custom PageRequestHook, t.d svona:
Þessi er að leyfa fonta frá fonts.gstatic.com sem dæmi
public class CustomCSPHeaderValues : IPageRequestHook
{
public int OrderIndex => 1000;
public async Task OnRequestAsync(PageRequest pageRequest)
{
pageRequest.SecurityOptions.FontResources.Add("https://fonts.gstatic.com/");
}
}
Fontar
pageRequest.SecurityOptions.FontResources.Add("https://use.typekit.net");
pageRequest.SecurityOptions.StyleResources.Add("https://use.typekit.net");
pageRequest.SecurityOptions.FontResources.Add("https://p.typekit.net");
pageRequest.SecurityOptions.StyleResources.Add("https://p.typekit.net");
pageRequest.SecurityOptions.FontResources.Add("https://fonts.googleapis.com");
pageRequest.SecurityOptions.StyleResources.Add("https://fonts.googleapis.com");
pageRequest.SecurityOptions.FontResources.Add("https://fonts.gstatic.com");