You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
31 lines
1.4 KiB
31 lines
1.4 KiB
package cc.bnblogs.springsecurity.Service; |
|
|
|
import cc.bnblogs.springsecurity.pojo.MyUser; |
|
import org.springframework.beans.factory.annotation.Autowired; |
|
import org.springframework.context.annotation.Configuration; |
|
import org.springframework.security.core.authority.AuthorityUtils; |
|
import org.springframework.security.core.userdetails.User; |
|
import org.springframework.security.core.userdetails.UserDetails; |
|
import org.springframework.security.core.userdetails.UserDetailsService; |
|
import org.springframework.security.core.userdetails.UsernameNotFoundException; |
|
import org.springframework.security.crypto.password.PasswordEncoder; |
|
|
|
@Configuration |
|
public class UserDetailService implements UserDetailsService { |
|
@Autowired |
|
private PasswordEncoder passwordEncoder; |
|
@Override |
|
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException { |
|
// 模拟一个用户,不使用数据库 |
|
MyUser user = new MyUser(); |
|
user.setUserName(username); |
|
user.setPassword(this.passwordEncoder.encode("123456")); |
|
// 输出加密后的密码 |
|
System.out.println(user.getPassword()); |
|
|
|
|
|
return new User(username, user.getPassword(), user.isEnabled(), |
|
user.isAccountNonExpired(), user.isCredentialsNonExpired(), |
|
user.isAccountNonLocked(), AuthorityUtils.commaSeparatedStringToAuthorityList("admin")); |
|
} |
|
} |