ProtectedConfigurationSection Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Обеспечивает программный доступ к разделу конфигурации объекта configProtectedData
. Этот класс не наследуется.
public ref class ProtectedConfigurationSection sealed : System::Configuration::ConfigurationSection
public sealed class ProtectedConfigurationSection : System.Configuration.ConfigurationSection
type ProtectedConfigurationSection = class
inherit ConfigurationSection
Public NotInheritable Class ProtectedConfigurationSection
Inherits ConfigurationSection
- Наследование
Примеры
В следующем фрагменте файла конфигурации показано, как декларативно указать поставщиков защищенных данных.
<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>
В следующем примере кода показано, как использовать ProtectedConfigurationSection класс для программного доступа к значениям configProtectedData
в разделе файла конфигурации.
using System;
using System.IO;
using System.Configuration;
namespace Samples.Aspnet
{
// Shows how to use ProtectedConfigurationSection.
class UsingProtectedConfigurationSection
{
static void GetDefaultProvider()
{
try
{
// Get the application configuration.
Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
// Get the protected configuration section.
ProtectedConfigurationSection pcSection =
(System.Configuration.ProtectedConfigurationSection)
config.GetSection("configProtectedData");
// Get the current DefaultProvider.
Console.WriteLine(
"Protected configuration section default provider:");
Console.WriteLine(" {0}", pcSection.DefaultProvider);
}
catch (ConfigurationErrorsException e)
{
Console.WriteLine(e.ToString());
}
}
static void GetProviderCollection()
{
try
{
// Get the application configuration.
Configuration config =
ConfigurationManager.OpenExeConfiguration(
ConfigurationUserLevel.None);
// Get the protected configuration section.
ProtectedConfigurationSection pcSection =
(System.Configuration.ProtectedConfigurationSection)
config.GetSection("configProtectedData");
Console.WriteLine(
"Protected configuration section providers:");
foreach (ProviderSettings ps in
pcSection.Providers)
{
Console.WriteLine(" {0}", ps.Name);
}
}
catch (ConfigurationErrorsException e)
{
Console.WriteLine(e.ToString());
}
}
public static void Main()
{
GetDefaultProvider();
GetProviderCollection();
}
}
}
Imports System.IO
Imports System.Configuration
' Shows how to use ProtectedConfigurationSection.
Class UsingProtectedConfigurationSection
Shared Sub GetDefaultProvider()
Try
' Get the application configuration.
Dim config As Configuration = _
ConfigurationManager.OpenExeConfiguration( _
ConfigurationUserLevel.None)
' Get the protected configuration section.
Dim pcSection _
As ProtectedConfigurationSection = _
CType(config.GetSection( _
"configProtectedData"), _
System.Configuration.ProtectedConfigurationSection)
' Get the current DefaultProvider.
Console.WriteLine( _
"Protected configuration section default provider:")
Console.WriteLine("{0}", _
pcSection.DefaultProvider)
Catch e As ConfigurationErrorsException
Console.WriteLine(e.ToString())
End Try
End Sub
Shared Sub GetProviderCollection()
Try
' Get the application configuration.
Dim config As Configuration = _
ConfigurationManager.OpenExeConfiguration( _
ConfigurationUserLevel.None)
' Get the protected configuration section.
Dim pcSection _
As ProtectedConfigurationSection = _
CType(config.GetSection( _
"configProtectedData"), _
System.Configuration.ProtectedConfigurationSection)
Console.WriteLine( _
"Protected configuration section providers:")
Dim ps As ProviderSettings
For Each ps In pcSection.Providers
Console.WriteLine(" {0}", ps.Name)
Next ps
Catch e As ConfigurationErrorsException
Console.WriteLine(e.ToString())
End Try
End Sub
Public Shared Sub Main()
GetDefaultProvider()
GetProviderCollection()
End Sub
End Class
Комментарии
Раздел configProtectedData
файла конфигурации содержит коллекцию защищенных поставщиков данных в своем элементе providers
.
Примечание
Для шифрования и расшифровки разделов конфигурации можно использовать средство Aspnet_regiis.exe. См. статью Шифрование сведений о конфигурации с помощью функции защищенной конфигурации.
Конструкторы
ProtectedConfigurationSection() |
Инициализирует новый экземпляр класса ProtectedConfigurationSection значениями по умолчанию. |
Свойства
CurrentConfiguration |
Возвращает ссылку на экземпляр Configuration верхнего уровня, представляющий иерархию конфигурации, к которой относится текущий экземпляр ConfigurationElement. (Унаследовано от ConfigurationElement) |
DefaultProvider |
Возвращает или задает имя объекта ProtectedConfigurationProvider по умолчанию в свойстве коллекции Providers. |
ElementInformation |
Возвращает объект ElementInformation, содержащий неизменяемую информацию и функциональность объекта ConfigurationElement. (Унаследовано от ConfigurationElement) |
ElementProperty |
Возвращает объект ConfigurationElementProperty, представляющий сам объект ConfigurationElement. (Унаследовано от ConfigurationElement) |
EvaluationContext |
Возвращает объект ContextInformation для объекта ConfigurationElement. (Унаследовано от ConfigurationElement) |
HasContext |
Возвращает значение, указывающее, имеет ли свойство CurrentConfiguration значение |
Item[ConfigurationProperty] |
Возвращает или задает свойство или атрибут данного элемента конфигурации. (Унаследовано от ConfigurationElement) |
Item[String] |
Получает или задает свойство, атрибут или дочерний элемент данного элемента конфигурации. (Унаследовано от ConfigurationElement) |
LockAllAttributesExcept |
Возвращает коллекцию заблокированных атрибутов. (Унаследовано от ConfigurationElement) |
LockAllElementsExcept |
Возвращает коллекцию заблокированных элементов. (Унаследовано от ConfigurationElement) |
LockAttributes |
Возвращает коллекцию заблокированных атрибутов. (Унаследовано от ConfigurationElement) |
LockElements |
Возвращает коллекцию заблокированных элементов. (Унаследовано от ConfigurationElement) |
LockItem |
Возвращает или задает значение, указывающее, заблокирован ли элемент. (Унаследовано от ConfigurationElement) |
Properties |
Возвращает коллекцию свойств. (Унаследовано от ConfigurationElement) |
Providers |
Возвращает коллекцию ProviderSettingsCollection всех объектов ProtectedConfigurationProvider из всех участвующих файлов конфигурации. |
SectionInformation |
Возвращает объект SectionInformation, содержащий неизменяемую информацию и функциональность объекта ConfigurationSection. (Унаследовано от ConfigurationSection) |
Методы
DeserializeElement(XmlReader, Boolean) |
Считывает XML из файла конфигурации. (Унаследовано от ConfigurationElement) |
DeserializeSection(XmlReader) |
Считывает XML из файла конфигурации. (Унаследовано от ConfigurationSection) |
Equals(Object) |
Сравнивает текущий экземпляр ConfigurationElement с указанным объектом. (Унаследовано от ConfigurationElement) |
GetHashCode() |
Получает уникальное значение, представляющее текущий экземпляр ConfigurationElement. (Унаследовано от ConfigurationElement) |
GetRuntimeObject() |
Возвращает пользовательский объект при переопределении в производном классе. (Унаследовано от ConfigurationSection) |
GetTransformedAssemblyString(String) |
Возвращает преобразованную версию указанного имени сборки. (Унаследовано от ConfigurationElement) |
GetTransformedTypeString(String) |
Возвращает преобразованную версию указанного имени типа. (Унаследовано от ConfigurationElement) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
Init() |
Задает объект ConfigurationElement в исходное состояние. (Унаследовано от ConfigurationElement) |
InitializeDefault() |
Используется для инициализации набора значений по умолчанию для объекта ConfigurationElement. (Унаследовано от ConfigurationElement) |
IsModified() |
При реализации в производном классе указывает, был ли изменен данный элемент конфигурации с момента последнего сохранения или загрузки. (Унаследовано от ConfigurationSection) |
IsReadOnly() |
Получает значение, показывающее, является ли объект ConfigurationElement доступным только для чтения. (Унаследовано от ConfigurationElement) |
ListErrors(IList) |
Добавляет ошибку "недействительное свойство" в данном объекте ConfigurationElement и всех его дочерних элементах к переданному списку. (Унаследовано от ConfigurationElement) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
OnDeserializeUnrecognizedAttribute(String, String) |
Возвращает значение, указывающее, встретился ли неизвестный атрибут при десериализации. (Унаследовано от ConfigurationElement) |
OnDeserializeUnrecognizedElement(String, XmlReader) |
Возвращает значение, указывающее, встретился ли неизвестный элемент при десериализации. (Унаследовано от ConfigurationElement) |
OnRequiredPropertyNotFound(String) |
Выдает исключение, если требуемое свойство не найдено. (Унаследовано от ConfigurationElement) |
PostDeserialize() |
Вызывается после десериализации. (Унаследовано от ConfigurationElement) |
PreSerialize(XmlWriter) |
Вызывается до сериализации. (Унаследовано от ConfigurationElement) |
Reset(ConfigurationElement) |
Восстанавливает внутреннее состояние объекта ConfigurationElement, включая блокировки и коллекции свойств. (Унаследовано от ConfigurationElement) |
ResetModified() |
Переустанавливает значение метода IsModified() в |
SerializeElement(XmlWriter, Boolean) |
Записывает содержание данного элемента конфигурации в файл конфигурации при реализации в производном классе. (Унаследовано от ConfigurationElement) |
SerializeSection(ConfigurationElement, String, ConfigurationSaveMode) |
Создает XML-строку, содержащую разъединенное представление об объекте ConfigurationSection, как об отдельном разделе, записываемым в файл. (Унаследовано от ConfigurationSection) |
SerializeToXmlElement(XmlWriter, String) |
Записывает внешние теги данного элемента конфигурации в файл конфигурации при реализации в производном классе. (Унаследовано от ConfigurationElement) |
SetPropertyValue(ConfigurationProperty, Object, Boolean) |
Задает для свойства указанное значение. (Унаследовано от ConfigurationElement) |
SetReadOnly() |
Задает свойство IsReadOnly() для объекта ConfigurationElement и всех подчиненных элементов. (Унаследовано от ConfigurationElement) |
ShouldSerializeElementInTargetVersion(ConfigurationElement, String, FrameworkName) |
Указывает, следует ли сериализовать указанный элемент при сериализации иерархии объектов конфигурации для указанной целевой версии .NET Framework. (Унаследовано от ConfigurationSection) |
ShouldSerializePropertyInTargetVersion(ConfigurationProperty, String, FrameworkName, ConfigurationElement) |
Указывает, следует ли сериализовать указанное свойство при сериализации иерархии объектов конфигурации для указанной целевой версии .NET Framework. (Унаследовано от ConfigurationSection) |
ShouldSerializeSectionInTargetVersion(FrameworkName) |
Указывает, следует ли сериализовать текущий ConfigurationSection экземпляр при сериализации иерархии объектов конфигурации для указанной целевой версии .NET Framework. (Унаследовано от ConfigurationSection) |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
Unmerge(ConfigurationElement, ConfigurationElement, ConfigurationSaveMode) |
Изменяет объект ConfigurationElement для удаления всех значений, которые не должны сохраняться. (Унаследовано от ConfigurationElement) |
Применяется к
См. также раздел
- ProtectedConfiguration
- ProtectedConfigurationProvider
- ProtectedConfigurationProviderCollection
- ProtectedProviderSettings
- службы шифрования
- Шифрование сведений о конфигурации с помощью функции защищенной конфигурации
- Пошаговое руководство. Шифрование сведений о конфигурации с помощью защищенной конфигурации