spring (29) 썸네일형 리스트형 [스프링 시큐리티] 로그인과 로그아웃 처리(1) 1. 접근제한 설정 security-context.xml에 아래와 같이 접근 제한을 설정한다. 특정한 URI에 접근할 때 인터셉터를 이용해서 접근을 제한하는 설정은 을 이용한다. 은 pattern이라는 속성과 access라는 속성을 지정해야만 한다. pattern 속성은 말 그대로 URI의 패턴을 의미하고, access의 경우는 권한을 체크한다. 위의 경우 '/sample/member'라는 URI는 'ROLE_MEMBER'라는 권한이 있는 사용자만이 접근할 수 있다. access의 속성값으로 사용되는 문자열은 1) 표현식과 2) 권한명을 의미하는 문자열을 이용할 수 있다. 는 기본 설정이 표현식을 이용하는 것이다. 만일 단순한 문자열만을 이용하고 싶은 경우에는 use-expressions="false"를.. Interface HttpServletRequest httpServletRequest. 설명이 정말 깔끔해서 맘에 든다. The servlet container creates an HttpServletRequest object and passes it as an argument to the servlet's service methods (doGet, doPost, etc). Class DispatcherServlet . Spring Web Security 설정 1. pom.xml의 일부 org.springframework.security spring-security-web 5.3.5.RELEASE org.springframework.security spring-security-config 5.3.5.RELEASE org.springframework.security spring-security-core 5.3.5.RELEASE org.springframework.security spring-security-taglibs 5.3.5.RELEASE 2. security-context.xml 생성 2-1. Spring Bean Configuration File을 통해 생성 2-2. 네임스페이스에서 security 항목 체크 주의할점은 요놈을 요렇게 바꿔줘야한다. 5... 인증과 권한 부여 '인증(Authentication)'은 쉽게 말해서 '자신을 증명하는 것'이다. 다시 말해서 자기 스스로가 무언가 자신을 증명할 만한 자료를 제시하는 것이다. 반면에 '권한 부여(Authorization)'는 남에 의해서 자격이 부여된다는 점에서 차이가 있다. 스프링 시큐리티에서 가장 중요한 역할을 하는 존재가 인증을 담당하는 AuthenticationManager(인증 매니저)라는 존재이다. AuthenticationManager는 다양한 방식의 인증을 처리할 수 있도록 설계되어 있다. ProviderManager는 인증에 대한 처리를 AuthenticationProvider라는 타입의 객체를 이용해서 처리를 위임한다. AuthenticationProvider(인증 제공자)는 실제 인증 작업을 진행한다.. Class DelegatingFilterProxy 스프링 시큐리티 스프링 시큐리티는 현재 동작하는 스프링 컨텍스트 내에서 동작하기 때문에 이미 컨텍스트에 포함된 여러 빈들을 같이 이용해서 다양한 방식의 인증 처리가 가능하도록 설계할 수 있다. 필터와 인터셉터 필터와 인터셉터는 특정한 서블릿이나 컨트롤러의 접근에 관여한다는 점에서는 유사하지만 결정적인 차이를 구분하자면 필터는 스프링과 무관하게 서블릿 자원이고, 인터셉터는 스프링의 빈으로 관리되면서 스프링의 컨텍스트 내에 속한다는 차이이다. 일반 필터는 현재 실행되는 서블릿 컨텍스트에 속하긴 하지만 스프링과 무관하다. 반면에 인터셉터의 경우는 스프링의 내부에서 컨트롤러를 호출할 때 관여하기 때문에 스프링의 컨텍스트 내에 있는 모든 자원을 활용할 수 있다. 스프링 시큐리티를 이용하게 되면 인터셉터와 필터를 이용하면서 별도의 컨텍스트를 생성해서 처리된다. 이전 1 2 3 4 다음