Spring/Spring: 정리
[Spring] 스프링 시큐리티 개요 정리
데브마우스
2024. 1. 22. 09:09
스프링 시큐리티는 무엇인가요?
스프링 시큐리티는 스프링에서 제공하는 시큐리티(Security, 보안) 프레임워크로 인증(누구에게 인증을?)과 권한(무슨 권한을?) 담당합니다.
스프링 시큐리티 프레임워크 사용 시, 자동으로 제공하는 로그인 페이지를 통해서 아이디와 비밀번호로 로그인 후 사용자를 인증(Authentication)하고 접근 가능한 경로 및 권한 부여(Authorization) 작업을 설정할 수 있습니다.
스프링 시큐리티를 어떻게 사용하나요?
스프링 시큐리티를 사용하기 위해서는 아래의 과정을 거칩니다.
1. pom.xml 파일에 의존 라이브러리 등록하기
필요 라이브러리는 아래와 같습니다.
spring-security-web.jar: 필터 및 웹 보안 인프라 관련 코드가 포함되어 있습니다. URL 기반 액세스를 제어할 때 필요한 모듈입니다. 기본 패키지는 org.springframework.security.web입니다.
spring-security-config.jar: 보안 네임 스페이스 구문을 분석하는 코드가 포함되어있습니다. 기본 패키지는 org.springframework.security.config입니다.
<!-- Spring Security -->
<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>
2. web.xml 파일에 시큐리티 필터 등록하기
<!-- 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>
3. web.xml 파일에 스프링 시큐리티 설정 파일 등록하기
<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>