Search code examples
javascriptgoogle-cloud-firestorefirebase-security

FirebaseError: Missing or insufficient permissions. for update or create


Here is my security rule in my Firebase db:

rules_version = '2';
service cloud.firestore {
  match /databases/{database}/documents {
    match /links/{linkId} {
      allow update, create: if request.auth.uid;
    }
  }
}

Here is my JS using version 9 of Firebase:

const db = getFirestore()
await addDoc(collection(db, "links"), {
    title: 'my link title'
})

I'm 100% certain that I am currently signed in. Just before my addDoc code, this is correctly logging the current user's uid:

const { getAuth } = await import('firebase/auth');
console.log(getAuth().currentUser.uid)

Solution

  • Change your security rule to:

    allow update, create: if request.auth.uid != null;