05의 개발 계발

[TIL] 230407 [Python] [Django] Secret_Key 를 gitignore하기 본문

TIL

[TIL] 230407 [Python] [Django] Secret_Key 를 gitignore하기

생각하는 코댕이 2023. 4. 7. 22:31
728x90

TIL 학습목표

  • Python Django 초기 세팅 시 gitignore 사용법을 안다.
  • Secret_Key를 gitignore 에 추가할 수 있다.

1) 문제점 (Problem)

python django 를 사용 후 github에 업로드를 하니, 다음과 같이 이메일이 왔다.

github에 public으로 노출되면 안 되는 보안키(여기서는 Secret_Key) 를 업로드 했다고 경고문이 떴다.

gitignore.io에서 django를 추가하였지만, gitignore에서 자동으로 걸러주지 못했다.


2) 시도해본 것들 (Try)

python-decouple 모듈을 사용 - 참고

작업순서 작업위치 명령어/비고
python-decouple 모듈 설치 bash pip install python-decouple
.env 파일생성 .gitignore 와 동일 dir SECRET_KEY=<실제시크릿key>
config import 프로젝트 settings.py from decouple import config
시크릿key 변수로 표현 프로젝트 settings.py SECRET_KEY = config("SECRET_KEY")

▶튜터님의 영상 참고


이미 SECRET_KEY가 노출 되었다면?!

python -c "from django.core.management.utils import get_random_secret_key; print(get_random_secret_key())"

재발급을 받자!


3) 해결 (Solution)

.env를 만들어 따로 관리해주었다

기본적을 .gitignore에는 환경변수들을 관리하는 곳에 .env가 있다. 이를 활용하여 django에서 보안과 관련된 정보들을 따로 담아 관리해줄 수 있다.

 


4) 알게 된 점  (Learnd)

DB를 사용하는 경우 필수적으로 접근권한과 관련된 보안 정보들이 존재하게 된다.
admin 으로 접속하여 제어할 수 있는 만큼 보안 부분에 주의가 필요하다.
이번 경험으로 백엔드 개발자로서 보안에 대한 관리의 중요성도 되짚어 보게 되는 계기가 되었다.

728x90