반응형
gradle 추가
compile "com.github.ulisesbocchio:jasypt-spring-boot-starter:1.17"
configure bean 생성
@Configuration
public class JasyptConfig {
@Bean("jasyptStringEncryptor")
public StringEncryptor stringEncryptor() {
PooledPBEStringEncryptor encryptor = new PooledPBEStringEncryptor();
SimpleStringPBEConfig config = new SimpleStringPBEConfig();
config.setPassword("test"); //암호화에 사용할 키 -> 중요
config.setAlgorithm("PBEWithMD5AndDES"); //사용할 알고리즘
config.setKeyObtentionIterations("1000");
config.setPoolSize("1");
config.setProviderName("SunJCE");
config.setSaltGeneratorClassName("org.jasypt.salt.RandomSaltGenerator");
config.setStringOutputType("base64");
encryptor.setConfig(config);
return encryptor;
}
}
이 로직으로 암호화 동작 시킴
메인 run 함수에 심어서 crypto 만들고 로직 제거하는 방법으로 함.
StandardPBEStringEncryptor pbeEnc = new StandardPBEStringEncryptor();
pbeEnc.setAlgorithm("PBEWithMD5AndDES");
pbeEnc.setPassword("test"); //2번 설정의 암호화 키를 입력
String enc = pbeEnc.encrypt("1234"); //암호화 할 내용
System.out.println("enc = " + enc); //암호화 한 내용을 출력
//테스트용 복호화
String des = pbeEnc.decrypt(enc);
System.out.println("des = " + des);
application property에 추가
jasypt.encryptor.bean = jasyptStringEncryptor
암호화 결과를 이런식으로 ENC안에 써서 적용.
spring.mail.password=ENC(A9bHcXqLsCfRnxjDKaa5PqtKe35kL+6I)
반응형
'HealRo Project' 카테고리의 다른 글
Spring Boot http/https protocol 확인 (0) | 2020.07.26 |
---|---|
Web Application WebView 적용 (0) | 2020.07.22 |
SpringBoot Email 전송 기능 (Gmail) (0) | 2020.06.01 |
Naver Map 마커 심기 (0) | 2020.04.16 |
Map 최초 위치 (0) | 2020.04.15 |