기록
  • Day 3 - 클론 코딩 시작
    2024년 09월 07일 21시 24분 43초에 업로드 된 글입니다.
    작성자: 삶은고구마

    파이어베이스 비밀키 숨기기


    1.파이어베이스 비밀키 숨기기

    day 2에서 작성한 아래의 코드 firebaseConfig에서 보안상의 문제로 키값을 감춰야함.

    import firebase from "firebase/app";
     
    const firebaseConfig = {
      ..생략..
    };
     
    export default firebase.initializeApp(firebaseConfig);

     

     

    How?

    .env 파일 생성

    .env 파일에 비밀키 변수 등록

    비밀키가 필요할 때 참조하도록 하기

    .env파일 업로드만 하지 않는다면 노출을 방지할 수 있음

     

    1).env파일로 환경 변수 설정하기

    .env파일을 package.json 루트에 생성하기 (반드시 점 포함)

    2).env파일 숨기기

    .env파일은 깃허브에 업로드 되지 않도록 설정해야함

    .gitignore 파일을 이용하면 된다. .env 추가하면 된다.

    # misc
    .DS_Store
    #.env추가
    .env 
    .env.local
    .env.development.local
    .env.test.local
    .env.production.local

     

    3)friebaseConfig.js에 환경변수 적용하기

    firebase.js에 쌩으로 적혀있던 키값들을 .env 파일에 적어둔 변수로 변경한다.

    process.env는 .env 파일을 읽어 해당 변수를 사용한다는 의미이므로 꼭 붙여야함.

    *완벽한 보안은 아니지만 github 업로드를 방지하는것만으로도 위협을 줄일 수있음.

     

    +오늘 오류가 나서 확인해보니 appId에서 변수값 앞에 process.env.를 붙이지 않아 에러발생.

    참조할 수 없는 변수라 에러가 났다.

    import firebase from "firebase/compat/app";
    
    const firebaseConfig = {
      apiKey: process.env.REACT_APP_API_KEY,
      authDomain: process.env.REACT_APP_AUTH_DOMAIN,
      projectId: process.env.REACT_APP_PROJECT_ID,
      storageBucket: process.env.REACT_APP_STORAGE_BUCKET,
      messagingSenderId: process.env.REACT_APP_MESSAGING_SENDER_ID,
      appId: process.env.REACT_APP_APP_ID
    };
    
    export default firebase.initializeApp(firebaseConfig);

    '공부 > 클론코딩' 카테고리의 다른 글

    Day 7 - 깃허브 작업  (0) 2024.09.12
    Day 7 - 누이터 서브 기능 만들기  (1) 2024.09.12
    Day 5 - 로그인 기능 구현하기 1  (0) 2024.09.09
    Day 4 - 클론 코딩 시작 2  (2) 2024.09.09
    Day 2 - 설치 및 준비 2  (0) 2024.09.06
    댓글