MachineKeyCompatibilityMode 列舉

定義

指定要使用何種加密方法。

public enum class MachineKeyCompatibilityMode
public enum MachineKeyCompatibilityMode
type MachineKeyCompatibilityMode = 
Public Enum MachineKeyCompatibilityMode
繼承
MachineKeyCompatibilityMode

欄位

Framework20SP1 0

使用在 2.0 Service Pack 2 之前的 .NET Framework 版本中所實作的加密方法。 除了加密密碼儲存在 ASP.NET 成員資格資料庫之外,初始化向量 (IV) 用於所有加密作業。

Framework20SP2 1

使用 .NET Framework 2.0 SP2 (含) 以後版本所提供的更強式的加密方法。 初始化向量 (IV) 用於所有加密作業。

Framework45 2

使用 .NET Framework 4.5 (含) 以後版本所提供的加密方法。 相較於 Framework20SP1Framework20SP2 所使用的加密方法,預設密碼編譯常式所產生的密碼文字稍微小一些,而且對付特定類別的理論上攻擊更有彈性。 它們也會與Windows 8目錄金鑰管理整合,以取得必要的密碼編譯金鑰。 這個選項也可讓您指定自訂的密碼編譯常式,方法是撰寫衍生自 DataProtector 的類別,並指定在 DataProtectorType 屬性中類別名稱。

下列組態需求適用於此選項:

  1. 如果 DataProtectorType 屬性有值,ApplicationName 屬性也必須有值。

  2. Validation屬性必須指定系統定義的驗證演算法 (例如 MD5、 SHA1、 HMACSHA256、 HMACSHA384 或 HMACSHA512) 或自訂的驗證演算法(在衍生自 KeyedHashAlgorithm類別的類別中加以指定)。 值 AES 和 3DES 並不是驗證演算法。

當您指定這個選項時,表單驗證票證一定會進行加密和簽署,無論指定的 Protection屬性值為何。 如果頁面的 EnableViewStateMac 屬性為 true,或 ViewStateEncryptionMode 屬性為 Always,則也都會加密和簽署檢視狀態。

備註

當您設定 CompatibilityMode 屬性時, MachineKeyCompatibilityMode 您會使用 值。

適用於