1

Umbraco CMS バージョン 7 を使用する Web サイトで作業しています。Web サイトに CSP ヘッダーを実装するために NWebSec を使用しています。NWebSec には、CSP 違反が発生したときに .Net イベントを発生させる機能が組み込まれています。通常、次のような方法でそのイベントをキャッチします。

protected void NWebSecHttpHeaderSecurityModule_CspViolationReported(object sender, CspViolationReportEventArgs e)
    {
        var report = e.ViolationReport;
        var serializedReport = JsonConvert.SerializeObject(report.Details);

        // Do a thing with the report
    }

Global.asax.cs ファイル内。しかし、私が知る限り、Umbraco は Global.asax.cs ファイルを先取りし、スローされたすべてのイベントを食べます。次のようないくつかのカスタム イベント ハンドラを含むファイルがあります。

public void OnApplicationStarted(UmbracoApplicationBase umbracoApplication, ApplicationContext applicationContext)

通常は Global.asax.cs ファイルにある標準的なアプリケーション スタートアップ コードを処理しますが、同じファイルに NWebSec イベント ハンドラーを配置しても機能しません。おそらく、Umbraco が置き換えたものではなく、.Net イベント ハンドラー構文を使用しているためです。

NWebSec によってスローされたイベントにアクセスするにはどうすればよいですか?

4

1 に答える 1