1

我正在尝试在我的 asp.net mvc 3 上创建一个用户类

但我怀疑使用流利方式时如何加密密码

public class User
{
    public virtual int Id { get; set; }

    [Required]
    public virtual string Username { get; set; }

    [Required]
    [DataType(DataType.Password)]
    public virtual string Password { get; set; }

    public virtual IList<UserGame> UserGames { get; set; }
}

public class UserMap : ClassMap<User>
{
    public UserMap()
    {
        Id(x => x.Id).GeneratedBy.HiLo("1000");
        Map(x => x.Username).Unique();
        Map(x => x.Password);
        HasMany(x => x.UserGames).Cascade.All();
    }
}
4

1 回答 1

2

正如评论所建议的那样,对它们进行散列并使用盐,但要回答您的问题,请查看http://nhforge.org/blogs/nhibernate/archive/2009/02/22/encrypting-password-or-other-strings- in-nhibernate.aspx 然后在您的流利映射中,例如:

x.Map(x => x.Password).CustomType<EncryptedString>()
于 2012-05-22T13:04:06.517 回答