파이어베이스를 이용해서 만든 이커머스 사이트 프로젝트를 오랜만에 npm start 를 해보았다....
반가운 화면이 날 맞이 해줬다. 왜!?
Permission denied
at http://localhost:3001/static/js/vendors-node_modules_uuid_dist_esm-browser_v4_js-node_modules_firebase_app_dist_esm_index_esm-3ca348.chunk.js:21397:27
at async http://localhost:3001/static/js/src_App_js.chunk.js:149:31
ERROR
Permission denied
at http://localhost:3001/static/js/vendors-node_modules_uuid_dist_esm-browser_v4_js-node_modules_firebase_app_dist_esm_index_esm-3ca348.chunk.js:21397:27
at async http://localhost:3001/static/js/src_App_js.chunk.js:149:31
이러한 오류가 발생했다고 한다. 아니 며칠전까지 멀쩡하게 잘 돌아가던 사이트에서 뭔 일이야...ㅆ
아무튼 무슨 오류인지 찾아보니, 해당 오류 메시지는 Firebase와 관련된 작업을 수행하려 할 때 발생한 "Permission denied" 오류란다.
Firebase의 보안 규칙 때문에 발생한 것으로 보인다. Firebase에서 데이터를 읽거나 쓰려고 할 때 적절한 권한이 없다면 이러한 오류가 발생한다.
해당 원인에 대한 보안 규칙 설정을 살펴봤다.
Realtime Database에서 보안 규칙을 살펴보니 read와 write 권한이 주석처리 되었음이 확인되었다.
권한들을 모든 "true"로 바꿔주면 해결된다.
갑자기 권한이 왜 바뀌었는지는 알 수 없다.
하지만 이렇게 수정하면 모든 사람이 새 데이터베이스를 읽고 쓸 수 있기에 다시 안전하게 보호하는 방법을 구상해 봐야겠다.
'ETC' 카테고리의 다른 글
Cookies, Session, Cache에 대해 알아보자.(2) (2) | 2024.10.31 |
---|---|
웹(WEB)이란 (1) | 2024.06.12 |
전통적인 백엔드 스택과 서버리스에 관하여 (0) | 2024.04.18 |
4가지 렌더링 방식 (0) | 2024.04.11 |
Cookies, Session, Cache에 대해 알아보자.(1) (0) | 2023.11.03 |