728x90
1.메이븐 레파지토리 접속
https://mvnrepository.com/search?q=spring-security
pom.xml Security Core,Web,Config 설정
<!-- 암호화를 위한 모듈-->
<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-core -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-core</artifactId>
<version>${org.springsecurity-version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-web -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-web</artifactId>
<version>${org.springsecurity-version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework.security/spring-security-config -->
<dependency>
<groupId>org.springframework.security</groupId>
<artifactId>spring-security-config</artifactId>
<version>${org.springsecurity-version}</version>
</dependency>
버전을 맞추기 위해 pom.xml에 properties 설정
<properties>
<org.springsecurity-version>5.8.4</org.springsecurity-version>
</properties>
security-context.xml 생성
<?xml version="1.0" encoding="UTF-8"?>
<beans xmlns="http://www.springframework.org/schema/beans"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xmlns:security="http://www.springframework.org/schema/security"
xmlns:context="http://www.springframework.org/schema/context"
xsi:schemaLocation="http://www.springframework.org/schema/security http://www.springframework.org/schema/security/spring-security-5.8.xsd
http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd
http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-4.3.xsd">
<!-- 패스워드암호화를 제공하는 클래스를 빈으로 등록하기 -->
<bean id="bcryptPassword" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder"/>
</beans>
web.xml에 /WEB-INF/spring/security-context.xml 설정
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
<!-- root-context.xml에 스프링 빈 등록 -->
/WEB-INF/spring/root-context.xml
/WEB-INF/spring/security-context.xml
</param-value>
</context-param>
컨트롤러에 의존성 주입해서 사용
private final BCryptPasswordEncoder passwordEncoder;
(필드에 의존성 주입)
@PostMapping("/enrollmemberend.do")
public String enrollmemberend(Member m,Model model) {
//BCryptPasswordEncoder클래스가 제공하는 메소드를 이용해서 단방향 암호화하기
//encode()메소드를 이용
String oriPw=m.getPassword();
String encPw=passwordEncoder.encode(oriPw);
m.setPassword(encPw);
암호화할 클래스에 passwordEncoder.encode 메소드를 이용해서 암호화 처리
끝!
'스프링' 카테고리의 다른 글
ajax 응답/처리 (0) | 2023.12.14 |
---|---|
인터셉터 이용하기 (0) | 2023.12.11 |
스프링 MyBatis 구현하기 (0) | 2023.12.11 |
Hibernate-validator 구현 (0) | 2023.12.11 |
스프링 초기설정 (0) | 2023.12.06 |