-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathCustomUserDetails.java
66 lines (51 loc) · 1.34 KB
/
CustomUserDetails.java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
package team05.integrated_feed_backend.module.auth.security;
import java.util.Collection;
import java.util.Collections;
import org.springframework.security.core.GrantedAuthority;
import org.springframework.security.core.userdetails.UserDetails;
import lombok.Getter;
import team05.integrated_feed_backend.module.member.entity.Member;
@Getter
public class CustomUserDetails implements UserDetails {
private final Member member;
public CustomUserDetails(Member member) {
this.member = member;
}
@Override
public String getUsername() {
return member.getAccount();
}
@Override
public String getPassword() {
return member.getPassword();
}
// 계정 만료 여부 확인 로직
@Override
public boolean isAccountNonExpired() {
return true;
}
// 계정 잠김 여부 확인 로직
@Override
public boolean isAccountNonLocked() {
return true;
}
// 자격 증명(비밀번호) 만료 여부 확인 로직
@Override
public boolean isCredentialsNonExpired() {
return true;
}
@Override
public boolean isEnabled() {
return "verified".equals(member.getStatus()); // 인증된 상태만 활성화
}
@Override
public Collection<? extends GrantedAuthority> getAuthorities() {
return Collections.emptyList();
}
public Long getMemberId() {
return member.getMemberId();
}
public String getEmail() {
return member.getEmail();
}
}