共用方式為


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)

備註

enableViewStateMACtrue 建立訊息驗證碼 (MAC) 時,會ValidationKey使用 屬性,讓 ASP.NET 判斷檢視狀態是否已遭到竄改。 屬性 ValidationKey 也可用來產生跨進程的應用程式特定會話標識碼,以確保會話狀態變數在應用程式之間隔離。

使用 [自動產生] 選項可指定 ASP.NET 產生隨機金鑰,並將它儲存在本機安全性授權單位中。 [自動產生] 選項是預設值的一部分。

如果您將 「IsolateApps」 修飾詞新增至 「AutoGenerate」 ValidationKey 值,ASP.NET 使用每個應用程式的 AppDomainAppVirtualPath產生唯一的加密密鑰。 這是預設值。

如果您將 「IsolateByAppId」 修飾詞新增至 「AutoGenerate」 ValidationKey 值,ASP.NET 使用每個應用程式的 AppDomainAppId產生唯一的加密密鑰。 如果兩個不同的應用程式共用虛擬路徑 (可能是因為這些應用程式在不同的埠上執行) ,則此旗標可用來進一步區分它們彼此。 只有 ASP.NET 4.5 才能瞭解 “IsolateByAppId” 旗標,但不論設定為何 MachineKeySection.CompatibilityMode ,都可以使用它。

如果您需要在 Web 伺服器陣列) (網路支援設定,請手動設定 ValidationKey 屬性以確保一致的設定。 如需如何手動產生屬性值 DecryptionKey 的資訊,請參閱 How To: Configure MachineKey in ASP.NET 2.0

這個屬性通常會以宣告方式在 Web.config 檔案之machineKey元素的屬性中validationKey設定。

適用於