반응형
스프링 시큐리티
스프링 기반 애플리케이션의 보안을 담당하는 프레임워크입니다.
스프링 시큐리티를 이용해서 웹 애플리케이션의 로그인 할 때
사용자 인증과 로그인 후 권한 부여 작업 등을 효율적으로 구현 가능합니다.
스프링 시큐리티를 사용하기 위해서 다음과 같이 환경 설정을 해주어야 합니다.
pom.xml 파일에 다음과 같이 등록해줍니다.
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>5.6.3</version>
</dependency>
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>5.6.3</version>
</dependency>
스프링 MVC에서 서블릿 필터로 모든 웹 요청에 대한 권한을 확인하도록 서블릿 필터를 등록해줍니다.
web.xml 파일에 다음과 같이 등록해줍니다.
<filter>
<filter-name>springSecurityFilterChain</filter-name>
<filter-class>org.springframework.web.filter.DelegatingFilterProxy</filter-class>
</filter>
<filter-mapping>
<filter-name>springSecurityFilterChain</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
또한, web.xml 파일에 스프링 시큐리티 설정 파일을 등록해주어야 합니다.
<context-param> 요소에 시큐리티 설정 파일을 등록합니다.
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/root-context.xml
/WEB-INF/spring/security-context.xml
</param-value>
</context-param>
스프링 시큐리티 태그
시큐리티 태그는 접근 권한을 위한 태그와 사용자 권한을 위한 태그로 분류 가능합니다.
접근 권한 태그는 허가된 사용자만 특정 페이지에 접근 가능하고
인증을 처리하는 로그인 페이지를 호출하거나 로그아웃을 처리할 때 사용합니다.
사용자 권한 태그는 인증을 처리하기 위해 사용자 정보를 가져올 때 사용합니다.
다음은 주요 시큐리티 태그의 종류입니다.
태그 | 설명 |
<http> | 시큐리티 시작과 끝을 나타낼 때 사용 |
<intercept-url> | 시큐리티가 감시해야 할 URL과 그 URL에 접근 가능한 권한 정의 시 사용 |
<form-login> | 로그인 관련 설정을 하는 데 사용 |
<logout> | 로그아웃 관련 설정을 하는 데 사용 |
<authentication-manager> | 사용자 권한 서비스의 시작과 끝을 나타낼 때 사용 |
<authentication-provider> | 사용자 정보를 인증 요청하는 데 사용 |
<user-service> | 사용자 정보를 가져오는 데 사용 |
<user> | 사용자 정보를 나타내는 데 사용 |
반응형
'SPRING' 카테고리의 다른 글
[SPRING]#21 도서 쇼핑몰 구현 (스프링 시큐리티3) (0) | 2024.01.10 |
---|---|
[SPRING]#20 도서 쇼핑몰 구현 (스프링 시큐리티2) (0) | 2024.01.09 |
[SPRING]#18 도서 쇼핑몰 구현 (커스텀 데이터 바인딩) (0) | 2024.01.09 |
[SPRING]#17 도서 쇼핑몰 구현 (데이터 바인딩3) (0) | 2024.01.08 |
[SPRING]#16 도서 쇼핑몰 구현 (데이터 바인딩2) (0) | 2024.01.08 |