DpapiProtectedConfigurationProvider Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt ein ProtectedConfigurationProvider-Objekt bereit, das die Windows-Datenschutz-API (DPAPI) zum Verschlüsseln und Entschlüsseln von Konfigurationsdaten verwendet.
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
- Vererbung
- Attribute
Beispiele
Das folgende Beispiel zeigt, wie Sie den Standard-DpapiProtectedConfigurationProvider verwenden, um einen Konfigurationsabschnitt zu schützen oder aufzuheben.
Die folgenden Konfigurationsauszüge zeigen den Konfigurationsabschnitt vor und nach anwendung des Schutzes.
Warnung
Microsoft empfiehlt nicht, Ihren Benutzernamen und Ihr Kennwort direkt anzugeben, da es sich um ein unsicheres Muster handelt. Verwenden Sie nach Möglichkeit sicherere Authentifizierungsflüsse, z. B. verwaltete Identitäten für Azure-Ressourcen, oder Windows-Authentifizierungs- für 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>
Hinweise
Mit dem DpapiProtectedConfigurationProvider können Sie vertrauliche Informationen, die in einer Konfigurationsdatei gespeichert sind, vor unbefugtem Zugriff schützen.
Sie verwenden die Standard-DpapiProtectedConfigurationProvider, indem Sie den Anbieter und die entsprechenden Einstellungen in der Konfigurationsdatei deklarieren, anstatt eine Instanz dieser Klasse zu erstellen. Weitere Informationen finden Sie im nächsten Beispiel.
Weitere Informationen zur geschützten Konfiguration finden Sie unter Verschlüsseln von Konfigurationsinformationen mithilfe der geschützten Konfiguration.
Die DpapiProtectedConfigurationProvider verwendet die integrierten Kryptografiedienste von Windows und kann für computerspezifischen oder benutzerkontospezifischen Schutz konfiguriert werden. Computerspezifischer Schutz ist für anonyme Dienste nützlich, bietet jedoch weniger Sicherheit. Benutzerkontospezifischer Schutz kann mit Diensten verwendet werden, die mit einer bestimmten Benutzeridentität ausgeführt werden.
Konstruktoren
DpapiProtectedConfigurationProvider() |
Initialisiert eine neue Instanz der DpapiProtectedConfigurationProvider Klasse mithilfe von Standardeinstellungen. |
Eigenschaften
Description |
Ruft eine kurze, benutzerfreundliche Beschreibung ab, die für die Anzeige in Verwaltungstools oder anderen Benutzeroberflächen (UIs) geeignet ist. (Geerbt von ProviderBase) |
Name |
Ruft den Anzeigenamen ab, der verwendet wird, um während der Konfiguration auf den Anbieter zu verweisen. (Geerbt von ProviderBase) |
UseMachineProtection |
Ruft einen Wert ab, der angibt, ob das DpapiProtectedConfigurationProvider-Objekt computerspezifischen oder benutzerkontospezifischen Schutz verwendet. |
Methoden
Decrypt(XmlNode) |
Entschlüsselt das übergebene XmlNode -Objekt. |
Encrypt(XmlNode) |
Verschlüsselt das übergebene XmlNode-Objekt. |
Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
Initialize(String, NameValueCollection) |
Initialisiert den Anbieter mit Standardeinstellungen. |
MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |