Skip to content

Commit 5bef39e

Browse files
committed
refactor/OPS-398: 인증/인가 오류 수정
1 parent 90bf3fe commit 5bef39e

File tree

11 files changed

+37
-10
lines changed

11 files changed

+37
-10
lines changed

src/main/java/org/tuna/zoopzoop/backend/domain/auth/controller/ApiV1AuthController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@
1313
import org.tuna.zoopzoop.backend.domain.auth.dto.AuthResultData;
1414
import org.tuna.zoopzoop.backend.domain.auth.entity.AuthResult;
1515
import org.tuna.zoopzoop.backend.domain.auth.entity.RefreshToken;
16-
import org.tuna.zoopzoop.backend.domain.auth.service.RefreshTokenService;
16+
import org.tuna.zoopzoop.backend.domain.auth.service.refresh.RefreshTokenService;
1717
import org.tuna.zoopzoop.backend.domain.member.entity.Member;
1818
import org.tuna.zoopzoop.backend.global.rsData.RsData;
1919
import org.tuna.zoopzoop.backend.global.security.jwt.JwtUtil;

src/main/java/org/tuna/zoopzoop/backend/domain/auth/handler/OAuth2SuccessHandler.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@
1515
import org.springframework.security.web.authentication.SimpleUrlAuthenticationSuccessHandler;
1616
import org.springframework.stereotype.Component;
1717
import org.tuna.zoopzoop.backend.domain.auth.entity.AuthResult;
18-
import org.tuna.zoopzoop.backend.domain.auth.service.RefreshTokenService;
18+
import org.tuna.zoopzoop.backend.domain.auth.service.refresh.RefreshTokenService;
1919
import org.tuna.zoopzoop.backend.domain.member.entity.Member;
2020
import org.tuna.zoopzoop.backend.domain.member.repository.MemberRepository;
2121
import org.tuna.zoopzoop.backend.domain.member.service.MemberService;

src/main/java/org/tuna/zoopzoop/backend/domain/auth/repository/RefreshTokenRepository.java

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,7 @@
55
import org.tuna.zoopzoop.backend.domain.auth.entity.RefreshToken;
66
import org.tuna.zoopzoop.backend.domain.member.entity.Member;
77

8+
import java.time.LocalDateTime;
89
import java.util.List;
910
import java.util.Optional;
1011

@@ -13,4 +14,5 @@ public interface RefreshTokenRepository extends JpaRepository<RefreshToken, Inte
1314
Optional<RefreshToken> findBySessionId(String sessionId);
1415
Optional<RefreshToken> findByMember(Member member);
1516
List<RefreshToken> findAllByMember(Member member);
17+
List<RefreshToken> findAllByExpiredAtBefore(LocalDateTime dateTime);
1618
}

src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/CustomOAuth2UserService.java renamed to src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/oauth2/CustomOAuth2UserService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.tuna.zoopzoop.backend.domain.auth.service;
1+
package org.tuna.zoopzoop.backend.domain.auth.service.oauth2;
22

33
import lombok.RequiredArgsConstructor;
44
import org.springframework.security.oauth2.client.userinfo.DefaultOAuth2UserService;

src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/GoogleUserInfoService.java renamed to src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/oauth2/GoogleUserInfoService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.tuna.zoopzoop.backend.domain.auth.service;
1+
package org.tuna.zoopzoop.backend.domain.auth.service.oauth2;
22

33
import lombok.RequiredArgsConstructor;
44
import org.springframework.stereotype.Service;

src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/KakaoUserInfoService.java renamed to src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/oauth2/KakaoUserInfoService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.tuna.zoopzoop.backend.domain.auth.service;
1+
package org.tuna.zoopzoop.backend.domain.auth.service.oauth2;
22

33
import lombok.RequiredArgsConstructor;
44
import org.springframework.stereotype.Service;

src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/OAuth2UserInfoService.java renamed to src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/oauth2/OAuth2UserInfoService.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.tuna.zoopzoop.backend.domain.auth.service;
1+
package org.tuna.zoopzoop.backend.domain.auth.service.oauth2;
22

33
import org.tuna.zoopzoop.backend.domain.member.entity.Member;
44

Lines changed: 24 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,24 @@
1+
package org.tuna.zoopzoop.backend.domain.auth.service.refresh;
2+
3+
import lombok.RequiredArgsConstructor;
4+
import org.springframework.scheduling.annotation.Scheduled;
5+
import org.springframework.stereotype.Service;
6+
import org.tuna.zoopzoop.backend.domain.auth.entity.RefreshToken;
7+
import org.tuna.zoopzoop.backend.domain.auth.repository.RefreshTokenRepository;
8+
9+
import java.time.LocalDateTime;
10+
import java.util.List;
11+
12+
@Service
13+
@RequiredArgsConstructor
14+
public class RefreshTokenCleanupService {
15+
private final RefreshTokenRepository refreshTokenRepository;
16+
17+
@Scheduled(fixedRate = 60 * 60 * 1000) // 1시간마다 실행
18+
public void deleteExpiredTokens() {
19+
List<RefreshToken> expiredTokens = refreshTokenRepository.findAllByExpiredAtBefore(LocalDateTime.now());
20+
if (!expiredTokens.isEmpty()) {
21+
refreshTokenRepository.deleteAll(expiredTokens);
22+
}
23+
}
24+
}

src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/RefreshTokenService.java renamed to src/main/java/org/tuna/zoopzoop/backend/domain/auth/service/refresh/RefreshTokenService.java

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
package org.tuna.zoopzoop.backend.domain.auth.service;
1+
package org.tuna.zoopzoop.backend.domain.auth.service.refresh;
22

33
import lombok.RequiredArgsConstructor;
44
import org.springframework.security.authentication.BadCredentialsException;
@@ -49,8 +49,9 @@ public RefreshToken getBySessionId(String sessionId) {
4949
}
5050

5151
public void deleteBySessionId(String sessionId) {
52-
refreshTokenRepository.findBySessionId(sessionId)
52+
RefreshToken token = refreshTokenRepository.findBySessionId(sessionId)
5353
.orElseThrow(() -> new BadCredentialsException("잘못된 요청입니다."));
54+
refreshTokenRepository.delete(token);
5455
}
5556

5657
public void deleteByMember(Member member) {

src/main/java/org/tuna/zoopzoop/backend/domain/member/controller/ApiV1MemberController.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -9,7 +9,7 @@
99
import org.springframework.security.core.annotation.AuthenticationPrincipal;
1010
import org.springframework.web.bind.annotation.*;
1111
import org.springframework.web.multipart.MultipartFile;
12-
import org.tuna.zoopzoop.backend.domain.auth.service.RefreshTokenService;
12+
import org.tuna.zoopzoop.backend.domain.auth.service.refresh.RefreshTokenService;
1313
import org.tuna.zoopzoop.backend.domain.member.dto.req.ReqBodyForEditMember;
1414
import org.tuna.zoopzoop.backend.domain.member.dto.req.ReqBodyForEditMemberName;
1515
import org.tuna.zoopzoop.backend.domain.member.dto.res.*;

0 commit comments

Comments
 (0)