/// <summary> /// Generates a CSP nonce HTML attribute. The 120-bit random nonce will be included in the CSP style-src directive. /// </summary> /// <param name="helper"></param> public static IHtmlString CspStyleNonce(this HtmlHelper helper) { var context = new HttpContextWrapper(helper.ViewContext.HttpContext); var cspConfigurationOverrideHelper = new CspConfigurationOverrideHelper(); var headerOverrideHelper = new HeaderOverrideHelper(new CspReportHelper()); var nonce = cspConfigurationOverrideHelper.GetCspStyleNonce(context); if (context.GetItem <string>("NWebsecStyleNonceSet") == null) { context.SetItem("NWebsecStyleNonceSet", "set"); headerOverrideHelper.SetCspHeaders(context, false); headerOverrideHelper.SetCspHeaders(context, true); } return(CreateNonceAttribute(helper, nonce)); }
public void GetItem_NoItem_ReturnsNull() { Assert.Null(_contextWrapper.GetItem <string>("unexistingitem")); }