Note

Access to this page requires authorization. You can try signing in or .

Access to this page requires authorization. You can try .

SectionInformation.ProtectSection(String) Method

Definition

Namespace:
System.Configuration
Assembly:
System.Configuration.ConfigurationManager.dll
Assembly:
System.Configuration.dll
Package:
System.Configuration.ConfigurationManager v11.0.0-preview.5.26302.115
Source:
SectionInformation.cs
Source:
SectionInformation.cs
Source:
SectionInformation.cs
Source:
SectionInformation.cs
Source:
SectionInformation.cs
Source:
SectionInformation.cs
Source:
SectionInformation.cs
Source:
SectionInformation.cs
Source:
SectionInformation.cs

Important

Some information relates to prerelease product that may be substantially modified before it’s released. Microsoft makes no warranties, express or implied, with respect to the information provided here.

Marks a configuration section for protection.

public:
 void ProtectSection(System::String ^ protectionProvider);
public void ProtectSection(string protectionProvider);
member this.ProtectSection : string -> unit
Public Sub ProtectSection (protectionProvider As String)

Parameters

protectionProvider
String

The name of the protection provider to use.

Exceptions

The AllowLocation property is set to false.

-or-

The target section is already a protected data section.

Examples

The following example shows how to use the ProtectSection method.

static public void ProtectSection()
{

 // Get the current configuration file.
 System.Configuration.Configuration config =
 ConfigurationManager.OpenExeConfiguration(
 ConfigurationUserLevel.None);

 // Get the section.
 UrlsSection section =
 (UrlsSection)config.GetSection("MyUrls");

 // Protect (encrypt)the section.
 section.SectionInformation.ProtectSection(
 "RsaProtectedConfigurationProvider");

 // Save the encrypted section.
 section.SectionInformation.ForceSave = true;

 config.Save(ConfigurationSaveMode.Full);

 // Display decrypted configuration 
 // section. Note, the system
 // uses the Rsa provider to decrypt
 // the section transparently.
 string sectionXml =
 section.SectionInformation.GetRawXml();

 Console.WriteLine("Decrypted section:");
 Console.WriteLine(sectionXml);
}
Public Shared Sub ProtectSection() 
 
 ' Get the current configuration file.
 Dim config _
 As System.Configuration.Configuration = _
 ConfigurationManager.OpenExeConfiguration( _
 ConfigurationUserLevel.None)

 
 ' Get the section.
 Dim section As UrlsSection = _
 CType(config.GetSection("MyUrls"), UrlsSection)
 
 
 ' Protect (encrypt)the section.
 section.SectionInformation.ProtectSection( _
 "RsaProtectedConfigurationProvider")
 
 ' Save the encrypted section.
 section.SectionInformation.ForceSave = True
 
 config.Save(ConfigurationSaveMode.Full)
 
 ' Display decrypted configuration 
 ' section. Note, the system
 ' uses the Rsa provider to decrypt
 ' the section transparently.
 Dim sectionXml As String = _
 section.SectionInformation.GetRawXml()
 
 Console.WriteLine("Decrypted section:")
 Console.WriteLine(sectionXml)

End Sub

Remarks

The ProtectSection method marks the section for encryption so it will be written in encrypted form on disk.

The following protection providers are included by default:

DpapiProtectedConfigurationProvider

RsaProtectedConfigurationProvider

Note

If you call the ProtectSection method with a null parameter or an empty string, the RsaProtectedConfigurationProvider class is used as the protection provider.

For more information about protected configuration sections, see Encrypting Configuration Information Using Protected Configuration.

Applies to

See also


Feedback

Was this page helpful?