我正在研究一个经典的ASP程序,该程序利用COM Interop模块记录消息并处理加密/解密。反过来,COM程序利用内部加密模块来处理安全性。每个页面上的ASP程序都会查找加密凭据的cookie。整个过程都可以在生产环境中使用,但是...在开发和测试服务器上,用户大部分时间无法登录。至少可以说使支持成为问题。该问题已追溯到安全模块中的那行,该模块使用应用程序块来获取配置。 CryptoConfigurationDataCollection CryptoConfigLst =(CryptoConfigurationDataCollection)ConfigurationManager.Read(“ CryptoLib”);
COM的配置如下,我们知道它的工作是因为日志记录语句已被注释掉-当注释被删除时,它开始记录
<configuration>
<configSections>
<section name="applicationConfigurationManagement" type="Microsoft.ApplicationBlocks.ConfigurationManagement.ConfigurationManagerSectionHandler,Microsoft.ApplicationBlocks.ConfigurationManagement, Version=1.0.0.0,Culture=neutral,PublicKeyToken=bla bla bla" />
<section name="CryptoLib" type="UsChickens.BaseTech.Cryptography.CryptoSectionHandler,UsChickens.BaseTech.Cryptography,Version=1.0.0.0,Culture=neutral,PublicKeyToken=bla bla bla" />
<section name="log4net" type="System.Configuration.IgnoreSectionHandler"/>
<section name="eRadar" type="Microsoft.ApplicationBlocks.ConfigurationManagement.XmlHashtableSectionHandler,Microsoft.ApplicationBlocks.ConfigurationManagement,Version=1.0.0.0,Culture=neutral,PublicKeyToken=bla bla bla"/>
</configSections>
<applicationConfigurationManagement >
<configSection name="CryptoLib">
<configCache enabled="true"
refresh="1 * * * *" />
<configProvider assembly="Microsoft.ApplicationBlocks.ConfigurationManagement,Version=1.0.0.0,Culture=neutral,PublicKeyToken=bla bla bla"
type="Microsoft.ApplicationBlocks.ConfigurationManagement.Storage.XmlFileStorage"
refreshOnChange="true"
signed="false"
encrypted="false"
path="C:\CMApps\Config\CryptoLib.xml"/>
</configSection>
<configSection name="eRadar">
<configCache enabled="true" refresh="1 * * * *" />
<configProvider
assembly="Microsoft.ApplicationBlocks.ConfigurationManagement,Version=1.0.0.0,Culture=neutral,PublicKeyToken=bla bla bla"
type="Microsoft.ApplicationBlocks.ConfigurationManagement.Storage.XmlFileStorage"
refreshOnChange="true"
signed="false"
encrypted="false"
path="C:\CMapps\Config\eRadar.xml" />
</configSection>
</applicationConfigurationManagement>
还有更多,但它与日志记录有关,这与该问题无关 被引用的两个文件存在于config目录中-即使它们被编码错误,该错误也不会是对象引用..... 有任何想法吗? 在生产中效果很好