hotamul의 개발 이야기

[hotamul] json으로 Django secret key 관리 하기 본문

project/share-blog

[hotamul] json으로 Django secret key 관리 하기

hotamul 2022. 9. 27. 00:17

현재 app.config.settings.base 모듈에 django의 기본 설정 정보들이 담겨있다.

django의 SECRET_KEY가 github repository에 공개 되지 않게 하기 위에 아래와 같이 json 파일에서 해당 key 값을 가져오도록 코드를 작성했다.

SECRET_FILE_PATH = os.path.join(BASE_DIR, 'secrets.json')
with open(SECRET_FILE_PATH) as f:
    secrets = json.loads(f.read())

def get_secret(setting):
    """비밀 변수를 가져오거나 명시적 예외를 반환한다."""
    try:
        return secrets[setting]
    except KeyError:
        error_msg = "Set the {} environment variable".format(setting)
        raise ImproperlyConfigured(error_msg)


SECRET_KEY = get_secret("SECRET_KEY")

물론 secrets.json 파일은 형상 관리가 되면 안된다.

Comments