2012-04-08 13 views
2

Ich habe ein Problem mit Passwortfeld für Benutzerklasse zu aktualisieren, ich SpringSecurity Plugin in Grails bin mit, sah, dass es so getan werden soll, aber nicht funktioniert ...Aktualisierung des Passwortfelds des Federsicherheits-Benutzers?

user.password = springSecurityService.encodePassword(
       params.password, userInstance.username) 

auch versucht

user.password = springSecurityService.encodePassword(
       params.password) 

irgendwelche ideen?

Antwort

2

Wenn Sie eine neuere Version des Plugins verwenden (1.2 tun. 7 oder höher), dann möchten Sie das Passwort nicht explizit codieren, wie Sie es tun, da der generierte Code in der User-Klasse dies für Sie erledigt. Rufen Sie nur springSecurityService.encodePassword an, wenn Ihre Domain-Klasse dies nicht tut, sonst werden Sie doppelt codieren und nicht einloggen können.

Wenn Sie das Kennwort selbst verschlüsseln, verwendet die erste Version, die Sie angezeigt haben, den Benutzernamen als Salz, und die zweite hat kein Salz. Passwörter zu salzen ist eine gute Idee, aber nicht erforderlich - Sie können darüber in der Dokumentation, Abschnitt 12.2 - http://grails-plugins.github.com/grails-spring-security-core/docs/manual/

+0

das war das Problem, ich war mit 1.2.7 und Benutzer war schon tun, dass Codierung. – blackuprise

Verwandte Themen