12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485 |
- package com.lstznkj.groundstation.security;
- import com.lstznkj.groundstation.model.Authority;
- import com.lstznkj.groundstation.model.SysRole;
- import com.lstznkj.groundstation.model.User;
- import com.fasterxml.jackson.annotation.JsonIgnore;
- import org.slf4j.Logger;
- import org.slf4j.LoggerFactory;
- import org.springframework.security.core.GrantedAuthority;
- import org.springframework.security.core.userdetails.UserDetails;
- import java.util.ArrayList;
- import java.util.Collection;
- import java.util.List;
- public class UserDetailsImpl implements UserDetails {
- private Logger logger= LoggerFactory.getLogger( UserDetailsImpl.class);
- private User user;
- private List<String> roles;
- public UserDetailsImpl(){
- }
- public UserDetailsImpl(User user)
- {
- this.user=user;
- }
- @JsonIgnore
- @Override
- public Collection<? extends GrantedAuthority> getAuthorities() {
- List<Authority> authorityList=new ArrayList<>();
- // logger.info("get authorities: roles size is "+user.getSysRoles().size());
- for(SysRole role : user.getSysRoles())
- {
- logger.info(role.getName()+ "'s authorities size is "+role.getAuthorities().size());
- for(Authority authority:role.getAuthorities())
- {
- authorityList.add(authority);
- }
- // authorityList.add(new SimpleGrantedAuthority((role.getName())));
- }
- return authorityList;
- }
- public List<String> getRoles() {
- return user.getRoles();
- }
- @Override
- @JsonIgnore
- public String getPassword() {
- return user.getPassword();
- }
- @Override
- public String getUsername() {
- return user.getUsername();
- }
- @Override
- public boolean isAccountNonExpired() {
- return true;
- }
- @Override
- public boolean isAccountNonLocked() {
- return !user.isLocked();
- }
- @Override
- public boolean isCredentialsNonExpired() {
- return true;
- }
- @Override
- public boolean isEnabled() {
- return true;
- }
- }
|