본문 바로가기
728x90

전체 글389

Header 에 Authorization 이 안 뜨는 현상...인데...하.... jwt 토큰 개발 중, 나는 정상적으로 로그인을 했으나 헤더에 Authorization 이 뜨지 않는 현상이 발생했다 그리고 권한이 url로 가면 403 에러(권한 없음)가 뜬다.... @Override protected void successfulAuthentication(HttpServletRequest request, HttpServletResponse response, FilterChain chain, Authentication authResult) throws IOException, ServletException { System.out.println("successfulAuthentication 실행 됐으니 로그인 인증이 완료됐네요"); // authResult 객체로 jwt 토큰을 만들자 ! .. 2023. 1. 11.
Spring Security ) SNS 로그인 구현(내가 보려고 정리...) 내가 보려고 정리한 것 일단 시큐리티를 쓰려면 WebSecurityConfigurerAdapter 를 구현한 컨피그레이션 클래스를 만드러야한다~ 그리고 configure 오버라이딩 해준다 (configure 메소드에서 시큐리티 설정을 함) @Configuration @EnableWebSecurity // 스프링 시큐리티 필터가 스프링 필터 체인에 등록 @RequiredArgsConstructor /** * secured * preAuthorize(postAuthorize) * 메소드에 직접 권한 걸기 true */ @EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true) public class SecurityConfig exten.. 2023. 1. 9.
카카오 로그인 class java.lang.Long cannot be cast to class java.lang.String (java.lang.Long and java.lang.String are in module java.base of loader 'bootstrap') 카카오 로그인 구현 중 provideId 를 가져오려고 하니 class java.lang.Long cannot be cast to class java.lang.String (java.lang.Long and java.lang.String are in module java.base of loader 'bootstrap') 해당 오류가 발생했다 ㅡ.ㅡ 카카오 PK(provide Id) 가 Long 타입이어서 그렇다 Long 타입은 String으로 바로 타입 캐스팅이 되지 않는 모양이다 @Override public String getProviderId() { return String.valueOf(attributes.get("id")); } toString() 대신 String.valueOf() 를 써주니까.. 2023. 1. 9.
The dependencies of some of the beans in the application context form a cycle 스프링 시큐리티 강좌를 보는데 순환 참조 에러가 발생했다.... (무한으로 사이클 돌려서 서로 참조) SecurityConfig.class @Configuration @EnableWebSecurity // 스프링 시큐리티 필터가 스프링 필터 체인에 등록 @RequiredArgsConstructor /** * secured * preAuthorize(postAuthorize) * 메소드에 직접 권한 걸기 true */ @EnableGlobalMethodSecurity(securedEnabled = true, prePostEnabled = true) public class SecurityConfig extends WebSecurityConfigurerAdapter { private final Principa.. 2023. 1. 9.
Cannot invoke "org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder.encode(java.lang.CharSequence)" because "this.passwordEncoder" is null 인강을 듣고 따라해보고있는데 Cannot invoke "org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder.encode(java.lang.CharSequence)" because "this.passwordEncoder" is null 해당 오류가 발생했다 이리저리 만져보니 bean이 제대로 주입 안 된 모양이었다 (Repository도 불러오지 못하더라....빈 등록이 안 됐다고 ㅠㅠ) 1.메인애플리케이션에 제대로 import 되어있는지 확인 2.생성자 주입 3.컨트롤러에 @EnableAutoConfiguration . . . 그러다가 @EnableJpaRepository("패키지경로") 를 명시해줬는데 repository 패키지 경로에 빨.. 2023. 1. 8.
스프링 시큐리티 아주 귀여워~^.^ 스프링 시큐리티로 JWT토큰을 사용해서 사용자 인증을 받고 싶었는데 어디서부터 시작해야할지 몰라서 블로그에 있던 한 분의 포스트를 클론코딩하면서 이걸 왜 이렇게 썼는지, 왜 쓰는지 하나하나 찾아가고 있었다... 근데 커스텀 핸들러를 만드셨는데 안 써있어서 당황하기도 하고(import가 안돼 ㅠㅠ) 똑같이 쳤는데도 내 코드는 형변환을 해야만 빨간줄이 안뜨고... 모 이런 경우가 많아서 어떡해야하나 싶었는데... 구글 서치하다가 관련 무료 인강을 찾아서 정말 다행!!!!ㅠㅠ 기다려라 스프링 시큐리티... 정복하고 말리라... 2023. 1. 7.
728x90