묻고 답해요
141만명의 커뮤니티!! 함께 토론해봐요.
인프런 TOP Writers
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
provider가 선택되는 정확한 기준을 잘 모르겠습니다
두번째 방식이 CustomProvider에 의해 처리가 되는 것이 이해가 되지 않습니다.첫번째 방식과 단지 CustomProvider를 추가한 것만 다르다고 생각하는데 이로 인해 해당 CustomProvider가 선택된것인가요?아니면 Dao방식은 parent에 존제하기 때문에 현재 list에 존제하는 custom방식이 채택된거라고 이해하면 될까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
강의 20분13초 내용 질문입니다.
requestMatchers("/login").permitAll()로 /login에 대한 요청은 인증이 필요없게 설정했는데, .formLogin()을 설정하고 나서 "/login" 요청이 formLogin 방식의 필터에 걸리는 건가요?formLogin() 설정을 해도 이미 위에서 equestMatchers("/login").permitAll() 로 /login 에 대한 요청은 인증이 필요없으므로 필터에 걸리지 않고 바로 컨트롤러 PostMapping("/login")으로 가야되는거 아닌가요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
클라이언트마다 별도의 쓰레드 할당 질문입니다.
클라이언트마다 별도의 쓰레드가 할당되고 각 쓰레드별로 쓰레드로컬을 가지고있어 여기에 인증객체를 가진 SecurityContext가 저장된다고 설명해주셨습니다. 근데 제가 알기로 같은 사용자더라도 서버에 요청할때마다 다른 쓰레드가 할당되는걸로 아는데 아닌가요? 맞다면 같은 사용자이더라도 요청할때마다 별도의 쓰레드가 할당되므로, 이전 요청에서 로그인인증을 통해 저장했던 SecurityContext는 사용하지 못하는거 아닌가요?
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
AuthenticationManager의 HttpSecurity 사용 부분에 질문 있습니다
CustomAuthenticationFilter 관련 설명에서 AuthenticationManager는 빈이 아니기 때문에 주입받지 못해 @Bean 선언하면 안된다고 설명하셨는데요.AuthenticationManager를 bean으로 등록하고 CustomAuthenticationFilter를 bean으로 등록해서 AuthenticationManager를 주입받는 식으로 코드를 짜도 될 것 같은데 그렇게 하지 않은 이유가 securityFilterChain 내에서만 사용되기 때문에 bean으로 등록할 이유가 없기 때문인가요? 아니면 혹시 다른 이유가 있나요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
SecurityContextPersistenceFilter & UsernamePasswordAuthenticationFilter
SecurityContextPersistenceFilter를 사용하고 폼 로그인 처리 방식을 사용한다고 하면 UsernamePasswordAuthenticationFilter를 사용할텐데 해당 필터는 스프링 시큐리티가 인증에 성공시 자동으로 세션에 시큐리티 컨텍스트를 저장한다고 했는데SecurityContextPersistenceFilter 또한 finally에서 세션에 또 저장을 하니까 2번 저장하게 될까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
SecurityContextPersistenceFilter
안녕하세요 강의 재미있게 듣고 있습니다!SecurityContextPersistenceFilter를 사용하고 폼 로그인 처리 방식을 사용한다고 하면 UsernamePasswordAuthenticationFilter를 사용할 텐데 해당 필터는 스프링 시큐리티가 인증에 성공 시 자동으로 세션에 시큐리티 컨텍스트를 저장한다고 했는데SecurityContextPersistenceFilter 또한 finally에서 세션에 또 저장을 하니까 2번 저장하게 될까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
AuthenticationManager 사용 방법 HttpSecurity 사용
AuthenticationManager 사용 방법 HttpSecurity 사용에서@Bean 사용으로 CustomFilter를 빈으로 생성하면 안되는 이유가AutenticationManager가 빈이 아니기 때문에 주입받지 못한다고 하셨는데securityFilterChain(HttpSecurity http)메서드에서 AuthenticationManagerBuilder를 통해build() or getObject()사용으로 AuthenticationManager를 가져오고.addFilterBefore(customFilter(autenticationManager))여기서 넘겨주면 파라미터로 AuthenticationManagerf를 받는게 아닌가요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
요청을 처리하기까지 과정 질문
안녕하세요. 요청을 필터가 처리하기까지의 과정이 맞는지 확인하고자, 질문드립니다.먼저 FilterChainProxy가 SecurityFilterChain을 선택하는방법이 여러개의 SecurityFilterChain 중에 가지고 있는 RequestMatcher url 패턴에 맞는 SecurityFilterChain을 확인 후 선택함.또 다시 SecurityFilterChain 이 가진 여러 필터들 중에서 요청 url에 해당하는 패턴을 처리할 수 있는 필터를 선택해서 해당 필터에서 처리하도록 함.위 과정이 대략적으로 맞을까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
setHierarchy deprecated
안녕하세요 강사님 좋은 강의 감사드립니다.처음부터 지금까지 모든 강의 내용을 직접 코딩을 따라 하며 실습하고 있었는데 해당 영상에서 질문할 것이 있습니다.RoleHierarchyImpl을 빈 등록할 때 setHierarchy는 deprecated 되어서 fromHierarchy로 했더니 사진의 에러가 발생합니다. 두 메소드의 코드가 다르기 때문에 이런 에러가 발생한다고 추측되는데 deprecated된 setHierarchy를 사용하는 대신 다른 방안이 있을지 궁금해서 여쭤봅니다. 사실 계층적 권한 관련된 내용을 처음 설명해주시는 관련 영상(섹션 9의 마지막 영상)에서는 setHierarchy 대신 fromHierarchy를 사용했어도 잘 동작했었기에 더 궁금합니다.(그때는 물론 role을 db로 관리하지 않는 간단한 예제였습니다) 확인해주시고 코멘트 달아주시면 많은 도움이 될 것 같습니다. 감사합니다.@Configuration public class AuthConfig { @Bean public PasswordEncoder passwordEncoder() { return PasswordEncoderFactories.createDelegatingPasswordEncoder(); } // 커스텀 계층 권한 적용 @Bean public RoleHierarchyImpl roleHierarchy(RoleHierarchyService roleHierarchyService) { String allHierarchy = roleHierarchyService.findAllHierarchy(); RoleHierarchyImpl roleHierarchy = new RoleHierarchyImpl(); roleHierarchy.fromHierarchy(allHierarchy); //roleHierarchy.setHierarchy(allHierarchy); return roleHierarchy; } }
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
PPT 자료는 어디서 다운 받을 수 있을까요?
다른분이 작성하신 질문도 봤는데.. 다운로드 받을 수 있는 방법이 없네요ㅠㅠPDF 파일로 업로드 해주셨다고 하는데, 어디서 다운 받을 수 있을까요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
질문 있어서 남기게 됩니다.
사이드 프로젝트를 하다가 SpringSecurity를 좀더 잘 구햔해보고 싶어 강의를 들으면서 sideproject에 springSecurity를 도입하고 있습니다. 수업 내용과는 상이한 질문이라 드려도 될지 조심스럽습니다만, 혼자 공부하고 있어 여주어 볼 곳이 선생님 밖에 없어 질문을 남기게 됩니다. 권한을 설정해 주고, 회원에게 권한을 직접 지정해 주는 방식으로 진행했는데, api test해본 결과 계속 Set SecurityContextHolder to anonymous SecurityContext라는 오류가 발생합니다. 시간이 괜찮으시다면, 진행중인 sideProject에서 security 부분이 어디가 잘못되었는지 팁을 주시면 감사하겠습니다. https://github.com/Fangsangik/fintech_rebuilding
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
인텔리제이 내장 db
안녕하세요,저는 현재 스프링 시큐리티 강의를 수강 중인 학생입니다. 강의를 차근차근 학습하고 있었으나, 프로젝트 마감 기한을 맞추기 위해 실전 프로젝트 부분을 우선적으로 학습하고 있습니다.문제는 제가 아직 스프링과 스프링부트에 익숙하지 않다는 점입니다. 그래서 DB 연결 및 구축 방법에 대해 잘 이해하지 못하고 있습니다. 혹시 이 부분에 대해 어떻게 해야 하는지 설명해 주실 수 있으신가요? 또는 참고할 만한 자료가 있다면 추천 부탁드립니다.구글에서 자료를 찾아보기도 했지만, 여전히 혼란스러운 부분이 많습니다. 현재 프로젝트에서는 백엔드와 시큐리티 부분을 담당하고 있으며, 강사님의 강의를 통해 제대로 배워보고자 하고 있습니다. 질문드린 부분을 도와주실 수 있으면 정말 감사하겠습니다.
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
anyRequest().access(매니저) 질문!
강사님 안녕하세다음과 같은 코드에서.anyRequest().authenticated()는 따로 안해줘도 되는건가요? 음 그러니깐 궁금한것이 원래 하드코딩으로 설정하게되저희가 권한규칙 부여한것외의 엔트리포인트는 모두 인증되어야한다고 설정해줘야하잖아요!1근데 저렇게 매니저를 넣어주게되면 ?저것외의 엔트리포인트는 인증되어야한다는 어디서 처리하게되는지 궁금해요
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
jwt와 oauth2 활용!
강사님 안녕하세요! 제가 강의를 다듣고 jwt와 oauth2를 활용해서 연습해보려고하는데요! 혹시 jwt와 oauth2를 사용하려면 넣어야하는 그래들 의존성이라든지 기타 조언해주실점 있으면 받고싶습니다!
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
실전강의 질문 (Rest 인증 필터 구현)
인증 필터에 왜 authenticationManager를 굳이 셋해주는지 궁금합니다!!..
-
해결됨스프링 시큐리티 완전 정복 [6.x 개정판]
스프링 부트 버전
강의에서 사용하신 3.2.2 는 안 보이고,대신 3.2.9가 가장 낮은 버전이고, 3.3.3으로 진행하려고 하는데 상관없나요?
-
미해결스프링 시큐리티 완전 정복 [6.x 개정판]
동시 세션 제어 - sessionManagement().maximumSessions 강의
동시 세션 제어 - sessionManagement().maximumSessions 강의에서 이상한 부분이 있습니다.maxSessionsPreventsLogin가 true인 경우를 24:30초에 테스트 하실때 비밀번호를 틀려서 강의에서는 테스트가 정상적으로 안된거 같습니다.비밀번호가 1111인데 값을 3개만 입력해서 말씀드립니다.
-
해결됨스프링 시큐리티 완전 정복 [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();