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