支持注入userServiceDao的bean来根据spring security身份认证的username获取用户身份认证的信息
This commit is contained in:
+12
-3
@@ -1,5 +1,6 @@
|
||||
package com.micro.fast.security.browser.service;
|
||||
package com.micro.fast.security.browser.config.component;
|
||||
|
||||
import com.micro.fast.security.browser.service.UserService;
|
||||
import org.slf4j.Logger;
|
||||
import org.slf4j.LoggerFactory;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
@@ -11,6 +12,8 @@ import org.springframework.security.core.userdetails.UsernameNotFoundException;
|
||||
import org.springframework.security.crypto.password.PasswordEncoder;
|
||||
import org.springframework.stereotype.Component;
|
||||
|
||||
import javax.annotation.Resource;
|
||||
|
||||
/**
|
||||
* 自定义根据用户名获取密码方法替换spring security的默认逻辑
|
||||
*/
|
||||
@@ -22,6 +25,9 @@ public class MsUserDetialsService implements UserDetailsService {
|
||||
@Autowired
|
||||
private PasswordEncoder passwordEncoder;
|
||||
|
||||
@Resource(name = "userServiceImpl")
|
||||
private UserService userService;
|
||||
|
||||
/**
|
||||
* 处理用户的密码获取信息
|
||||
* @param username UserDetails中包含用户的详细信息,在user中返回信息来进行详细的设定比如用户是否被锁定
|
||||
@@ -31,8 +37,11 @@ public class MsUserDetialsService implements UserDetailsService {
|
||||
@Override
|
||||
public UserDetails loadUserByUsername(String username) throws UsernameNotFoundException {
|
||||
log.info("根据username:{}获取密码",username);
|
||||
//从数据库中去查找用户的密码 1112 是从数据库中查询出来的用户的密
|
||||
return new User(username,passwordEncoder.encode("1112"), AuthorityUtils.commaSeparatedStringToAuthorityList("admin"));
|
||||
//从数据库中根据用户名获取用户的详细身份认证信息
|
||||
/*User userByUsername = userService.getUserByUsername(username);
|
||||
return userByUsername;*/
|
||||
//从数据库中去查找用户的密码 admin 是从数据库中查询出来的用户的密
|
||||
return new User(username,passwordEncoder.encode("admin"), AuthorityUtils.commaSeparatedStringToAuthorityList("admin"));
|
||||
}
|
||||
|
||||
|
||||
+11
@@ -0,0 +1,11 @@
|
||||
package com.micro.fast.security.browser.service;
|
||||
|
||||
import org.springframework.security.core.userdetails.User;
|
||||
import org.springframework.stereotype.Service;
|
||||
|
||||
/**
|
||||
* 用于根据spring security传入的username获取用户的详细信息
|
||||
*/
|
||||
public interface UserService {
|
||||
User getUserByUsername(String username);
|
||||
}
|
||||
Reference in New Issue
Block a user