springSecurity4 [TIl] 231221 Spring Security Spring Security는 filter에서 탐 JWT header . payload. signature 로 구성 (점으로 구분) 출처 : https://docs.spring.io/spring-security/reference/servlet/architecture.html Filter를 타고 나면 WebConfig로 감 WebConfig: permission을 확인하고 - hasRole - PerimitAll - Authenticated 등 설정 - 우린JWT를 쓸거야!! 인증: 선택, JWT가 하는 일, 유저인지 admin인지 확인 (JwtUtil에서), 가입해도 되는 애인지 확인 인가: 필수, 무조건 Filter에서 만들어줘야 함!! 🗂️ Security 🅒 JwtAuthorizationFilter.. 2023. 12. 21. [TIL] 231211 Spring Security 관리자 페이지 만들기, Spring 댓글 페이지, 프로젝트 회고 관리자 페이지 만들기 이번 프로젝트에서 관리자 페이지를 만들어 보았다. 관리자 권한으로 로그인 할 경우, 게시물 수정, 삭제가 가능하다. 게시물(Post)의 Controller와 Service단을 Admin 패키지에도 만들어준다. adminController에서 관리자 권한으로 허용하는 페이지의 uri와 hasRole을 넣어 관리자가 관리 가능하게 만들어준다. 댓글 페이지 게시물 밑에 댓글이 같이 표시되게 구현하려고 했다. 게시물 전체보기 페이지의 경우 게시물만 표시되게 하고 개별로 게시물을 조회했을 땐 댓글이 조회 되도록 하고 싶어서 게시물만 있는 PostResponseDTO와 게시물과 댓글이 같이 나오는 PostCommentResponseDTO를 따로 만들었다. 게시물 전체보기 페이지는 전체 게시물을.. 2023. 12. 11. [TIL] 231124 Spring Security 로그인 Spring Security 로그인 Spring Security 내부의 AuthenticationManager과 UserDetailsService를 통해 DB와 소통 User name을 UserDetailsService로 전달 -> DB에서 usernmae으로 회원정보 조회 -> 성공시 UserDetails(회원상세정보) 생성 Username, password일치 시 로그인 성공 -> 세션 생성 UserDetailsServiceImpl @Service public class UserDetailsServiceImpl implements UserDetailsService { Private final UserRepository userRepository . . . } @Service 어노테이션 implemen.. 2023. 11. 24. [TIL] 231123 Spring Filter, Spring Security 프레임워크 Filter Client로부터 오는 요청과 응답에 대해 최초/최종 단계에 위치 요청과 응답시 정보를 변경하거나 부가적인 기능 가능 주로 보안처리나 로깅 등에 사용 인증, 인가와 관련된 로직 처리 (비즈니스 로직과 분리하여 관리 가능) Filter 사용법 @Order(1) : 필터 순서 지정 Implements Filter 로 필터라고 선언 public class Logging Filter implements Filter{ } implements Filter @Override public void doFilter(~~)~~ AuthFilter : 인증 인가 필터 만들기 Repository와 JwtUtil 가져오기 if (StringUtils.hasText(url) && (url.startsWith("/ap.. 2023. 11. 23. 이전 1 다음