비밀번호 암호화처리 서비스 등록

This commit is contained in:
KNKIM 2021-07-26 10:27:57 +09:00
parent 7bb1898ba4
commit 868ddde0aa

View File

@ -1,66 +1,68 @@
package nlib.cmm.crypto;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.crypto.password.PasswordEncoder;
import egovframework.rte.fdl.cryptography.EgovPasswordEncoder;
import nlib.bbs.web.BoardController;
/**
* <pre>
* @Class Name : NlibPasswordEncoder.java
*
* @Description : 스프링 시큐리티 비밀번호 암호화 처리를 위하여 전자정부 프레임워크의 SHA256 알고리즘 구현체를 사용한 비밀번호 인코더 클래스
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 7. 9. KNKIM 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP KNKIM
* @since 2021. 7. 9.
* @version 1.0
*
*/
public class NlibPasswordEncoder extends EgovPasswordEncoder implements PasswordEncoder {
private static final Logger log = LoggerFactory.getLogger(NlibPasswordEncoder.class);
@Resource(name = "egovEnvPasswordEncoderService")
EgovPasswordEncoder egovPasswordEncoder;
/* 비밀번호를 SHA-256 알고리즘을 사용하여 암호화한다.
*
* (non-Javadoc)
* @see org.springframework.security.crypto.password.PasswordEncoder#encode(java.lang.CharSequence)
*/
@Override
public String encode(CharSequence rawPassword) {
return egovPasswordEncoder.encryptPassword(rawPassword.toString());
}
/* 입력된 비밀번호가 일치하는 확인한다.
* - rawPassword : 입력된 비밀번호로 암호화되지 않은 비밀번호
* - encodedPassword : 암호화된 비밀번호 (사용자DB에서 읽어온 )
*
* (non-Javadoc)
* @see org.springframework.security.crypto.password.PasswordEncoder#matches(java.lang.CharSequence, java.lang.String)
*/
@Override
public boolean matches(CharSequence rawPassword, String encodedPassword) {
return egovPasswordEncoder.checkPassword(rawPassword.toString(), encodedPassword);
}
}
package nlib.cmm.crypto;
import javax.annotation.Resource;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.security.crypto.password.PasswordEncoder;
import org.springframework.stereotype.Component;
import org.springframework.stereotype.Service;
import egovframework.rte.fdl.cryptography.EgovPasswordEncoder;
/**
* <pre>
* @Class Name : NlibPasswordEncoder.java
*
* @Description : 스프링 시큐리티 비밀번호 암호화 처리를 위하여 전자정부 프레임워크의 SHA256 알고리즘 구현체를 사용한 비밀번호 인코더 클래스
*
*
* @프로젝트명: 지방문화원 통합자료관리시스템 구축사업 (2021)
*
* </pre>
*
* @ ------------ -------- ---------------------------
* @ 수정일 수정자 수정내용
* @ ------------ -------- ---------------------------
* @ 2021. 7. 9. KNKIM 최초 생성
*
*
* @author 이씨플라자 * DIGITALSHIP KNKIM
* @since 2021. 7. 9.
* @version 1.0
*
*/
@Component("nlibPasswordEncoder")
public class NlibPasswordEncoder implements PasswordEncoder { /* extends EgovPasswordEncoder */
private static final Logger log = LoggerFactory.getLogger(NlibPasswordEncoder.class);
@Resource(name = "egovEnvPasswordEncoderService")
EgovPasswordEncoder egovPasswordEncoder;
/* 비밀번호를 SHA-256 알고리즘을 사용하여 암호화한다.
*
* (non-Javadoc)
* @see org.springframework.security.crypto.password.PasswordEncoder#encode(java.lang.CharSequence)
*/
@Override
public String encode(CharSequence rawPassword) {
return egovPasswordEncoder.encryptPassword(rawPassword.toString());
}
/* 입력된 비밀번호가 일치하는 확인한다.
* - rawPassword : 입력된 비밀번호로 암호화되지 않은 비밀번호
* - encodedPassword : 암호화된 비밀번호 (사용자DB에서 읽어온 )
*
* (non-Javadoc)
* @see org.springframework.security.crypto.password.PasswordEncoder#matches(java.lang.CharSequence, java.lang.String)
*/
@Override
public boolean matches(CharSequence rawPassword, String encodedPassword) {
return egovPasswordEncoder.checkPassword(rawPassword.toString(), encodedPassword);
}
}