본문 바로가기

SpringFramework/설정

SpringFramework Security 비밀번호 암호화하기

pom.xml


        <!-- spring security-->
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-core</artifactId>
            <version>${org.springframework-security-version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-web</artifactId>
            <version>${org.springframework-security-version}</version>
        </dependency>
        <dependency>
            <groupId>org.springframework.security</groupId>
            <artifactId>spring-security-config</artifactId>
            <version>${org.springframework-security-version}</version>
        </dependency>

web.xml

<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
  /WEB-INF/applicationContext.xml
  /WEB-INF/spring-security.xml
  </param-value>
</context-param>

spring-security.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"
       xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd">

    <bean id="bcyrptPasswordEncoder" class="org.springframework.security.crypto.bcrypt.BCryptPasswordEncoder" />

 </beans>

XXXController.java


    @Autowired
    BCryptPasswordEncoder passwordEncoder;


<!-- 회원가입시 -->
memberDTO.setPassword(passwordEncoder.encode(memberDTO.getPassword()));

<!-- 로그인시 -->
boolean passwordMatch = passwordEncoder.matches(memberDTO.getPassword(), userDTO.getPassword());