Windows'taki güvenlik ilkesi seçeneği olan "Şifreleme, karmalama ve imzalama için FIPS uyumlu algoritmalar kullan" seçeneğini etkinleştirirseniz, .NET Framework'teki birçok şifreleme sınıfını kullanmaya çalışmak InvalidOperationException ile sonuçlanır. Varsayılan olarak, ASP.NET ViewState blobunu şifrelemek için AES kullanır, bu nedenle başarısız olur.ASP.NET ScriptManager'ı Windows FIPS güvenlik ilkesiyle çalışacak şekilde üretilebilir mi?
<machineKey validationKey="AutoGenerate,IsolateApps" decryptionKey="AutoGenerate,IsolateApps" validation="3DES" decryption="3DES"/>
Ve bu temel ASP.NET kullanım için teşekkür kapsar: Sen web.config için böyle bir anahtarı ekleyerek bu çalışabilirsiniz. Benim sorunum şudur: ScriptManager'ları (ASP.NET AJAX'ın temelini) yoğun kullanan ve bu FIPS ilke ayarını etkinleştirmesi gereken bir devlet müşterisi tarafından dağıtılması gereken büyük ve karmaşık bir ASP.NET web uygulamalarım var.
[InvalidOperationException: This implementation is not part of the Windows Platform FIPS validated cryptographic algorithms.]
System.Security.Cryptography.SHA1Managed..ctor() +3607454
System.Security.Policy.Hash.get_SHA1() +45
System.Web.Handlers.ScriptResourceHandler.GetAssemblyInfoInternal(Assembly assembly) +85
System.Web.Handlers.ScriptResourceHandler.GetAssemblyInfo(Assembly assembly) +99
System.Web.Handlers.RuntimeScriptResourceHandler.GetScriptResourceUrlImpl(List`1 assemblyResourceLists, Boolean zip, Boolean notifyScriptLoaded) +525
System.Web.Handlers.RuntimeScriptResourceHandler.System.Web.Handlers.IScriptResourceHandler.GetScriptResourceUrl(List`1 assemblyResourceLists, Boolean zip, Boolean notifyScriptLoaded) +910
System.Web.Handlers.RuntimeScriptResourceHandler.System.Web.Handlers.IScriptResourceHandler.GetScriptResourceUrl(Assembly assembly, String resourceName, CultureInfo culture, Boolean zip, Boolean notifyScriptLoaded) +193
System.Web.UI.ScriptReference.GetUrlFromName(ScriptManager scriptManager, IControl scriptManagerControl, Boolean zip) +306
System.Web.UI.ScriptManager.RegisterUniqueScripts(List`1 uniqueScripts) +169
System.Web.UI.ScriptManager.RegisterScripts() +407
System.Web.UI.ScriptManager.OnPagePreRenderComplete(Object sender, EventArgs e) +200
System.Web.UI.Page.OnPreRenderComplete(EventArgs e) +11041982
System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +3672
bile istisna gidermezse web.config için
<enforceFIPSPolicy enabled="false"/>
öğe ekleyerek: Üzerinde bir betiği betik ile herhangi ASP.NET sayfası bu istisna atar.
ScriptManager'ın Windows FIPS güvenlik ilkesiyle birlikte kullanılabilmesi için ASP.NET'i yapılandırmanın herhangi bir yolu var mı? Microsoft'tan