🌱 SPRING/스프링 인 액션

    스프링 시큐리티 ③ : 사용자 저장소

    스프링 시큐리티 ③ : 사용자 저장소

    스프링 시큐리티 ③ : 사용자 저장소사용자 저장소에는 요청별로 요구하는 권한과 사용자 정보가 저장되어있어야한다. 두 가지 방법으로 이 사용자 저장소를 지정하고, 저장소에 있는 사용자를 권한처리 할 수 있다. 1. 인 메모리서버의 메모리 내부에 사용자 저장소를 만드는 방식이다. 계정의 종류가 매우 적고, 계정의 아이디, 패스워드, 권한목록이 변경되지 않을때 사용하기 좋다. configure() 메서드를 아래와 같이 오버라이드해 사용한다. 12345678910111213@Configuration@EnableWebMvcSecuritypublic class SecurityConfig extends WebSecurityConfigurerAdapter{ @Override protected void configure..

    스프링 시큐리티 ② : 상세 설정하기

    스프링 시큐리티 ② : 상세 설정하기

    스프링 시큐리티 ② : 상세 설정하기WebSecurityConfigurerAdapter 의 세가지 configure() 메서드를 오버라이드하는 것으로 미세한 설정이 가능하다. 메서드 설명 configure(WebSecurity) 스프링 시큐리티의 필터 연결을 설정하기 위한 오버라이딩 configure(HttpSecurity) 인터셉터로 요청을 안전하게 보호하는 방법을 설장하기 위한 오버라이딩 configure(AuthenticationManagerBuilder) 사용자 세부 서비스를 설정하기 위한 오버라이딩 123456789protected void configure (HttpSecurity http) throws Exception{ http .authorizeRequests() .anyRequest()..

    스프링 시큐리티 ① : 기본 설정

    스프링 시큐리티 ① : 기본 설정

    스프링 시큐리티 ① : 기본 설정스프링 시큐리티는 필터 기반으로 인증과 권한을 통해 강력한 보안을 제공한다. 그 중 DelegatingFilterProxy 는 스프링 애플리케이션 컨텍스트에 위임된 필터 빈을 처리하기 위한 프록시 필터로써 스프링 프레임워크 기반의 웹 애플리케이션에서 서블릿 필터 라이프 사이클과 연계해 스프링 빈 의존성을 서블릿 필터에 바인딩하는데 사용된다. 아래 기본 설정을 해두면 스프링에서 제공하는 10개의 시큐리티 필터가 자동으로 등록된다. 이 때 10개의 필터는 아래와 같다.00 시큐리티 필터 필터 설명 SecurityContextPersistenceFilter SecurityContextRepository에서 SecurityContext를 로드하고 저장하는 일을 담당함 Logout..

    예외 처리하기

    예외 처리하기

    예외 처리하기 몇 가지 스프링의 예외들은 자동으로 명시된 HTTP 상태 코드로 매핑된다. HTTP 상태 코드로 매핑하기 위해 예외에는 @ResponseStatus 애너테이션을 붙여줄 수 있다. 예외 처리를 위한 메서드에는 @ExceptionHandler 애너테이션을 붙여줄 수 있다. 예외를 HTTP 상태 코드에 매핑하기 스프링 예외 상태 코드 BindException 400 - Bad Request ConversionNotSupportedException 500 - Internal Server Error HttpMediaTypeNotAcceptableException 406 - Not Acceptable HttpMediaTypeNotSupportedException 415 - Unsupported Med..

    멀티 파트 폼 데이터

    멀티 파트 폼 데이터

    멀티 파트 세팅DispatcherServlet에는 멀티 파트 요청의 데이터를 파싱하기 위한 로직이 구현되어 있지 않다. 대신, 아래의 두 인터페이스로 MultipartResolver를 구현한다. CommonsMultipartResolver : 멀티 파트 요청을 Jakarta Commons FileUpload를 사용하여 결정 StandardServletMultipartResolver : 서블릿 3.0을 사용한 멀티 파트 요청에 대한 지원(spring 3.1 이상) 12345@Beanpublic MultipartResolver multipartResolver () throws IOException{ return new StandardServletMultipartResolver();}Colored by Col..

    자바 설정으로 Filter 등록하기

    자바 설정으로 Filter 등록하기

    자바 설정으로 Filter 등록하기123456789101112131415public class WebAppInitializer extends AbstractAnnotationConfigDispatcherServletInitializer{ @Override public void onStartup (ServletContext servletContext) throws ServletException { javax.servlet.FilterRegistration.Dynamic filter = servletContext.addFilter("myFilter", MyFilter.class); // 필터 등록 filter.addMappingForUrlPatterns(null, false, "/custom/*"); // ..

반응형