위 에러는 Firebase와 같은 데이터베이스에서 권한 설정이 제대로 되어있지 않음을 나타낸다.
해결방법 : 사용하는 부분에 대한 규칙 확인 및 수정
나는 storage와 realtime database를 사용하고 있었고,
해당 규칙은 다음과 같이 변경하였더니 정상 작동하였다.
어쩐지 알람이 많이 와있었는데, 규칙을 변경하지 않으면 사용을 중지시킬 것이라는 내용이었고,
수정 전 realtime database 규칙은
{
"rules": {
".read": "now < 1712674800000", // 2024-4-10
".write": "now < 1712674800000", // 2024-4-10
}
}
이렇게 적혀있었다.
1. Firebase Realtime Database 규칙 확인 및 수정
{
"rules": {
".read": "auth != null",
".write": "auth != null"
}
}
생성 직후 아무것도 건들지 않았는데, 이 경우 모든 사용자를 차단하는 경우라고 한다.
읽고 쓰기 권한 부여하기 위해 수정해야 한다.
수정 전 : service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read, write: if false;
}
}
} -> 모든 사용자 차단
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
// 인증된 사용자만 읽기 및 쓰기 권한을 가짐
allow read, write: if request.auth != null;
}
}
}
https://firebase.google.com/docs/rules/insecure-rules?hl=ko#storage
물론, 이 부분은 사이트에 고대~로, 잘 나와있다. 해결하고 나면 기가 막히게 잘 보이는 마법