Spring을 활용한 프로젝트를 만들다가 보안 이슈가 생겼다.
다른 언어에서는 .env
파일을 만들면 되는데 스프링으로는 처음 해봐서 어떤 분의 블로그를 참고해 에러 없이 성공했다.
env가 필요한 이유는 보안 상의 목적이 제일 큰데 서버 배포 시에 관리자가 알아야 할 정보도 모두 유출되는 것을 막기 위해 보통 사용한다.
src/main/recources/properties
폴더 생성 후 env.properties
파일 생성
env 파일에 적용할 환경변수 적기
env.properties
DB_USERNAME={사용하려는 이름}
DB_PASSWORD={사용하려는 비밀번호}
.gitignore
파일에 작성해서 git에 안 올라가게 하기PropertyConfig
클래스 만들기package com.group.libraryapp.config;
import org.springframework.context.annotation.Configuration;
import org.springframework.context.annotation.PropertySource;
import org.springframework.context.annotation.PropertySources;
@Configuration
@PropertySources({
@PropertySource("classpath:properties/env.properties")
})
public class PropertyConfig {
}
env파일을 연결하고 @Configuration
어노테이션으로 Spring에 설정 클래스로 등록
env 파일 활용 방법