Udostępnij za pośrednictwem


DpapiProtectedConfigurationProvider Klasa

Definicja

Udostępnia obiekt ProtectedConfigurationProvider, który używa interfejsu API ochrony danych systemu Windows (DPAPI) do szyfrowania i odszyfrowywania danych konfiguracji.

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
Dziedziczenie
DpapiProtectedConfigurationProvider
Atrybuty

Przykłady

W poniższym przykładzie pokazano, jak używać standardowej DpapiProtectedConfigurationProvider do ochrony lub wyłączania ochrony sekcji konfiguracji.

Poniższe fragmenty konfiguracji pokazują sekcję konfiguracji przed zastosowaniem ochrony i po jej zastosowaniu.

Ostrzeżenie

Firma Microsoft nie zaleca bezpośredniego podawania nazwy użytkownika i hasła, ponieważ jest to niezabezpieczony wzorzec. Jeśli to możliwe, należy użyć bezpieczniejszych przepływów uwierzytelniania, takich jak tożsamości zarządzane dla zasobów platformy Azurelub uwierzytelniania systemu Windows dla programu 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>

Uwagi

DpapiProtectedConfigurationProvider umożliwia ochronę poufnych informacji przechowywanych w pliku konfiguracji przed nieautoryzowanym dostępem.

Używasz standardowej DpapiProtectedConfigurationProvider, deklarując dostawcę i odpowiednie ustawienia w pliku konfiguracji, a nie tworząc wystąpienia tej klasy. Zapoznaj się z następnym przykładem.

Aby uzyskać więcej informacji na temat konfiguracji chronionej, zobacz Szyfrowanie informacji o konfiguracji przy użyciu konfiguracji chronionej.

DpapiProtectedConfigurationProvider korzysta z wbudowanych usług kryptograficznych systemu Windows i można je skonfigurować pod kątem ochrony specyficznej dla komputera lub konta użytkownika. Ochrona specyficzna dla maszyny jest przydatna w przypadku usług anonimowych, ale zapewnia mniejsze bezpieczeństwo. Ochrona specyficzna dla konta użytkownika może być używana z usługami, które działają z określoną tożsamością użytkownika.

Konstruktory

DpapiProtectedConfigurationProvider()

Inicjuje nowe wystąpienie klasy DpapiProtectedConfigurationProvider przy użyciu ustawień domyślnych.

Właściwości

Description

Pobiera krótki, przyjazny opis odpowiedni do wyświetlania w narzędziach administracyjnych lub innych interfejsach użytkownika.

(Odziedziczone po ProviderBase)
Name

Pobiera przyjazną nazwę używaną do odwoływania się do dostawcy podczas konfiguracji.

(Odziedziczone po ProviderBase)
UseMachineProtection

Pobiera wartość wskazującą, czy obiekt DpapiProtectedConfigurationProvider korzysta z ochrony specyficznej dla komputera lub konta użytkownika.

Metody

Decrypt(XmlNode)

Odszyfrowuje przekazany obiekt XmlNode.

Encrypt(XmlNode)

Szyfruje przekazany obiekt XmlNode.

Equals(Object)

Określa, czy określony obiekt jest równy bieżącemu obiektowi.

(Odziedziczone po Object)
GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Pobiera Type bieżącego wystąpienia.

(Odziedziczone po Object)
Initialize(String, NameValueCollection)

Inicjuje dostawcę z ustawieniami domyślnymi.

MemberwiseClone()

Tworzy płytkią kopię bieżącego Object.

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)

Dotyczy

Zobacz też