Compare commits
1 Commits
feature/mo
...
feature/re
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
5fa849b4c9 |
@@ -28,8 +28,9 @@ public class RefreshToken {
|
||||
this.token = token;
|
||||
}
|
||||
|
||||
public void changeToken(String token) {
|
||||
public RefreshToken changeToken(String token) {
|
||||
this.token = token;
|
||||
return this;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -27,6 +27,7 @@ public class JwtProvider {
|
||||
|
||||
private static final String AUTHORITIES_KEY = "auth";
|
||||
private static final String AUTHORITIES_DELIMITER = ",";
|
||||
private static final String ROLE = "ROLE_";
|
||||
|
||||
private final Key key;
|
||||
private final String prefix;
|
||||
@@ -89,7 +90,7 @@ public class JwtProvider {
|
||||
}
|
||||
|
||||
private String makeRoleName(String role) {
|
||||
return "ROLE_" + role.toUpperCase();
|
||||
return role.contains(ROLE) ? role.toUpperCase() : ROLE + role.toUpperCase();
|
||||
}
|
||||
|
||||
public Authentication getAuthentication(String token) {
|
||||
|
||||
@@ -5,8 +5,8 @@ import com.ticketing.server.global.redis.RefreshRedisRepository;
|
||||
import com.ticketing.server.global.redis.RefreshToken;
|
||||
import com.ticketing.server.global.security.jwt.JwtProperties;
|
||||
import com.ticketing.server.global.security.jwt.JwtProvider;
|
||||
import com.ticketing.server.user.service.dto.TokenDTO;
|
||||
import com.ticketing.server.user.service.dto.DeleteRefreshTokenDTO;
|
||||
import com.ticketing.server.user.service.dto.TokenDTO;
|
||||
import com.ticketing.server.user.service.interfaces.AuthenticationService;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import org.springframework.security.authentication.UsernamePasswordAuthenticationToken;
|
||||
@@ -40,8 +40,14 @@ public class AuthenticationServiceImpl implements AuthenticationService {
|
||||
// refresh 토큰이 있으면 수정, 없으면 생성
|
||||
refreshRedisRepository.findByEmail(email)
|
||||
.ifPresentOrElse(
|
||||
tokenEntity -> tokenEntity.changeToken(tokenDto.getRefreshToken()),
|
||||
() -> refreshRedisRepository.save(new RefreshToken(email, tokenDto.getRefreshToken()))
|
||||
tokenEntity -> refreshRedisRepository.save(
|
||||
tokenEntity.changeToken(
|
||||
tokenDto.getRefreshToken()
|
||||
)
|
||||
),
|
||||
() -> refreshRedisRepository.save(
|
||||
new RefreshToken(email, tokenDto.getRefreshToken())
|
||||
)
|
||||
);
|
||||
|
||||
return tokenDto;
|
||||
|
||||
Reference in New Issue
Block a user