Hi Ben,
thanks for your kind help.
>> MD5 clientside >>
Would that defeat the whole purpose of encoding in the first place?
Of course, you are absolutely right about this. Makes nullifies encoding in the database. Sometimes I don't think before i write 
Ok, so you suggest using the remember-me support, basically? But do I need to create the extra provider? In my EnrollmentController the User object (implements UserDetails) is already loaded. So what I need is that I can put my principal on the context, marked as authenticated and that's it.
Can't I just put a RememberMeToken on the context and set-up the remember me services like described in the docs?:
Code:
private void login(User user, HttpServletRequest request) {
RememberMeAuthenticationToken auth = new RememberMeAuthenticationToken("springRocks", user, user.getAuthorities());
auth.setAuthenticated(true);
Context c = ContextHolder.getContext();
if (c instanceof SecureContext) ((SecureContext)c).setAuthentication(auth);
}
Code:
<bean id="rememberMeProcessingFilter" class="net.sf.acegisecurity.ui.rememberme.RememberMeProcessingFilter">
<property name="rememberMeServices"><ref local="rememberMeServices"/></property>
</bean>
<bean id="rememberMeServices" class="net.sf.acegisecurity.ui.rememberme.TokenBasedRememberMeServices">
<property name="authenticationDao"><ref local="myDao"/></property>
<property name="key"><value>springRocks</value></property>
</bean>
<bean id="rememberMeAuthenticationProvider" class="net.sf.acegisecurity.providers.rememberme.RememberMeAuthenticationProvider">
<property name="key"><value>springRocks</value></property>
</bean>
I'm suprised that nobody had that problem before. This auto-sign in after password-change (or verified enrollment( adds much to user-friendlyness of a site.
-andi