2016-04-20 73 views
1

我有一個使用Windows身份驗證的網絡核心Web應用程序,我在IIS 8.5下的Windows Server 2012 R2計算機上運行。當試圖達到它時,我得到:在啓用了FIPS的IIS 8.5上運行.NET Core應用程序導致500錯誤

InvalidOperationException:此實現不是Windows平臺FIPS驗證的加密算法的一部分。 (); System.Security.Cryptography.SHA256Managed..ctor()

given app.UseBrowserLink(); & app.UseDeveloperExceptionPage();在Startup.cs中使用,否則我只是得到一個500內部服務器錯誤,顯示一個空白屏幕。

如果我禁用FIPS(控制面板 - >管理工具 - >本地安全策略 - >本地策略 - >安全選項 - >「系統加密:使用FIPS兼容算法進行加密,哈希和簽名」),我可以達到該網站和Windows身份驗證工作正常。

所以我的問題是爲什麼在IIS 8.5上託管一個網絡核心應用程序時使用FIPS導致此錯誤?目前,我沒有使用FIPS的要求,但未來可能會發生變化。

+0

我也嘗試配置應用程序使用匿名身份驗證,但錯誤仍然存​​在,如果啓用FIPS – mstrand

+0

你可以發佈回購github,你的完整代碼和project.json? – blowdart

+0

當然是https://github.com/idqfizz/CoreWebAppFIPSFail.git – mstrand

回答

2

Repro應用程序是一個ASP.NET 5 RC1應用程序,它使用dnx和dnu。 Dnu restore使用來自NuGet2的代碼,它使用FIPS下的SHA256Managed類觸發IOE。

ASP.NET Core RC2使用nuget V3,不應該有這個問題,所以當你將你的應用程序移植到RC2時,你應該從FIPS的角度來看。

相關問題