백엔드/Spring Security4 Spring Security Config spring security의 특정 filter를 disable 하는 방법. HTTPSECURITY.HTTPBASIC().DISABLE() **허나.. SPRING SECURITY 6부터 해당 방식도 변경되었다. 이는 spring security 홈페이지를 참고하자. 로그인 loginpage는 root 경로의 /login, 기본 성공시 /로 이동, 해당 로그인은 모두에게 허용된다는 의미를 지닌다. 로그아웃 http .logout((logout) -> logout.deleteCookies("remove") .logoutRequestMatcher(new AntPathRequestMatcher("/logout")) .logoutSuccessUrl("/") ); 로그아웃 요청을 받으면, 해당 페이지로 이동한다... 2024. 1. 11. Spring Security의 핵심 , SECURITY Filter SECURITY FILTER란? 개발자가 별도로 설정 가능한, 스프링의 핵심인 확장성을 적용시키는 개념이다. 이와 같이, 모든 FITLER들은 FILTER를 구현해야한다. 들어오고, 나오는 것을 FILTERING하는 것을 SECURITY FILTER라고 한다. 모든 FILTER의 핵심 기능은 doFILTER안에 있다. REQUEST -> |필터| -> CONTROLLER -> |필터| -> RESPONSE와 같은 구조 해당 과정을 디버깅하면, WEBPROXYFILTER부터 기타 등등 FILTER(총 13개가 나왔다) 들이 모두 작동. FILTER와 FILTER간에, 사용자 설정 FILTER를 삽입할 수 있다. 필터의 예시들을 보자 1. SECURITYCONTEXTPERSISTENCEFILTER는 , 보통.. 2024. 1. 11. Spring Security 구조와 내부 내부 구조란 ? SecurityContextHolder 안에, SecurityContext 안에 Authentication 안에 Principal과 GrantAuthority가 있는 구조 SecurityContextHolder는 SecurityContext를 제공, 해당 메소드를 지원 . SecurityContext는 접근 주체와 인증에 대한 정보, 즉 인증을 담고 있다 . Authentication에는 인증 이후 해당 인증을 저장. Principal은 User의 정보를 제공한다. 대부분 Principal로 userdetails를 반환 GrantAuthority는 User의 Role을 붙인다. 주로 ROLE_USER,ROLE_ADMIN등을 사용. 인가에서 사용한다 . 2개의 권한을 동시에 가질 수 있다... 2024. 1. 11. SPRING SECURITY란? 보안에 활용되는 보안 프레임워크 . 유일무이한 선택지 EX) 어떠한 사용자라도 괜찮은지, 아닌지 LOGIN인이랑, 사실 사용자 인증의 역할을 한다. (네트워크 보안 교과목에서 수강하였다) 이에 추가적으로, 운영자와 사용자의 ROLE을 분할한다 (ROLE-BASED-ACCESS라고 볼 수 있다) 우리가 필요로하는 어떤 보안 절차라도 사용이 가능하다 . 스프링의 가장 유연하고 쉽게 구현된 기능은 인증과, 인가이다. 인증 (Authentication) 인증은 사용자가 누구운지 확인하는 절차이다. ex) 로그인 사용자의 인증을 주로 인증이라고 호칭한다. *주의해야할 핵심 기능 -> 로그인을 한번 하고 나면, 해당 user가 user가 맞음을 계속 인증받아야 한다. case 1 ) 모든 request시마다, id.. 2024. 1. 8. 이전 1 다음