C#中使用DpapiProtectedConfigurationProvider进行特定于用户帐户的保护

时间:2016-11-04 15:21:42

标签: encryption

我必须创建一个C#实用程序,使用特定于用户帐户的保护方法加密和解密,而不是基于机器的方法。

我使用DpapiProtectedConfigurationProvider作为保护提供程序。

由于使用DpapiProtectedConfigurationProvider,默认情况下执行基于机器的加密...如何进行基于用户帐户的加密?

1 个答案:

答案 0 :(得分:0)

将属性 useMachineProtection 添加到web.config中的configProtectedData / providers / add元素:

<configuration>
  <configProtectedData defaultProvider="SampleProvider">
    <providers>
      <add name="SampleProvider"
        type="System.Configuration.DpapiProtectedConfigurationProvider, System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL"
        useMachineProtection="false" />
    </providers>
  </configProtectedData>
</configuration>