묻고 답해요
161만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
Map 방식 인가 구현 이후 로그인 에러
시큐리티 6.1.6 사용중입니다지금까지 클론 코딩하면서 진행하고 있는데,성공 처리 핸들러에서 SavedRequest 에 /error 경로로 이동하도록 나오던데.. 어떤 부분을 봐야할지 감이 안잡힙니다 ㅜㅜ Map 인가 정보도 동일하게 사용했습니다
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
AuthenticationProvider 사용방법 - 빈으로 생성 질문 있습니다.
17~18분 사이에 설명에서 builder와 configuration 이 같은 ProviderManager를 가져온다고 하시는데요.디버깅된 사진을 보면 customAuthenticationProvider 추가는 8334번 providers에 추가가 되고, configuration에서 ProviderManager 가져와서 0번째 provider를 지운것은 parent 안에 있는 8340 리스트에서 제거한것처럼 보여지는데 맞을까요???
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
15강 rest 인증 성공 핸들러 관련 문의
안녕하세요. 선생님 학습중에 에러가 발생하여 문의드립니다. 인증 성공 핸들러에 onAuthenticationSuccess 메소드로 넘어 오는데 authentication.getPrincipal() 의 타입이 java.util.ImmutableCollections$List12 로 와서 AccountDto로 cast가 안되는 에러가 발생하는데 원인을 모르겠습니다. ㅠㅠ 에러 내용java.lang.ClassCastException: class java.util.ImmutableCollections$List12cannot be cast to classcom.test.security.domain.dto.AccountDto (java.util.ImmutableCollections$List12 is in module java.base of loader 'bootstrap'; com.test.security.domain.dto.AccountDto is in unnamed module of loader 'app') 에러 발생한 부분AccountDto accountDto = (AccountDto) authentication.getPrincipal();
-
미해결[초급] 찍어먹자! 코틀린과 Spring Security + JWT로 회원가입 만들기
4.1강 마지막 회원가입 실행
모든 코드를 다 작성하고 db실행도 다 한 상태로 send룰 눌렀는데 이렇게 빈 실행화면이 뜨고 디비에 회원정보가 생기지 않습니다. 오탈자가 있나 살펴보았지만 도저히 찾지 못하였습니다.
-
미해결호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
collaboator로 초대받을 수 있을까요??
당연히 구글링 해보셨져? 원하는 결과를 못찾으셨나요? 어떤 검색어를 입력했는지 알려주세문제가 발생한 코드(프로젝트)를 Github에 올리시고 링크를 알려주세요.안녕하세요 호돌맨님.덕분에 강의 잘 듣고있습니다.깃헙 collaboator로 초대받을 수 있을까요?깃헙 아이디는 sol4854@naver.com 입니다!감사합니다.
-
해결됨스프링부트 시큐리티 & JWT 강의
강의 실습하다가 막히는 분들 참고(2024년8월 기준)
2024년 8월 현재 강의들으며 실습하다 막히는 분들 참고용으로 제 소스 공유합니다.막혔던 부분 커뮤니티에 해결방법 공유해주신 분들 덕분에 실습 잘 하고 있습니다.모두 감사합니다^^ +++ OAuth2.0 실습 소스 +++https://github.com/hhmkorea/studySpringBoot/tree/main/security1+++ JWT 실습 소스 +++https://github.com/hhmkorea/studySpringBoot/tree/main/jwt##### 막힌 부분 뚫어준 커뮤니티 글 출처 #####1. BycryptPasswordEncoder 주입시 순환참조 문제 해결!! (9강) : https://www.inflearn.com/questions/476829 페이스북 로그인 버튼 만든 뒤 error 발생하던 문제 해결!! (10강) : https://www.inflearn.com/community/questions/10495293. SecurityConfig 최신 버전에 맞게 수정!! (20강~22강) : https://www.inflearn.com/questions/1335544authenticationManager() 문제 해결!! (24강) : https://www.inflearn.com/community/questions/1145565 authenticationManager 값이 null로 나오는 문제 해결!!(25강) : https://www.inflearn.com/questions/1266285>>> 24강 강의 실습 전 준비할 것 : 회원가입 구현 <<< 아래 소스에 회원가입 구현 부분 추가 한다.소스명 : JwtApplication. java...@BeanBCryptPasswordEncoder passwordEncoder() {return new BCryptPasswordEncoder();}... 소스명 : RestApiController. java...@PostMapping("join")public String join(@RequestBody User user) {user.setPassword(bCryptPasswordEncoder.encode(user.getPassword()));user.setRoles("USER"); // 권한은 기본으로 USER로 설정합니다. ---> security 최신 버전에서는 권한 적용시 ROLE_ 쓰지 않음.userRepository.save(user);return "회원가입완료";}... application.yml 파일 수정해서 테이블을 새로 만든다.ddl-auto: create 로 수정하고 서버 재시작 postman으로 회원가입 테스트하기.
-
미해결스프링부트 시큐리티 & JWT 강의
구글 소셜 로그인 302
소셜 로그인 버튼을 누르면 302가 뜨면서 구글 로그인 페이지로 이동하지않는데 왜 그런 건가요? 브라우저 캐시 문제인가싶어서 지우고도 해봤지만 결과는 똑같아요
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
로그아웃 매핑 핸들러 질문
스프링 시큐리티는 필터 기반으로 보안 관련 기능을 처리하도록 도와주는 것으로 이해하고 있습니다.여기서 로그아웃을 컨트롤러에 작성한 이유가 있나요?로그아웃은 필터보다는 컨트롤러에서 진행하는 것이 좋나요?
-
미해결스프링 프레임워크는 내 손에 [스프1탄]
@RequestBody에 관해서 질문이요.
선생님, 스프1탄 MVC02의 35강을 보고나서 질문드려요.boardUpdate() Ajax에서 클라이언트가 적은 값을 변수 title, content에 초기화 하고, 그 값이 자바스크립트니까 JSON.stringfy로 JSON으로 변경해주고, 컨트롤러에서 @RequestBody로 그 JSON 값을 자바로 변환해서 비즈니스 로직을 해주고 있다.맞나요?근데 insertBoard() 에서도 클라이언트가 적은 값을 fData에 자바스크립트 문자열로 직렬화 해줬는데,어떻게 변환과정없이 비즈니스 로직이 실행되나요?
-
미해결[초급] 찍어먹자! 코틀린과 Spring Security + JWT로 회원가입 만들기
2.4강에서 1:18초쯤에 <T>를하고 뭔가 추가하는 작업
어떤 작업을 한 것이고 단축키가 무엇인지 궁금합니다
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
강사님 15분 17초 쯤 질문있습니다
인증된 사용자는 세션에 저장했다면 세션으로 부터 가져와서 시큐리티 컨텍스트에 저장한다라고 말씀해주셨는데요제가 이해한게 맞는건가싶어서요=> 인증된 사용자는 세션에 (시큐리티 컨텍스트를) 저장했다면 세션으로 부터 (시큐리티 컨테스트를) 가져와서 시큐리티 컨텍스트(홀더에) 저장한다이렇게 이해했는데 맞는건가요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
다중 포트 실행시 계정 로그인 질문
안녕하세요 현재 실전 프로젝트 restApi 쪽을 공부하고 있습니다! 여기서 한가지 의문점이 든게 있다면, 제가 port 8080 과 port 9001 두개를 열어두고, :8080 에는 /login (From로그인) , >> User..Filter 토큰:9001 에는 /api/login (Rest로그인), >> Rest..Filter 토큰이렇게 열어둔 뒤 같은 admin 계정으로 로그인 시도 결과 >> 로그인이 풀리는 것을 확인하였습니다. 저는 토큰이 두가지가 되어있어서 각각 다른 계정으로 인식 하는 줄 알았는데 이 경우 선생님의 강의에 있던 [세션5] 동시 세션 관리 부분을 따로 설정을 해줘야 하는 것인가요??
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
SecurityContextHolderFilter 흐름도 질문있습니다
한번 인증을 완료 했다면 세션에 컨텍스트를 저장하기 때문에 컨텍스트 홀더에 있는 컨텍스트를 삭제해도 클라이언트가 요청시 SecurityContext 존재하는가? 에 대한 대답이 Y인 걸까요?
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
질문좀할게요
강의에서 SecurityContextRepository.saveContext()를 강제로 실행시키지 않고 사용자가 명시적으로 호출되어야 SecurityContext를 저장할수있는데 이는 .......이라고 되어있는데 호출되어야가 아닌 호출해야가 맞는거 아닌가싶어서요의미가 좀 달라지는 부분이라 정확히 알고싶어서 질문 남깁니다.
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
RequestMatcher
강사님 RequestMatcher가 정확히 뭔가요?.. httpServletRequest를 말하는건가요?
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
간단한 인텔리제이 질문!!
안녕하세요 강사님!수업 잘 듣고있습니다 다름이 아니라 .. 정말 간단한 질문인데 메소드 체인으로 이을때 강사님은 빠르게 하시는것같아서 뭐누르시는건지 궁금해서 여쭤봅니다여기 보면 커서가 userId의 마지막에 있잖아요그럴때 이제 저기서 뒤에 .passwordParameter("password") 메소드 체인 이으실때 무슨 키를 누르셨나요? 저는 end키로 ("userId")괄호 끝으로 옮기고 엔터 누른뒤에 했거든여..
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
OncePerRequestFilter 질문
OncePerRequestFilter는 요청당 한 번만 필터가 동작하도록 보장된? 필터라고 말씀해주셨는게 하나의 요청에 하나의 필터가 여러 번 동작하는 경우도 있나요..?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
restSecurityFilterChian에서 addFilterBefore와 authenticationManger 질문
httpSecurity.formLogin()을 설정해주지 않으면, securityFilterChain에 UsernamePasswordAuthenticationFilter가 없지 않나요? restAuthenticationFilter를 UsernamePasswordAuthenticationFilter 앞에 추가할 수 있나요? restAuthenticationFilter에서 authenticationManager를 사용할 수 있도록 설정해주었는데, httpSecurity에 또 세팅해줘야 하는 이유가 있는걸까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
설정 클래스 생성
HttpSecurity 빈이 설정 클래스를 생성한다는 게 SecurityConfigurer 타입 객체들을 생성한다는 건가요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
강의자료에서 수정되어야 될 부분이 있네요.
강의자료 DelegatingPasswordEncoder 빈 정의에서알고리즘 지정생성에서@Bean public PasswordEncoder passwordEncoder() { String encodingId = "pbkdf2"; Map encoders = new HashMap<>(); encoders.put(encodingId, Pbkdf2PasswordEncoder.defaultsForSpringSecurity_v5_8()); DelegatingPasswordEncoder delegatingPasswordEncoder = new DelegatingPasswordEncoder(encodingId, encoders); return delegatingPasswordEncoder;} 에서 String encodingId = "pbkdf2"; 가 String encodingId = "pbkdf2@SpringSecurity_v5_8""; 로 수정되어야 되거나 아님 encoder 할때 버전을 5_5로 바꾸어야 하네요.한참 헤메이다 저처럼 헤메이지 말라구 올려봅니다.