Поделиться через


DpapiProtectedConfigurationProvider Класс

Определение

Предоставляет объект ProtectedConfigurationProvider, использующий API защиты данных Windows (DPAPI) для шифрования и расшифровки данных конфигурации.

public ref class DpapiProtectedConfigurationProvider sealed : System::Configuration::ProtectedConfigurationProvider
[System.Runtime.Versioning.SupportedOSPlatform("windows")]
public sealed class DpapiProtectedConfigurationProvider : System.Configuration.ProtectedConfigurationProvider
public sealed class DpapiProtectedConfigurationProvider : System.Configuration.ProtectedConfigurationProvider
[<System.Runtime.Versioning.SupportedOSPlatform("windows")>]
type DpapiProtectedConfigurationProvider = class
    inherit ProtectedConfigurationProvider
type DpapiProtectedConfigurationProvider = class
    inherit ProtectedConfigurationProvider
Public NotInheritable Class DpapiProtectedConfigurationProvider
Inherits ProtectedConfigurationProvider
Наследование
DpapiProtectedConfigurationProvider
Атрибуты

Примеры

В следующем примере показано, как использовать стандартную DpapiProtectedConfigurationProvider для защиты или отмены защиты раздела конфигурации.

В следующих фрагментах конфигурации показан раздел конфигурации до и после применения защиты.

Предупреждение

Корпорация Майкрософт не рекомендует напрямую предоставлять имя пользователя и пароль, так как это небезопасный шаблон. По возможности используйте более безопасные потоки проверки подлинности, такие как управляемые удостоверения для ресурсов Azureили проверки подлинности Windows для SQL Server.

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <connectionStrings>
    <add name="NorthwindConnectionString"
      connectionString="Data Source=webnetue2;Initial Catalog=Northwind;User ID=aspnet_test;Password=test"
      providerName="System.Data.SqlClient" />
  </connectionStrings>
</configuration>
<?xml version="1.0" encoding="utf-8"?>
<configuration>
  <connectionStrings>
    <EncryptedData>
      <CipherData>                <CipherValue>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</CipherValue>
      </CipherData>
    </EncryptedData>
  </connectionStrings>
  <configProtectedData defaultProvider="RsaProtectedConfigurationProvider">
    <providers>
      <clear />
      <add keyContainerName="NetFrameworkConfigurationKey" cspProviderName=""
        useMachineContainer="true" useOAEP="false" description="Uses RsaCryptoServiceProvider to encrypt and decrypt"
        name="RsaProtectedConfigurationProvider" type="System.Configuration.RsaProtectedConfigurationProvider,System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
      <add useMachineProtection="true" description="Uses CryptProtectData and CryptUnProtectData Windows APIs to encrypt and decrypt"
        keyEntropy="" name="DataProtectionConfigurationProvider" type="System.Configuration.DpapiProtectedConfigurationProvider,System.Configuration, Version=2.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" />
    </providers>
  </configProtectedData>
</configuration>

Комментарии

DpapiProtectedConfigurationProvider позволяет защитить конфиденциальную информацию, хранящуюся в файле конфигурации, от несанкционированного доступа.

Вы используете стандартную DpapiProtectedConfigurationProvider путем объявления поставщика и соответствующих параметров в файле конфигурации, а не создания экземпляра этого класса. См. следующий пример.

Дополнительные сведения о защищенной конфигурации см. в разделе Шифрование сведений о конфигурации с помощью защищенной конфигурации.

DpapiProtectedConfigurationProvider использует встроенные службы шифрования Windows и могут быть настроены для защиты конкретных компьютеров или учетной записи пользователя. Защита на компьютере полезна для анонимных служб, но обеспечивает меньшую безопасность. Защита, связанная с учетной записью пользователя, может использоваться с службами, выполняющимися с определенным удостоверением пользователя.

Конструкторы

DpapiProtectedConfigurationProvider()

Инициализирует новый экземпляр класса DpapiProtectedConfigurationProvider с помощью параметров по умолчанию.

Свойства

Description

Получает краткое понятное описание, подходящее для отображения в средствах администрирования или других пользовательских интерфейсах (UIs).

(Унаследовано от ProviderBase)
Name

Возвращает понятное имя, используемое для ссылки на поставщика во время настройки.

(Унаследовано от ProviderBase)
UseMachineProtection

Возвращает значение, указывающее, используется ли объект DpapiProtectedConfigurationProvider с помощью защиты для конкретной компьютера или учетной записи пользователя.

Методы

Decrypt(XmlNode)

Расшифровывает переданный объект XmlNode.

Encrypt(XmlNode)

Шифрует переданный объект XmlNode.

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает Type текущего экземпляра.

(Унаследовано от Object)
Initialize(String, NameValueCollection)

Инициализирует поставщик с параметрами по умолчанию.

MemberwiseClone()

Создает неглубокую копию текущей Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

См. также раздел