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


MachineKeySection.ValidationKey Свойство

Определение

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

public:
 property System::String ^ ValidationKey { System::String ^ get(); void set(System::String ^ value); };
[System.ComponentModel.TypeConverter(typeof(System.Configuration.WhiteSpaceTrimStringConverter))]
[System.Configuration.ConfigurationProperty("validationKey", DefaultValue="AutoGenerate,IsolateApps")]
[System.Configuration.StringValidator(MinLength=1)]
public string ValidationKey { get; set; }
[<System.ComponentModel.TypeConverter(typeof(System.Configuration.WhiteSpaceTrimStringConverter))>]
[<System.Configuration.ConfigurationProperty("validationKey", DefaultValue="AutoGenerate,IsolateApps")>]
[<System.Configuration.StringValidator(MinLength=1)>]
member this.ValidationKey : string with get, set
Public Property ValidationKey As String

Значение свойства

Значение ключа или значение, указывающее на то, как создается ключ. Значение по умолчанию — AutoGenerate,IsolateApps.

Атрибуты

Примеры

В следующем примере показано, как задать ValidationKey свойство с помощью кода. Этот пример является частью более крупного примера, предоставленного MachineKeySection для класса .

// Display ValidationKey property.
Console.WriteLine("ValidationKey: {0}",
  configSection.ValidationKey);
' Display ValidationKey property.
Console.WriteLine("ValidationKey: {0}", _
 configSection.ValidationKey)

Комментарии

Свойство ValidationKey используется, когда enableViewStateMAC используется true для создания кода проверки подлинности сообщения (MAC), чтобы ASP.NET определить, было ли изменено состояние представления. Свойство ValidationKey также используется для создания внепроцессных идентификаторов сеансов для конкретных приложений, чтобы обеспечить изоляцию переменных состояния сеанса между приложениями.

Используйте параметр AutoGenerate, чтобы указать, что ASP.NET создает случайный ключ и сохраняет его в локальном центре безопасности. Параметр AutoGenerate является частью значения по умолчанию.

Если добавить модификатор IsolateApps к значению AutoGenerate ValidationKey , ASP.NET создает уникальный зашифрованный ключ для каждого приложения с помощью каждого приложения AppDomainAppVirtualPath. Это параметр по умолчанию.

Если добавить модификатор IsolateByAppId к значению AutoGenerate ValidationKey , ASP.NET создает уникальный зашифрованный ключ для каждого приложения с помощью каждого приложения AppDomainAppId. Если два разных приложения совместно используют виртуальный путь (возможно, потому, что эти приложения выполняются на разных портах), этот флаг можно использовать для дальнейшего отличия друг от друга. Флаг IsolateByAppId понимается только в ASP.NET 4.5, но его можно использовать независимо от MachineKeySection.CompatibilityMode параметра.

Если требуется поддержка конфигурации в сети веб-серверов (веб-фермы), задайте ValidationKey свойство вручную, чтобы обеспечить согласованность конфигурации. Сведения о том, как вручную создать значения для атрибута DecryptionKey , см. в разделе How To: Configure MachineKey in ASP.NET 2.0.

Обычно это свойство задается декларативно в атрибуте validationKey элемента machineKey файла Web.config.

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