System.Configuration.DpapiProtectedConfigurationProvider 类

方法描述

提供一个使用 Windows 数据保护 API (DPAPI) 来加密和解密配置数据的 ProtectedConfigurationProvider。

语法定义(C# System.Configuration.DpapiProtectedConfigurationProvider 类 的用法)

[PermissionSetAttribute(SecurityAction.Demand, Name = "FullTrust")]
public sealed class DpapiProtectedConfigurationProvider : ProtectedConfigurationProvider

构造函数

构造函数名称 构造函数描述
DpapiProtectedConfigurationProvider 使用默认设置初始化 DpapiProtectedConfigurationProvider 类的新实例。

成员/方法

方法名称 方法描述
Decrypt 对传递的 XmlNode 对象进行解密。 (重写 ProtectedConfigurationProvider.Decrypt(XmlNode)。)
Encrypt 对传递的 XmlNode 对象进行加密。 (重写 ProtectedConfigurationProvider.Encrypt(XmlNode)。)
Equals(Object) 确定指定的 Object 是否等于当前的 Object。 (继承自 Object。)
Finalize 允许对象在“垃圾回收”回收之前尝试释放资源并执行其他清理操作。 (继承自 Object。)
GetHashCode 用作特定类型的哈希函数。 (继承自 Object。)
GetType 获取当前实例的 Type。 (继承自 Object。)
Initialize 使用默认设置初始化提供程序。 (重写 ProviderBase.Initialize(String, NameValueCollection)。)
MemberwiseClone 创建当前 Object 的浅表副本。 (继承自 Object。)
ToString 返回表示当前对象的字符串。 (继承自 Object。)

提示和注释

利用 DpapiProtectedConfigurationProvider,可以保护配置文件中存储的敏感信息,防止未授权访问。

通过在配置文件中声明提供程序和适当的设置(而非创建此类的实例),可以使用标准的 DpapiProtectedConfigurationProvider。 请参考下一个示例。

有关受保护的配置的更多信息,请参见使用受保护的配置加密配置信息。

DpapiProtectedConfigurationProvider 使用 Windows 内置的加密服务,而且可对其进行配置,使其以特定于计算机的方式进行保护,或以特定于用户帐户的方式进行保护。 特定于计算机的保护对于匿名服务非常有用,但安全性相对较差。 特定于用户帐户的保护可与根据特定用户身份而运行的服务一同使用。

System.Configuration.DpapiProtectedConfigurationProvider 类例子

下面的配置摘录演示应用保护前和应用保护后的配置节。



  
    
                      AQAAANCMnd8BFdERjHoAwE/Cl+sBAAAAcAMh0jIC1kigyFfd9AUZfQQAAAACAAAAAAADZgAAqAAAABAAAADQwbQ2DgIgIlqskE1RI9UpAAAAAASAAACgAAAAEAAAAAXlYBxi3jhM6wv4sxLhugsQAgAAgoReHZS2406dc/AyRDd6WuNr4ihHn6fbipd4tzHEmeuyS4o4fS4CmT3jMt/WjsP/kR7TF4ygwr2GG47podK79ECpVCZHAgctCauCYjE2Ls3iphKXy/pHic2o6aaClt/xPm+fb4OfODv6XjrJhJzGK2lqUPXkyJN1w2zwh6OVpDQF9N8vTyxL4eitp35/M5zYbW7e6VVAgYUOxlNxgCV5+jXpUKh/rPovopTD392u8KavqQFW1iu+gBPSPq/xeZNz+qYMKbUl+r4VTzBQg3fPlRxp1lNZmM2yRgUbkYPNaFb9ihS7GAg5/wZn8lLmThvq39eA0Vlp6hDE92iop885umELt0/NBKf5umQCqqz9EXXLbmmGc7qoLqTaYVuOmqx0LsvrJL0wSL1dSySCjmB/dNAtVUYgg02eWQNKyaLqnpMdCbTLLQ/oCKuNkL5OQ7t1yl5wQGjQhieIRzLtrMgpTSyaHbqDsRurp9Bc5mM078IAg1hXquQNKlJC/wiJ9kbHerFCbtuLGy/7nXVrFH91ud4U4ExCJEuhoTdmuql5kbqYd6Ye/bu2CftPni19nDkSJ8w4NoqMNKbK3Mi/Cd0o113HsVYlETMv1vlJWZWYP91PK9trixiY4E0G81c6IKITjHDrOJ9evdw2T1/TrvY6pzre3UXSJbFMDQVX6JoAxFk02SRZDKOZdRojeoX19lgrFAAAABzjlz3Qg2as3vn7MRQVxDfZucgE
      
    
  
  
    
      
      
      
    
  

继承层次结构

System.Object

System.Configuration.Provider.ProviderBase

System.Configuration.ProtectedConfigurationProvider

System.Configuration.DpapiProtectedConfigurationProvider

命名空间

namespace: System.Configuration

程序集: System.Configuration(在 System.Configuration.dll 中)

线程安全

此类型的任何公共 static(在 Visual Basic 中为 Shared) 成员都是线程安全的。但不保证所有实例成员都是线程安全的。

版本信息

.NET Framework 受以下版本支持:4、3.5、3.0、2.0 .NET Framework Client Profile 受以下版本支持:4、3.5 SP1

适用平台

Windows 7, Windows Vista SP1 或更高版本, Windows XP SP3, Windows XP SP2 x64 Edition, Windows Server 2008(不支持服务器核心), Windows Server 2008 R2(支持 SP1 或更高版本的服务器核心), Windows Server 2003 SP2 .NET Framework 并不是对每个平台的所有版本都提供支持。有关支持的版本的列表,请参见.NET Framework 系统要求。