security框架功能
This commit is contained in:
@@ -0,0 +1,57 @@
|
||||
/*
|
||||
* To change this license header, choose License Headers in Project Properties.
|
||||
* To change this template file, choose Tools | Templates
|
||||
* and open the template in the editor.
|
||||
*/
|
||||
package com.ifish.config;
|
||||
|
||||
import com.ifish.bean.Tbl_Security_User;
|
||||
import com.ifish.helper.UserHelper;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import org.springframework.security.core.GrantedAuthority;
|
||||
import org.springframework.security.core.authority.SimpleGrantedAuthority;
|
||||
import org.springframework.security.core.userdetails.UserDetails;
|
||||
import org.springframework.security.core.userdetails.UserDetailsService;
|
||||
import org.springframework.security.core.userdetails.UsernameNotFoundException;
|
||||
|
||||
/**
|
||||
*
|
||||
* @author Administrator
|
||||
*/
|
||||
public class MyUserDetailService implements UserDetailsService {
|
||||
|
||||
private final UserHelper userHelper;
|
||||
|
||||
public MyUserDetailService(UserHelper u) {
|
||||
this.userHelper = u;
|
||||
}
|
||||
|
||||
@Override
|
||||
public UserDetails loadUserByUsername(String userName) throws UsernameNotFoundException {
|
||||
|
||||
Tbl_Security_User user = userHelper.getTbl_Security_User(userName);
|
||||
|
||||
if (user == null) {
|
||||
throw new UsernameNotFoundException("用户不存在!");
|
||||
}
|
||||
|
||||
List<GrantedAuthority> authorities = new ArrayList<GrantedAuthority>();
|
||||
authorities.add(new SimpleGrantedAuthority("ROLE_" + user.getRole()));
|
||||
boolean enabled = true;
|
||||
boolean accountNonExpired = true;
|
||||
boolean credentialsNonExpired = true;
|
||||
boolean accountNonLocked = true;
|
||||
|
||||
UserInfo userdetails = new UserInfo();
|
||||
userdetails.setId(user.getId());
|
||||
userdetails.setUsername(user.getUsername());
|
||||
userdetails.setEmail(user.getEmail());
|
||||
userdetails.setRole(user.getRole());
|
||||
userdetails.setRoleName(user.getRolename());
|
||||
userdetails.setCode(user.getCode());
|
||||
return userdetails;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user