본문 바로가기
728x90

개발공부 개발새발/Spring10

Spring Boot 3.x ) 로그를 멋지게 처리하는 법 요즘 혼자 인증용 서버를 하나 만들고 있는데로그를 좀 더 멋지게 처리할 수 있는 방법이 있을까 해서 찾아보았다. AOP 와 핸들러를 이용하면실패/성공 로그 모두 멋지게 처리할 수 있다는 사실 !   일단 중요한 "실패 로그" 부터 어떻게 처리하는지 살펴보자!  실패 로그예외 상황 발생 시, throws 이전에 로그를 찍는 것보다 더 좋은 방법이 있다.그건 `@ControllerAdvice` 에서 실행하면 되는데, 일단 예외 수정부터 필요하다. DefaultExceptionimport lombok.Getter;import org.springframework.http.HttpStatus;import java.util.Map;@Getterpublic class DefaultException extends R.. 2024. 12. 6.
Spring Security) permitAll() 의 비밀... 얼마 전 티스토리에 web.ignoring() 설정으로 스프링 시큐리티가 정적 파일을 검사하지 않게 하는 설정을 했었는데.. https://hyuil.tistory.com/170 Spring Security 에서 web.ignoring()을 해도 정적 파일을 필터링해요 ㅠ Spring Security 를 구현하다가 얘가 정적 파일도 계속 필터링 하는 것을 발견했다 ㅡㅜ 한번에 필터가 겁내 여러개 돌았다.. @Override public void configure(WebSecurity web) throws Exception { web.ignoring() // 정적파 hyuil.tistory.com ㄴ 관련 글은 요깅 ^0^ 근데 내가 맨 밑에다가 anyRequest.permitAll() 이라고 설정했는데도.. 2023. 1. 21.
Spring Security ) JWT와 Session 인증 중에 무엇을 사용해야 좋을까? 스프링 시큐리티를 구현하려고 하는데 유저를 인증하는 방식이 두 가지가 있다고 한다 'JWT' 토큰을 사용하는 방법과 'Session"을 사용하는 방법! 그러면, 어느 방식이 조을까 생각해보았다 일단, 세션은 서버 메모리에 저장되는 공간이며 고유 세션 ID로 유저를 구분한다 로그인 할 때 세션을 생성하면 서버는 쿠키에 세션ID 동봉해 HTTP 헤더에 보내준다(맞지..?) 그리고 유저가 요청을 하면 HTTP 헤더에 유저 쿠키가 같이 발송되고 쿠키는 서버에서 세션 아이디를 통해 일치하는 유저 정보를 가져와, 로그인한 유저가 맞는지 확인한다 그래서 가끔 브라우저가 먹통이라 쿠키 삭제를 하면 자동 로그인을 체크했던 사이트들도 다 초기화가 되는 현상이 있는 것이당... 근데, 이 방식에는 아쉬운 점이 있다 - 저장.. 2023. 1. 6.
Spring) 궁금한 것들 목록...(고민해결안됨) 1. 시큐리티 쓸 때 다대다 매핑으로만 해야하는지? 다대일은 안되는지 2. 역할이랑 권한은 세션에 넣는게 맞는지? 맞다면 ㄴ 2-1 직접 키 이름을 부여하고 값은 enum을 이용해야하는지? ㄴ 2-2 그러면 시큐리티에서 개발자가 직접 세션 키 이름을 알려주는 설정을 해야하는지? ㄴ 2-3 그렇다면 키 이름을 정하는 관례가 있는지? 그냥 role auth 이런식으로 하는지? 3. 권한 역할 부여를 위한 role 테이블을 멤버와 어드민 테이블에 fk로 줬는데 이게 맞는건지? 역할이랑 권한을 컬럼으로 줘야하는 건지? 4. 시큐리티로 일단 로그인/회원가입 정도를 구현해보려고 하는데, 지금은 검증을 직접 하고 있음(유저가 적은 아이디가 디비에 있는지 확인 후, 비밀번호를 직접 복호화하고 true가 나오면 로그인 .. 2023. 1. 5.
Spring, Boot) maven 버전 선택 꿀팁 maven을 사용할 때 어떤 버전으로 사용해야 충돌이 안 날까? 고민한 적이 많다 https://spring.io/projects/spring-boot#learn Spring Boot Commercial support Business support from Spring experts during the OSS timeline, plus extended support after OSS End-Of-Life. Publicly available releases for critical bugfixes and security issues when requested by customers. spring.io 요기 들어가서 (Spring 도 있음) Reference Doc. 을 클릭하고 저기서 a single HTM.. 2022. 11. 24.
Spring) PasswordEncoder를 사용하기 위한 준비 저장용 pom.xml 추가 org.springframework.security spring-security-web ${org.springframework-version} org.springframework.security spring-security-core ${org.springframework-version} org.springframework.security spring-security-config ${org.springframework-version} spring-security.xml 추가 (WEB-INF/spring 폴더) web.xml 에 spring-security 추가 contextConfigLocation /WEB-INF/spring/root-context.xml /WEB-INF/spr.. 2022. 11. 16.
728x90