Implemented custom UserDetailsService and custom UserDetails. Added proper password salting using ReflectiveSaltSource.