[NHibernate] MD5 hash op password veld

Pagina: 1
Acties:

Onderwerpen


Acties:
  • 0 Henk 'm!

  • Hobbles
  • Registratie: Augustus 2004
  • Laatst online: 10-09 08:00
Ik ben sinds kort NHibernate aan het testen in combinatie met MySQL. Op zich lukt alles wel, alleen krijg ik het niet voor elkaar om passwords die in plain tekst aan de set property van de User worden meegegeven om te vormen naar een MD5 hash.

Op internet heb ik tot nu toe nergens informatie hierover gevonden, zelfs niet over gewone hashing. Buiten dat de ILifeCycle interface in de buurt komt maar niet helemaal is wat ik nodig heb.

Code die ik nu in mijn domain class heb:
C#:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    public class User
    {
        public enum UserStatus
        {
            NotRegistered = 0,
            ConfirmedEmail = 1
        }

        public virtual int Id { get; set; }
        public virtual string Nickname { get; set; }
        public virtual string Password { get; set; } //MD5 hashing in setter of nhibernate mapping file?
        public virtual string Email { get; set; }
        public virtual UserStatus Status { get; set; }
        public virtual DateTime CreatedAt { get; set; }
    }


Wie kan me op weg helpen?

Everything is possible if you really want it.


Acties:
  • 0 Henk 'm!

  • whoami
  • Registratie: December 2000
  • Laatst online: 11:22
ILifecycle zou je niet meer moeten gebruiken; die is afaik deprecated.

Zorg er gewoon voor dat je in de setter van de Password property de value omzet naar een MD5 hash.
En vergeet dan ook niet in je mapping file te specifieren dat NHibernate niet de property 'Password' moet accessen, maar direct het achterliggende veld.
Zo bv:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
public class User
{
     private string _password;

     public string Password
     {
           get ...
           set
           {
                  _password = ConvertToMD5(value);
           }
     }
}

En in je User.hbm.xml:
code:
1
2
3
<class name="User" ... >
     <property name="Password" access="field.camelcase-underscore"/>
</class>

https://fgheysels.github.io/


Acties:
  • 0 Henk 'm!

  • Hobbles
  • Registratie: Augustus 2004
  • Laatst online: 10-09 08:00
Daar ga ik eens mee aan de slag!

Dank je

Everything is possible if you really want it.