[python] 파이썬에서 데이터베이스 접속 정보 보호하기
데이터베이스에 연결할 때 보안은 매우 중요합니다. 파이썬에서 데이터베이스 접속 정보를 안전하게 보호하는 방법에 대해 알아보겠습니다.
1. 환경 변수 사용
데이터베이스 접속 정보를 코드 내에 하드코딩하지 말고, 환경 변수를 이용해 보호하세요. os.environ
을 사용하여 접속 정보를 환경 변수에 저장하고, 코드에서는 환경 변수를 참조하여 접속합니다.
import os
import psycopg2
db_host = os.environ.get('DB_HOST')
db_user = os.environ.get('DB_USER')
db_password = os.environ.get('DB_PASSWORD')
db_name = os.environ.get('DB_NAME')
conn = psycopg2.connect(
host=db_host,
user=db_user,
password=db_password,
dbname=db_name
)
2. dotenv 모듈 사용
python-dotenv 모듈을 사용하여 .env
파일에 데이터베이스 접속 정보를 저장하고, 코드에서는 해당 파일을 읽어와 접속합니다.
from dotenv import load_dotenv
import os
import psycopg2
load_dotenv()
db_host = os.environ.get('DB_HOST')
db_user = os.environ.get('DB_USER')
db_password = os.environ.get('DB_PASSWORD')
db_name = os.environ.get('DB_NAME')
conn = psycopg2.connect(
host=db_host,
user=db_user,
password=db_password,
dbname=db_name
)
3. 암호화
데이터베이스 접속 정보를 암호화하여 저장하고, 암호화된 정보를 사용하여 데이터베이스에 연결합니다. 이를 위해 암호화 모듈을 사용하거나 관리되는 키(Managed Keys) 서비스를 활용할 수 있습니다.
안전한 데이터베이스 연결을 위해 위의 방법들을 활용해 보세요!