비밀정보 보호하기 - DB 비밀번호 보호하기
위 사진처럼 DB를 연결하였는데, 이대로 git에 올린다면 아이디와 비밀번호가 그대로 노출될 것이다.
파일 하나를 만들어서 그곳에 DB URI를 써주고 가져올 수 있도록 한다.
dev.js : 이 파일안에 DB URI를 써주고 local 환경에서 가져올 수 있도록 한다. ( development / 개발모드! )
prod.js : 웹사이트 Heroku 에서 DB URI를 가져올 수 있도록 한다. ( production / 배포후! )
heroku 사이트에다가 URI를 저장해서 여기서 가져올 수 있도록! heroku에서 관리해준다.
그래서 local환경에서와 production 환경에서 가져올 수 있도록 나누어서 생각 해줘야 한다.
key.js는 환경 변수 process.env.NODE_ENV을 이용해 내가 개발 모드인지 배포후인지를 구분해 맞는 환경에 따라 URI를 가져 올 수 있도록 한다.
만약 우리가 개발하고 있는것이 development모드라면 process.env.NODE_ENV가 development모드라고 나오고,
production모드라면 process.env.NODE_ENV가 production모드라고 나온다.
production 모드라면 prod파일로 보내주고, 아니라면 dev파일로 보내준다.
index.js에서 DB URI를 노출하지 않게되었다!
dev.js에는 URI가 담겨있기 때문에 git에 올라가면 안된다. 그래서 gitignore에 dev.js파일을 넣어주었다.
이제 commit을 하면 dev.js파일은 제외된 것을 볼 수 있을 것이다.