본문 바로가기
개발 일지

[Django 배포] 장고 배포 전 시크릿 키 숨기기

by 그랴 2022. 7. 20.

1. secrets.json 파일 만들기

 

project 최상위 폴더에 만들어두면 되는 듯?

ex) project > project,app ,,,, 이렇게 폴더 들이 있으면 맨 위의 project 폴더

일단 만들어만 놓고

 

2. settings.py 파일에서 secret key 복사해오기

 

24번째 줄 정도에 

SECRET_KEY = ~~~~~ 해서 있는 거 복사 해오기

 

3. secrets.json 파일에 붙여넣기

{
  "SECRET_KEY": "복사해 온 secret key"
}

 

4. settings.py 수정하기

secret key는 옮겨두었으니 삭제하고 아래 코드로 교체해주기

import json
import os
from pathlib import Path
from django.core.exceptions import ImproperlyConfigured


secret_file = os.path.join(BASE_DIR, 'secrets.json')

with open(secret_file) as f:
    secrets = json.loads(f.read())

def get_secret(setting, secrets=secrets):
    try:
        return secrets[setting]
    except KeyError:
        error_msg = "Set the {} environment variable".format(setting)
        raise ImproperlyConfigured(error_msg)

SECRET_KEY = get_secret("SECRET_KEY")

5. .gitignore 파일에도 secrets.json 추가해주기

gitignore 파일 쓰는 법 참고

https://www.toptal.com/developers/gitignore

 

gitignore.io

Create useful .gitignore files for your project

www.toptal.com