UserDto.java 1.7 KB
package com.daeucna.board.security.domain;

import java.util.ArrayList;
import java.util.Collection;
import java.util.List;

import org.springframework.security.core.Authentication;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.authority.SimpleGrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;

import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

@ToString
public class UserDto implements UserDetails {

  String ROLE_PREFIX = "ROLE_";

  private String id;
  private String password;
  private String role;
  
  @Getter @Setter
  private String boardName;
  
  @Override
  public Collection<? extends GrantedAuthority> getAuthorities() {
    List<GrantedAuthority> authorities = new ArrayList<GrantedAuthority>();
        authorities.add(new SimpleGrantedAuthority(ROLE_PREFIX + role));
        return authorities;
  }

  @Override
  public String getPassword() {
    return password;
  }

  @Override
  public String getUsername() {
    return id;
  }

  // 계정 만료 여부(true: 만료되지 않음, false: 만료됨)
  @Override
  public boolean isAccountNonExpired() {
    return false;
  }

  // 계정 잠금 여부(true: 계정잠금아님, false: 계정잠금상태)
  @Override
  public boolean isAccountNonLocked() {
    return false;
  }

  // 계정 패스워드 만료 여부(true: 만료되지 않음, false: 만료됨)
  @Override
  public boolean isCredentialsNonExpired() {
    return false;
  }

  // 계정 사용가능 여부(true: 사용가능, false: 사용불가능)
  @Override
  public boolean isEnabled() {
    return false;
  }

}