Spring Boot 기반으로 개발하는 Spring Security : 완강 후 느낌점
2023. 9. 10. 12:44
무조건 따라하기/Spring Boot 기반 Security
스프링 시큐리티 - Spring Boot 기반으로 개발하는 Spring Security 스프링 시큐리티 - Spring Boot 기반으로 개발하는 Spring Security - 인프런 | 강의 초급에서 중.고급에 이르기까지 스프링 시큐리티의 기본 개념부터 API 사용법과 내부 아키텍처를 학습하게 되고 이를 바탕으로 실전 프로젝트를 완성해 나감으로써 스프링 시큐리티의 인증과 www.inflearn.com 부트캠프를 마치고 신입 개발자로 첫 회사에 입사하게되었다. 3개월이 지나고 백엔드 업무와 회사의 코드컨벤션이 익숙해졌을 쯤 1년뒤 2년뒤는 적어도 지금과 달라져야한다는 생각이 많이들었다. 특히 나와 실력차이가 많이 나는 팀장님을 보면, 한 없이 내가 작게 느껴지고 1년뒤에는 현재의 팀장님 실력만큼은 따라..
Spring Boot 기반으로 개발하는 Spring Security : 권한설정과 표현식
2023. 4. 16. 20:46
무조건 따라하기/Spring Boot 기반 Security
권한 설정 http.antMatchers("{url}").hasRole(“{role}") 와 같이 설정이 가능하다. http .authorizeRequests() .antMatchers("/login").permitAll() // login 페이지는 인증이 안돼도 접근이 가능해야하기 때문에 .antMatchers("/user").hasRole("USER") .antMatchers("/admin/pay").hasRole("ADMIN") .antMatchers("/admin/**").access("hasRole('ADMIN') or hasAnyRole('sys')") //표현식을 사용해 두개이상의 권한을 설정 .anyRequest().authenticated(); ※ 주의 사항 - 설정 시 구체적인 경로가 ..
Spring Boot 기반으로 개발하는 Spring Security : 동시 세션 제어, 세션 고정 보호, 세션 정책
2023. 4. 15. 11:29
무조건 따라하기/Spring Boot 기반 Security
동시 세션 제어 최대 허용 세션이 초과했을 경우 시큐리티는 2개의 설정이 있다. sessionManagement > maxSessionsPreventsLogin() 를 사용하여 기본값은 false로 기존 세션을 만료시키고 true는 현재 접속하는 세션을 차단한다. http.sessionManagement() .maximumSessions(1) // 최대 허용 가능 세션 수, -1 : 무제한 .maxSessionsPreventsLogin(false) // 동시 로그인 차단함, false : 기존 세션 만료 (default) .expiredUrl("/expired") // 세션이 만료된 경우 이동할 페이지 테스트 maxSessionsPreventsLogin를 true로 설정해서 초과하는 세션을 차단할 경우 ..
Spring Boot 기반으로 개발하는 Spring Security : AnonymousAuthenticationFilter
2023. 4. 15. 11:13
무조건 따라하기/Spring Boot 기반 Security
AnonymousAuthenticationFilter 이란? 익명사용자 인증 처리 필터 익명사용자와 인증 사용자를 구분해서 처리하기 위한 용도로 사용 화면에서 인증 여부를 구현할 때 isAnonymous() 와 isAuthenticated() 로 구분해서 사용 인증객체를 세션에 저장하지 않는다 이미지로 플로우 확인 사용자가 자원에 접근하면 AnonymousAuthenticationFilter가 요청을 받는다. SecurityContextHolder(이하 SC)에 인증객체가 존재하는지 확인한다. 인증객체가 있다면 다음필터가 진행 인증객체가 없다면 AnonymousAuthenticationToken(익명사용자 토큰)을 생성해 SC에 저장 한다. (사용인증객체를 세션에 저장하지 않는다) SC에 저장한 Anon..
[java/spring] 스프링시큐리티에서 세션 안받아지는 CORS 문제 해결하기
2022. 6. 20. 16:06
몰아 넣기
#들어가는 말 스프링시큐리티를 이용해 세션방식으로 로그인을 구현한다면 프론트와 서버가 합쳐져있는 프로젝트라면 CORS 문제가 없어 세션이 자동으로 쿠키에 저장이 된다. 하지만 프론트를 나누기 시작 하면 CORS 문제로 세션이 받아지지도 않고 자동으로 쿠키에 저장이 되지 않는다 그 문제를 해결할 것이다. 스프링시큐리티 GitHub - whitewise95/TIL: Today I Learned Today I Learned. Contribute to whitewise95/TIL development by creating an account on GitHub. github.com 세션방식 GitHub - whitewise95/TIL: Today I Learned Today I Learned. Contribute..