민감한 변수가 있을 때에는 어떻게 해야 할까요? 예를 들어, AWS_SECRET_KEY 같은 것들입니다. 이들을 프로그램의 환경 변수로 불러와서 코드 내에서 노출을 숨기는 방법이 있는데요. python-dotenv를 사용하는 방법을 소개해 드리겠습니다. django라던지 flask는 비슷한 기능을 하는 패키지가 있으니 찾아보시는 것도 도움이 되실 듯 합니다.
먼저, python-dotenv를 설치하겠습니다.
dotenv 내부에는 여러 함수들이 있는데요. 이 중, load_dotenv를 보겠습니다.
설명을 보면, Parse a .env file이라고 되어 있어요. .env 파일을 찾은 다음에, 해당 파일 안에 있는 변수들을 environment 변수에 넣습니다. 즉, dotenv.load_dotenv()를 입력하면, 프로그램의 환경 변수에 .env 파일에 있는 변수들을 추가합니다.
현재 프로젝트의 구조는 위와 같습니다. main.py가 있는 위치에 .env 파일이 있습니다.
.env 파일에는 ENV_VARIABLE=VALUE의 형식으로 들어가거나, ENV_VARIABLE= 형식으로 들어갑니다. FOO=1 BOO=2가 있는데요. 이들을 적절히 파싱한 다음에, environ에 이런 정보를 넣습니다. 변수 FOO의 값은 1이고, BOO의 값은 2이다.
이제 "FOO"와 "BOO"의 환경 변수값을 얻어와 보겠습니다.
1과 2로 잘 나옴을 볼 수 있습니다.
'코딩 > 파이선' 카테고리의 다른 글
파이썬 argparse 예제를 보면서 명령행 인자들을 받아 처리해 봅시다. (0) | 2022.12.22 |
---|---|
왜 python의 pickle에서 언피클을 함부로 하면 안 되는지 알아봅시다. (0) | 2022.12.08 |
poetry add 를 할 때 specific version 으로 package를 깔아 봅시다. (0) | 2022.10.30 |
파이썬 버전 정보를 알아내 봅시다. (0) | 2022.10.21 |
파이썬 parameter default value와 주의할 점을 알아봅시다. (0) | 2022.10.01 |
최근댓글