springsecurity

SpringBoot

Spring Author Auditing 오류

Async Annotation을 사용하여 여러 multipartfile을 s3에 업로드하는 기능을 포함하고 있는 Company Entity 생성 함수를 비동기로 실행하도록 하였습니다. @Async override fun companySignup(req: CompanySignupRequest, emailCheckCode: String, companyIntroduction: CompanyIntroductionRequest) { if (checkEmail(req.companyContact.email, emailCheckCode)) { ... } 그러나 test하던 중 API 자체는 200이 떴으나, 입력 값이 제대로 들어가지 않음을 확인할 수 있었습니다. (정확히 서술하자면, Company는 User를 상속받..

SpringBoot

Spring Async 사용 시 Security Context 전파 오류

문제 상황 Async 메서드를 통한 파일 처리(S3 upload)에서 SecurtyContext.getCredentials 작동하지 않음. 원인 @Async 선언으로 비동기 작업을 수행하는 메서드는 쓰레드가 변경되기에 threadHolder에 저장한 값을 조회하여 사용하는 SecurityContext를 활용할 수 없어 이러한 문제가 발생했습니다. 해결 비동기 함수에 진입 전에 조회하여 파라미터로 전달함으로써 사용하도록 수정했습니다.

SpringBoot

UserDetailsService를 통해 받아온 UserDetails를 활용한 LazyLoading 구현 (OpenEntityManagerInView)

문제 상황 @GetMapping("/test") fun getTest( @AuthenticationPrincipal user: User? ): StudentInfoResponse { return (user as Student).toStudentInfoResponse() } @AuthenticationPrincipal 어노테이션을 이용하여, 로그인시 userDetailsService에서 가져온 userDetails 정보를 getMyInfo 함수에서 사용하고자 했습니다. @Where(clause = "user_is_delete = false") @SQLDelete(sql = "UPDATE `user` SET user_is_delete = true where id = ?") @Table(name = "user..

SpringBoot

Spring Async 사용시 SecurityContext Thread 전파 오류

Async Annotation을 사용하여 여러 multipartfile을 s3에 처리하는 기능을 포함하고 있는 Company Entity 생성 함수를 비동기로 실행하도록 처리하였습니다. @Async override fun companySignup(req: CompanySignupRequest, emailCheckCode: String, companyIntroduction: CompanyIntroductionRequest) { if (checkEmail(req.companyContact.email, emailCheckCode)) { ... } 그러나 test하던 중 API 자체는 200이 떴으나, 입력 값이 제대로 들어가지 않음을 확인할 수 있었습니다. (Company는 User를 상속받고 있었으며, In..

xlwdn98767
'springsecurity' 태그의 글 목록