MembershipPasswordFormat 枚举  
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
描述用于存储成员身份用户密码的加密格式。
public enum class MembershipPasswordFormat
	public enum MembershipPasswordFormat
	type MembershipPasswordFormat = 
	Public Enum MembershipPasswordFormat
		- 继承
 
字段
| 名称 | 值 | 说明 | 
|---|---|---|
| Clear | 0 | 不安全,请勿使用。 密码未加密。  | 
			
| Encrypted | 2 | 不安全,请勿使用。 使用 machineKey 元素配置确定的加密设置加密密码。  | 
			
| Hashed | 1 | 使用 SHA1 哈希算法对密码进行单向加密。 可以使用  由于与 SHA1 冲突,Microsoft 建议使用 SHA256。  | 
			
示例
以下示例演示 ASP.NET 应用程序的 Web.config 文件的 节中的 system.webmachineKey Element (ASP.NET Settings Schema ) 元素。 它指定应用程序的 SqlMembershipProvider 实例,并将其密码格式设置为 Hashed。
此示例使用 SHA1。 由于与 SHA1 冲突,Microsoft 建议使用 SHA256。
<membership defaultProvider="SqlProvider"   
  userIsOnlineTimeWindow="20" hashAlgorithmType="SHA1">  
  <providers>  
    <add name="SqlProvider"  
      type="System.Web.Security.SqlMembershipProvider"  
      connectionStringName="SqlServices"  
      enablePasswordRetrieval="false"  
      enablePasswordReset="true"  
      requiresQuestionAndAnswer="true"  
      passwordFormat="Hashed"  
      applicationName="MyApplication" />  
  </providers>  
</membership>  
	注解
类 SqlMembershipProvider 支持不同的密码存储格式,但应仅使用 Hashed; Clear 和 Encrypted 不安全。   清除密码不安全,不应使用。 它们以纯文本形式存储。 加密的密码不被视为安全密码,因为泄露数据库内容也会公开加密密钥。 这意味着加密的密码可能会被解密和公开。 密码在存储时加密,可以解密以用于密码比较或密码检索。  哈希密码存储在数据库中时,使用单向加盐哈希进行加密。 验证密码时,它将与 salt 值组合在一起,然后进行哈希处理。 结果与数据库中的值进行比较,以便进行验证。 无法检索哈希密码。
注意
如果不熟悉 ASP.NET 的成员资格功能,请参阅 成员资格简介 ,然后再继续。 有关与成员身份相关的其他主题的列表,请参阅 使用成员身份管理用户。