[python] python-dotenv를 사용하여 로그인 설정하기

많은 애플리케이션에서는 로그인 정보를 환경변수를 통해 설정하는 것이 일반적입니다. 이는 보안상의 이유뿐만 아니라, 코드를 공개 저장소에 올릴 때 실수로 개인 정보를 올리는 것을 방지하기 위한 중요한 방법입니다.

Python에서 이러한 로그인 정보를 쉽게 관리하고 사용할 수 있도록 하는 도구 중 하나는 python-dotenv입니다. 이 도구를 사용하면 .env 파일에 로그인 정보를 저장하고, Python 코드에서 해당 정보를 쉽게 불러와 사용할 수 있습니다.

python-dotenv 설치하기

python-dotenv는 Python 패키지이므로, 먼저 해당 패키지를 설치해야 합니다. 아래의 명령을 이용하여 python-dotenv를 설치합니다.

pip install python-dotenv

.env 파일에 로그인 정보 저장하기

.env 파일은 로그인 정보를 저장하는 파일입니다. 이 파일은 애플리케이션의 루트 디렉토리에 생성하고, 다음과 같은 형식으로 작성합니다.

USERNAME=my_username
PASSWORD=my_password

위의 예시에서는 USERNAMEPASSWORD라는 환경변수를 만들고, 각각의 값을 설정하고 있습니다. 아래는 실제로 사용된다고 가정한 예시입니다.

USERNAME=johndoe
PASSWORD=secretpassword

.env 파일에 저장되는 값들은 민감한 정보이므로, .env 파일을 .gitignore 파일에 추가하여 Git 저장소에 올리지 않도록 주의해야 합니다.

python-dotenv로 로그인 정보 사용하기

이제 .env 파일에 저장된 로그인 정보를 Python 코드에서 사용할 수 있습니다. 먼저 .env 파일의 내용을 불러오기 위해 python-dotenv를 import합니다.

import dotenv

dotenv.load_dotenv()

이렇게 로드한 .env 파일은 os.environ 객체를 통해 접근할 수 있습니다.

import os

username = os.environ.get("USERNAME")
password = os.environ.get("PASSWORD")

print(f"Username: {username}")
print(f"Password: {password}")

위의 코드에서는 USERNAMEPASSWORD 환경변수 값을 각각 변수 usernamepassword에 할당하고, 이를 출력하고 있습니다.

마무리

python-dotenv를 사용하면 로그인 정보와 같은 민감한 데이터를 간편하게 환경변수로 관리할 수 있습니다. 이를 통해 코드의 보안을 강화하고, 개인 정보를 유출하는 위험을 줄일 수 있습니다.