본문 바로가기

스프링시큐리티2

Spring Security 인증처리 SecurityContextHolder.getContext(), getAuthentication(), getPrincipal() Spring Security 컨텍스트에서 현재 인증된 사용자의 사용자 이름(사용자 ID)을 얻는 데 사용되다. 사용자가 인증되었고 연관된 UserDetails 개체가 있다고 가정하면. 이 코드는 UserDetails 개체에서 사용자 이름을 추출하여 userId 변수에 할당하는 것이다. ✔ 예제코드 @GetMapping("") public ResponseVO getUserInfo() { String userId = ((UserDetails) SecurityContextHolder.getContext().getAuthentication().getPrincipal()).getUsername(); System.out.println("getUserInfo"); log.debug("getUserInfo[" + us.. 2023. 7. 31.
Spring Security 기본(세션, 스프링시큐리티) 스프링 시큐리티란 - 인증/인가와 보안 기능을 담당하는 라이브러리 - 쉽게 풀이하면 로그인, 권한설정, 권한검사 기능 등을 제공 - 원리 : 서블릿 필터를 이용 사용자가 리퀘스트를 주면 스프링 엠브시에서 리스폰스를 줌 즉 사용자가 리퀘스트를 서블릿 컨네이너에 주고 서블릿 컨네이너 즉 톰켓과 같은 것이 리스폰스해준다. 다시 서블릿 컨네이너에서 스프링 DispatcherServlet 에 요청하면 컨네이터네 리스폰스 해준다. 서블릿 컨네이너에서 리스폰스 리퀘스트간 스프링 디스패치 사이에 필터로 시큐리티를 구현 바로 필터를 구현하면 스프링 빈을 인식하지 못하므로, 스프링에게 구현을 위임한다. 스프링 시큐리티 bean은 필터들로 구성되어 있고, 이 필터들의 모음을 securityfilterchain이라고 부른다... 2023. 3. 13.