2016-03-07 142 views
10

我正在尋找一種爲我的ASP.NET WebForms應用程序實現相對較強的Content-Security-Policy頭的好方法。我將盡可能多的JavaScript存儲在文件中而不是內聯,但是默認情況下,WebForms會爲內聯腳本插入的許多以用於表單提交和基本AJAX調用等簡單事情。ASP.NET WebForms中的內容安全策略

MVC有一些簡單的方法來實現nonces,尤其是在第三方庫(如NWebsec)的幫助下,但我似乎無法找到任何使用WebForms實現它們的方法。如果有一種方法可以預測和檢索每個.NET注入腳本標記的散列,我甚至不會使用散列問題。

我討厭允許'不安全的內聯'值。感覺不對,需要關閉如此強大的安全功能。有沒有一種合理的方式在WebForms中實現它?

+0

你有沒有找到答案呢,安迪? – Resource

+0

我沒有。我甚至嘗試在[Twitter](https:// twitter)上登記[Troy Hunt](https://www.troyhunt.com/)和[AndréKlingsheim](http://www.dotnetnoob.com/)的幫助.com/askrenes/status/705471606311800836),無濟於事。 – Andy

回答

1

我有同樣的問題和悲傷的說,這是我們所做的最好的。我們基本確定了我們使用和不使用的內容。我們甚至不得不在其中的一些不安全評估中使用,因爲我們使用的是第三方控件,如果沒有它,工作將無法正常工作。我們至少得到的是避免調用外部網址。

default-src 'self'; 
child-src 'self' 'unsafe-inline' 'unsafe-eval'; 
object-src 'none'; 
script-src 'self' 'unsafe-inline' 'unsafe-eval' https://www.google-analytics.com; 
img-src 'self' https://www.google-analytics.com; 
style-src 'self' 'unsafe-inline'