Jasypt 기반 SpringBoot 설정 파일 암호 화
jasypt 도입
<dependency>
<groupId>com.github.ulisesbocchio</groupId>
<artifactId>jasypt-spring-boot-starter</artifactId>
<version>2.0.0</version>
</dependency>
암호 화 할 문자열 생 성데이터베이스 의 사용자 이름과 비밀 번 호 를 암호 화 합 니 다.
public static void main(String[] args) {
BasicTextEncryptor textEncryptor = new BasicTextEncryptor();
// salt( )
textEncryptor.setPassword("G0CvDz7oJn6");
// ( )
String username = textEncryptor.encrypt("root");
String password = textEncryptor.encrypt("root123");
System.out.println("username:"+username);
System.out.println("password:"+password);
}
출력 정보:
username:i8QgEN4uOy2E1rHzrpSTYA==
password:6eaMh/RX5oXUVca9ignvtg==
또는 Maven 에서 다운로드 한 jar 패키지 로 암호 화\Maven\org\jasypt\\jasypt\1.9.2\\jasypt-1.9.2.jar
java -cp jasypt-1.9.2.jar org.jasypt.intf.cli.JasyptPBEStringEncryptionCLI password=G0CvDz7oJn6 algorithm=PBEWithMD5AndDES input=root
출력 정보:
----ENVIRONMENT-----------------
Runtime: Oracle Corporation Java HotSpot(TM) 64-Bit Server VM 25.171-b11
----ARGUMENTS-------------------
input: root
algorithm: PBEWithMD5AndDES
password: G0CvDz7oJn6
----OUTPUT----------------------
Gvkoz+sbFWiRe3ECtizV1A==
복사.-아웃 풋.-결 과 를 복사 하면 됩 니 다.프로 퍼티 설정 파일
생 성 된 암호 화 문자열 설정 ENC(암호 화 문자열)를 application.properties 에 설정 합 니 다.
# salt( )
jasypt.encryptor.password=G0CvDz7oJn6
# PBEWithMD5AndDES, PBEWithMD5AndTripleDES
# jasypt.encryptor.algorithm=PBEWithMD5AndDES
spring.datasource.username=ENC(6eaMh/RX5oXUVca9ignvtg==)
spring.datasource.password=ENC(6eaMh/RX5oXUVca9ignvtg==)
암호 화 방식 에 대응 하 는 클래스 는 Basic TextEncryptor 와 StrongTextEncryptor 입 니 다.
public BasicTextEncryptor() {
super();
this.encryptor = new StandardPBEStringEncryptor();
this.encryptor.setAlgorithm("PBEWithMD5AndDES");
}
public StrongTextEncryptor() {
super();
this.encryptor = new StandardPBEStringEncryptor();
this.encryptor.setAlgorithm("PBEWithMD5AndTripleDES");
}
아 날로 그 그래프
배치 시 salt(소금)값 설정
salt(소금)유출 을 방지 하기 위해 비밀 번 호 를 되 풀 수 있 습 니 다.프로젝트 배치 시 명령 을 사용 하여 salt(소금)값 을 전송 할 수 있 습 니 다.
java -jar -Djasypt.encryptor.password=G0CvDz7oJn6 xxx.jar
또는 서버 환경 변수 에 설정 하여 안전성 을 향상 시 킵 니 다./etc/profile 파일 열기
vim /etc/profile
파일 끝 삽입
export JASYPT_PASSWORD = G0CvDz7oJn6
컴 파일
source /etc/profile
운행 하 다.
java -jar -Djasypt.encryptor.password=${JASYPT_PASSWORD} xxx.jar
공식 주소: https://github.com/ulisesbocchio/jasypt-spring-boot 이상 이 바로 본 고의 모든 내용 입 니 다.여러분 의 학습 에 도움 이 되 고 저 희 를 많이 응원 해 주 셨 으 면 좋 겠 습 니 다.
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
SpringBoot 는 jasypt 를 사용 하여 비밀 번 호 를 복호화 하 는 방법 입 니 다.jasypt 은 일반적인 복호화 라 이브 러 리 입 니 다.설정 파일 에서 데이터베이스 암 호 를 암호 화하 여 안전성 을 확보 할 수 있 습 니 다. 1.주입 의존 2.프로필 그렇다면 어떻게 이 밀 서 를 얻 었 ...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.