[Etc.]Git 저장소 민감 정보 숨기기

김피자·2023년 4월 13일
0

etc.

목록 보기
6/10

개요

많은 사람들이 소스 코드 버전 관리나 협업을 위해 Git을 사용하고 있다. 하지만 Git으로 관리되는 프로젝트는 종종 커밋하면 안 되는 파일들이 포함될 수 있다. (보안상 위험하거나, 개인 정보를 포함하거나, 컴파일러에 의해 생성된 중간 파일 등)

보안상 위험한 파일이 Git에 Push되면 해커한테 탈탈 털릴 수 있다.

중요 정보가 담긴 파일(ex) DB접속 정보)이 Git에 Push 되지않도록 지정하려면 .gitignore을 사용해야 한다.


.gitignore

.gitignore 파일은 Git이 무시해야 하는 파일 및 디렉토리 목록을 포함하는 파일이다. gitignore 파일을 사용하면, 불필요한 파일들이 저장소에 올라가는 것을 방지하고, 프로젝트에 대한 보안 및 개인 정보 보호를 강화할 수 있다. 또한, 불필요한 파일들을 추적하지 않기 때문에 Git 저장소의 크기를 줄일 수 있어, 코드 리뷰 및 협업 작업도 더욱 수월해진다.


내 경우 DB접속 정보가 Git에 올라가지 않도록 설정했다.

1. src/main/resources에서 new > Resource Bundle 클릭


application.properties에 있는 DB접속 정보(숨길 정보)를 따로 관리하기위해 properties 파일을 새로 하나 생성한다.

2. "application-이름" 입력


application-임의로지정할 이름 (위 그림에서는 jelly)을 입력한다.

.properties라고 뒤에 따로 적지않았는데도 자동으로 입력되어 파일이 생성된 것을 볼 수 있다.

3. application-jelly.properties에 DB정보 입력

#datasource 
spring.datasource.driver-class-name=
spring.datasource.url=
spring.datasource.username=
spring.datasource.password=

DB 정보를 모두 application-jelly.properties에 입력했다.

4. application.properties에 DB 정보 지우기 및 추가

application-jelly.properties에 DB 정보를 입력했으니 이제 기존 application.properties에 있던 DB 정보를 지워주자.

다 지웠다면 application.properties가 새로 만든 application-jelly.properties를 호출하여 사용할 수 있도록 명시해준다.

# application.properties에 추가
spring.profiles.include=jelly

5. .gitignore에 등록하기


이제 .gitignore 파일 설정을 통해 커밋 시 민감정보가 담긴 application-jelly.properties가 올라가지 않도록 명시한다.

# .gitignore에 추가
application-jelly.properties

6. 서버 실행하기

모두 완료한 후, 스프링 서버가 정상적으로 실행된다면 성공!!

profile
제로부터시작하는코딩생활

0개의 댓글