[python] python-dotenv를 사용하여 인증 정보 설정하기

개발하면서 보통 인증 정보를 코드에 하드코딩해서 사용하는 것은 좋은 방법이 아닙니다. 개인적인 정보를 코드에 넣으면 코드를 공유하거나 업로드할 때 보안상의 문제가 발생할 수 있기 때문입니다. 이를 해결하기 위해 Python 프로젝트에서는 python-dotenv와 같은 패키지를 사용하여 인증 정보를 외부 파일에서 설정하는 것을 권장합니다.

python-dotenv란?

python-dotenv는 Python 프로젝트에서 환경 변수를 관리하기 위한 패키지입니다. 이 패키지를 사용하면 .env라는 파일에 인증 정보와 같은 환경 변수들을 설정한 후, 코드에서 이를 불러와 사용할 수 있습니다.

설치

python-dotenv를 설치하기 위해서는 pip 명령어를 사용합니다. 터미널에서 다음 명령어를 실행합니다:

pip install python-dotenv

사용 방법

  1. 프로젝트의 루트 디렉토리에 새로운 파일 .env를 생성합니다. 이 파일에 인증 정보를 저장합니다.

  2. .env 파일에 인증 정보를 설정합니다. 예를 들어, 다음과 같이 작성할 수 있습니다:

USER_NAME=myuser
PASSWORD=mypassword
API_KEY=myapikey
  1. Python 코드에서 dotenv를 사용하여 인증 정보를 로드합니다. 다음과 같이 코드를 작성할 수 있습니다:
from dotenv import load_dotenv
import os

# .env 파일 로드
load_dotenv()

# 인증 정보를 환경 변수로부터 불러오기
username = os.getenv("USER_NAME")
password = os.getenv("PASSWORD")
api_key = os.getenv("API_KEY")

# 사용 예시
print("Username:", username)
print("Password:", password)
print("API Key:", api_key)

위 코드에서는 load_dotenv() 함수를 사용하여 .env 파일을 로드하고, os.getenv() 함수를 사용하여 환경 변수로부터 인증 정보를 불러옵니다. 이후에는 username, password, api_key와 같이 변수에 불러온 인증 정보를 저장하여 사용할 수 있습니다.

결론

python-dotenv를 사용하면 Python 프로젝트에서 인증 정보를 안전하게 관리할 수 있습니다. 인증 정보를 코드에 하드코딩하지 않고 외부 파일에 저장하여 보안상의 문제를 방지할 수 있습니다. 또한, .env 파일을 통해 쉽게 인증 정보를 관리하고 변경할 수 있으므로 유지보수를 용이하게 할 수 있습니다.

참고 문서