我需要通过客户端线程的状态,但只有在特定的GET请求(又名链接)。因此,我不希望这种状态添加到客户端的ViewState,混乱起来。国家需要进行加密。我怎样才能创建一个新的ViewState般的字典,并使用machine.config中键和设置从加密的machineKey它?如果字典部件不外露,我怎么能encrpyt /使用从Machine.config中的密钥来解密字符串。我不希望添加更多配置文件必须通过我们的服务器农场被复制到复制现有的功能。

有帮助吗?

解决方案

本机键的配置是通过System.Web.Configuration.MachineKeySection具有除了一个构造没有公共方法和复位访问。

的字符串的解密是通过以下方法处理:

.method assembly hidebysig static string 
    DecryptStringWithIV(string s,
                        valuetype System.Web.Configuration.IVType ivType) cil managed

哪些呼叫

.method assembly hidebysig static uint8[] 
    EncryptOrDecryptData(bool fEncrypt,
                         uint8[] buf,
                         uint8[] modifier,
                         int32 start,
                         int32 length,
                         bool useValidationSymAlgo,
                         bool useLegacyMode,
                         valuetype System.Web.Configuration.IVType ivType) cil managed

这些都是私人;加密/解密功能不被暴露。它可能是通过System.Web.IHttpHandler的实现是可能的访问解密通过构建一个HttpContext的,虽然我不知道其中一个可以去调用加密功能。

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top