시큐리티 공부 버전 질문
미해결
스프링 시큐리티
안녕하세요 강사님 강의 구버전 신버전 모두 가지고 있는 학생입니다. 혹시 스프링부트 2.7 기준 시큐리티를 맞춘다면 공부할때 구버전 자료로 신버전 자료로 공부하면 좋을까요?
- java
- spring-boot
- spring-security
173만명의 커뮤니티!! 함께 토론해봐요.
미해결
스프링 시큐리티
안녕하세요 강사님 강의 구버전 신버전 모두 가지고 있는 학생입니다. 혹시 스프링부트 2.7 기준 시큐리티를 맞춘다면 공부할때 구버전 자료로 신버전 자료로 공부하면 좋을까요?
해결됨
이거 하나로 종결-스프링 기반 풀스택 웹 개발 무료 강의
안녕하세요, 우선 좋은 강의 업로드해주셔서 감사합니다. 다름이 아니라 강의를 보면서 공부하며 친 코드들을 깃허브나 블로그에 개인 공부 기록용으로 공개 업로드해도 될지 질문드리고 싶습니다.
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
안녕하세요. 좋은 강의 감사드립니다. 다만 강의자료에 CSRF 통합 챕터 깃 주소를 들어가면 아래와 같이 404 에러가 발생합니다.
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
' 각 강의 브랜치 주소는 챕터가 시작하는 화면 하단에 표시되어 있으니 참고하여 주시기 바랍니다. ' 라고 하셨는데, 화면 하단에 어디에 있는지 모르겠습니다. 해당 화면에 대해서 스크롤도 안되고, 메모같은 것도 없어서 현재는 github 를 뒤지면서 보고 있는데, 명확한 가이드를 주실 수 있나요 ? 깃허브에 뒤져가면서 보더라도 숫자-내용 basic-내용 형태의 브랜치들 밖에 없다보니 뭘 봐야할지 헷갈립니다.
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
WebUtil이 지원하지 않는거 같은데 맞을까요? (WebUtils만 보이네요)
미해결
스프링부트 시큐리티 & JWT 강의
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 강의 내용처럼 userDetails : User(id=1, username=ssar, , 이렇게 뜨지 않고 아래와 같이 출력됩니다. userDetails : com.myproject.BasicBoard.entity.User@2c6c7d57 getDetails.getUser() authentication 출력문도 마찬가지입니다.
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
실제로 UserDetails를 구현하고 있는 건 "AccountContext" 이지 "AccountDTO"가 아니기 때문에, @AuthenticationPrincipal AccountDto accountDto를 하면 null이 반환될 수 있지 않나요? 그래서 차라리 @AuthenticationPrincipal AccountContext accountContext를 해서 if (accountContext != null) { model.addAttribute("username", accountContext.getUsername()); } else { model.addAttribute("username", "비회원"); } 이렇게 하는게 더욱 올바른 방법이 아닌가요?
미해결
호돌맨의 요절복통 개발쇼 (SpringBoot, Vue.JS, AWS)
당연히 구글링 해보셨져? 원하는 결과를 못찾으셨나요? 어떤 검색어를 입력했는지 알려주세 문제가 발생한 코드(프로젝트)를 Github에 올리시고 링크를 알려주세요. location.href = /api/logout 를 통해 스프링 시큐리티로 logout 보내고 세션 삭제한 뒤 브라우저를 보면 login?logout이 찍힌걸 확인 할 수 있는데 login으로 어디서 보내준건지 헷갈립니다..
해결됨
이거 하나로 종결-스프링 기반 풀스택 웹 개발 무료 강의
저는 비전공자로 지금 html,css javascript에 대한 기본적인 지식을 갖고있으며 스프링을 응용하여 블로그정도의 웹 페이지를 만들 수 있는 수준이라고 생각합니다 하지만 최근 기업 트렌드를 보면 백엔드 개발자만을 원하는 것이 아닌 풀스택개발자를 원하는 것이 추세인것 같습니다. 이 추세에 대비하기위해 어떤 언어를 최우선적으로 학습해야할지 궁금합니다. ex)node.js,next.js, was , docker... 개발자로 성장하기 위한 방향성을 알려주시면 매우 감사드립니다.
미해결
[초급] 찍어먹자! 코틀린과 Spring Security + JWT로 회원가입 만들기
안녕하세요. 본 수강 열심히 잘 듣고있습니다~ 감사합니다. 제가 Postman으로 로그인하고나서 Token을 발행할 시에 postman에 테스트해본 결과 결과코드는 SUCCESS라고 나오고 data에도 Bearer에 토큰이 들어간것을 확인하였습니다. 그러나 메시지에는 정상완료가 아닌 에러가 발생했다고 해서 제가 아무리 코드를 확인하였지만 어디부분에서 잘못된건지 확인이 힘들었습니다. 사실은 선생님께서 보내주신 파일을 업로드안하고 강의보면서 제가 직접 코드를 타이핑쳤었는데 손코딩을해서 그런지 오타가 있을 것으로 사료됩니다. 불가피하게 파일을 덮어씌우는게 좋을까요?
해결됨
이거 하나로 종결-스프링 기반 풀스택 웹 개발 무료 강의
안녕하세요. 수강해보려고 하는데, 최대한 빠르게 끝내보고 싶습니다. c++ 문법 정도만 알고 있는 수준인데, 공부 기간은 얼마 정도로 예상하시나요?
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
강의를 다시 복습하니, SecurityContextHolder 가 지연로딩을 해 주는 역할도 하지만 다른 필터에 SecurityContext를 전달하는 DTO 같은 역할을 하는 것 같다고 느꼈는데 선생님 생각은 어떠신가요?
해결됨
스프링 시큐리티 완전 정복 [6.x 개정판]
선생님 , 안녕하세요. 강의 잘듣고 있습니다! 질문이 있어서 글남기게 됩니다! 이번 강의 9분 50초 정도에 AuthoriationManger 인터페이스는 접근제어자가 public으로 되어있는데, 하위 메서드인 verify는 접근제어자가 default로 되어있습니다! 위의 이유가 궁금합니다. AuthrozationManager 와 같은 패키지내의 클래스에서만 verify 메서드에 접근 가능하도록 제한을 두기 위한 것인지 아니면 다른 이유가 있는지 궁금합니다. 답변 부탁드리겠습니다! 항상 좋은 강의 감사드립니다.
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
강의 중간 (18: 15)에 커스텀 ExpressionHandler를 만들기 위해 setApplicationContext() 로 스프링 컨테이너를 필드값으로 set 했는데 스프링 컨테이너가 필요한 이유가 무엇인지 궁금합니다.
미해결
스프링 프레임워크는 내 손에 [스프2탄]
안녕하세요 초기 egov에서 받을 때 최신인 5.3.6버전을 받아서 그런지 초기 DataSourceTest에서 @RunWith는 jUnit4버전을 가리키고 저는 5.3.6버전의 spring을 이용했어서인지 SpringJunit4ClassRunner.class가 import 되지 않아 난항을 겪던 중 pom.xml의 버전을 강사님처럼 5.0.7 RELEASE 버전으로 수정하면서 chat gpt의 도움을 받아 DataSourceTest의 테스트를 실행할 수 있었습니다. 그러나 console에서 연결이 되었다는 메세지도 없으며 이를 이상하게 여기고 root-context.xml에 기입된 비밀번호를 강사님처럼 일부러 틀리게 한 후 실패를 기대한 상태로 run을 돌렸지만, jUnit에 Failures가 뜨지도 않습니다.. 혹시 이런 경우에도 방법이 있을까 하여 코드도 함께 첨부합니다.. (pom.xml은 다른 글에 올려주신 참고 블로그의 것을 인용했습니다.) [pom.xml] => 10000자를 올릴 수 없다하며 노션 링크를 첨부하겠습니다! https://devfighting.notion.site/18410212999180b5b0a9cd4ada3a6a58?pvs=4 [console결과, jUnit 결과] [maven dependencies]
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
SecurityFilterChain 의 순서를 보면 AnonymousAuthenticationFilter 가 먼저이고 AuthorizationFilter 가 맨 마지막에 실행되는 것을 확인했습니다. Anonymous 강의에서 AnonymousAuthenticaionFilter는 authentication이 null 인 경우 AnonymousAuthenticaionToken을 생성하여 익명 사용자로 처리한고 Authentication이 null이 아닌 경우 doFilter()로 다음필터로 넘어간다고 하셨는데. 오늘 강의를 보니 anonymousAuthenticationFilter 에는 authenticaion 이 있는지 확인을 하지 않고 authorizationFilter 에서 getContext().getAuthentication() 을 통해 유무를 확인후 없다면 다시 AnonymousAuthenticationFilter 를 통해 AnonymousAuthenticationToken을 생성시켜 할당하는 것 처럼 보이는데 맞을까요? 즉 anonymousAuthenticationFilter doFilter() --> AuthorizationFilter getAuthentication() --> anonymousAuthenticationFilter에서 생성
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
강의를 듣다가 궁금해서 좀 찾아봤습니다(Perplxtiy에게 물어본거라 신뢰도가 100%는 아닙니다) 만료된 세션을 처리하려면 expiredUrl 설정이 필수여서 invalidUrl 설정 단독으로는 처리를 못한다고 합니다 그럼 2개가 다 설정되도 expiredUrl을 타는게 맞는것 같지만 Filter chain의 우선순위때문에 expiredUrl을 즉 만료된 세션을 invalidUrl로 간주하고 invalidUrl이 실행되는 것 같습니다
미해결
스프링 시큐리티 완전 정복 [6.x 개정판]
해당 강의를 학습하던 도중 indexController 의 다음 메서드가 어떻게 익명사용자인것을 알아채고 해당 토큰을 남기는 걸까 의문점이 생겨 질문을 남깁니다. @GetMapping("/anonymousContext") public String anonymousContext(@CurrentSecurityContext SecurityContext context) { return context.getAuthentication().getName(); } 해당의문을 해결하기 위해 localhost:8080/anonymousContext 가 호출될 때 서버는 어떤 과정을 거칠까 생각해보고 다음과 같은 결론을 냈습니다. 1. localhost:8080/anonymousContext 가 호출될 때, Authentication 이 null 값인 것을 확인한다 2. AnonymousAuthenticationToken을 생성하여 SecurityContextHolder에 저장한다. 3. Jsession이 없는 것을 확인하고 AnonymousAuthenticationToken이 저장된 SecurityContext를 파라미터로 넘긴다. 4. 해당 포큰이 getName() 값이 출력된다. 이러한 과정을 거칠거라 생각한 이유는 로그인 상태에서 localhost:8080/anonymousContext 를 호출하게 될 때, "user"라는 값이 출력되는 것을 확인했고 두 같은 요청값에 유일한 차이는 쿠키에 Jsession의 유무였기 때문입니다. SecurityContext가 anonymous 를 판단하는 기준이 제가 생각한 것과 같을까요?
미해결
스프링 프레임워크는 내 손에 [스프2탄]
ajax로 API통신을 할 때 키값을 하드코딩하면 클라이언트에게 노출이 되지 않나요? 관리방법이 어떤게 있을까요? 생각하고있는건, properties에 등록하고, 서비스로직에서 가져와 보내는걸 고려하고있습니다. 다른분께 얼핏 듣기로는 실무에서는 AWS에서 가져온다는데, 그건 어떤 방법일까요?
미해결
스프링 프레임워크는 내 손에 [스프2탄]
강사님을 따라서 작업 중이지만 프로젝트 생성 부터 SpringMVC 프로젝트가 없다는 것을 알게 되었고 그 중에 한 학생분에게 주신 조언대로(질문&답변에 달아주신) eGov Web Project 생성 후 필요한 부분인 servlet-context.xml , home.jsp , HomeController , web.xml , root-context.xml 등을 생성하여 작업하였습니다. 최종적으로 이런 화면이 나오는데 좀 더 구체적으로 상세하게 어떤 식으로 프로젝트를 생성해야할지 안내해주시면 감사하겠습니다ㅠㅠ