티스토리 뷰

시작하기 앞서, 내가 EnvironmentPostProcessor 인터페이스를 사용하게 된 이유는 다음과 같다.

application.yml 파일에 KMS 키를 활용한 암호화 된 정보인 환경변수가 있었다.

그리고 해당 정보는 어플리케이션이 구동되기 전에 복호화가 되어야 했다.

 

application.yml 예시

spring:
  datasource:
    username: #{cipherText}

 

 

정의

Allows for customization of the application's Environment prior to the application context being refreshed.

 

사용 방법

  1. classpath 하위 경로에 META-INF/spring.factories 파일을 생성한다.
    • classpath:/META-INF/spring.factories
  2. spring.factories 파일에 EnvironmentPostProcessor 구현체를 등록한다.
    • ex) org.springframework.boot.env.EnvrionementPostProcessor=EnvironmentPostProcessor구현체 경로(패키지포함)

아래 사진으로 쉽게 파악하자.

 

설정이 완료 되었다면, EnvironmentPostProcessor 구현체에 원하는 기능을 구현하면 된다.

나는 KMS 키를 활용하여 암호화된 환경변수를 복호화 하여 application.yml 의 정보를 재 설정해주었다.

 

참고

https://docs.spring.io/spring-boot/docs/current/api/org/springframework/boot/env/EnvironmentPostProcessor.html

'Framework > Spring' 카테고리의 다른 글

[JPA] View Table  (0) 2022.07.28
[JPA] Composite Key  (0) 2022.07.22
[Spring] JUnit  (0) 2022.07.20
[Spring] AOP  (0) 2022.06.14
[Spring] Spring Framework란  (0) 2022.06.12
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함