-
환경변수를 활용한 데이터 수집카테고리 없음 2024. 2. 1. 13:52
사전 작업
01. .gitignore 파일 내에 ./stremalit이 존재하는 지 확인
없다면 맨 하단에 '.streamlit/' 작성 후 commit
02. 프로젝트 폴더 내 data 폴더, .env 파일, data_colledction.py 파일 생성
파이썬에서 env 파일을 설정해 API KEY를 숨기는 방법
1. python-dotenv 라이브러리 설치
pip install python-dotenv
2. .env 파일 선택
인증키의 보안 유지를 위해 환경 변수 파일을 별도로 지정해 놓는 것
3. API KEY가 정상적으로 불러와지는지 확인
- python data_collection.py를 실행해서 확인 가능
- None은 값이 없다는 것을 의미
- load를 해야 .env파일이 활성화가 됨
- 다시 python data_collection.py를 실행하면 동일한 인증키가 출력됨
streamlit에서 인증키 저장하는 방법(secret managment)
일반적으로 streamlit 자체에서 제공하는 인증키 저장 방법은 존재하지 않는다.
만일 streamlit을 사용하여 민감한 정보나 인증키를 저장해야 한다면 몇가지 방법 존재한다.
1. 환경 변수 사용
01. share.streamlit.io의 작업 공간에서 "New app"을 선택하고 앱 정보를 입력 후 "Advanced settings..."를 선택
- 비밀값을 입력할 수 있는 창이 나타난다.
- 작성하고자 하는 내용을 TOML 형태로 작성한다.
- 물론 다른 섹션을 추가할 수도 있다.
- 아래처럼 표시된 섹션은 내용은 환경변수로는 사용되지 않지만, streamlit 내에서 쉽게 액세스할 수 있다.2. 비밀값 수정
이미 배포된 앱에 비밀값을 추가하거나 편집해야 하는 경우엔, 관리자 패널 > 고급 설정에서 액세스할 수 있다.
- 오른쪽 상단에 점 세개인 아이콘을 선택 > Settings 이동
- 왼쪽에 Secrets 선택 > 수정 사항 작성 후 Save 버튼 > 업데이트(앱을 재시작하면 값이 반영됨)
03. 로컬에서 비밀값 사용하기
로컬에서 앱을 개발할 때, 앱 레포지토리의 root > .streamlit 폴더 > secrets.toml 파일을 추가해 해당 파일에 비밀값을 입력할 수 있다.
point💡.gitignore 파일에 비밀값이 올라가지 안도록 commit해야 한다.
-> 위의 사전 작업 참고