Проблема с разрешением на удаление правил пожарного депо - PullRequest
0 голосов
/ 15 апреля 2020

В настоящее время у меня есть следующие проблемы ... Я пытаюсь дать разрешения на удаление, и это не возможно, это дает мне недостаточно разрешений

rules_version = '2';

function isAdmin(request) {
  return request.auth.uid == 'UID-ADMIN'
}
function sameUser(request, resource) {
  return request.auth.uid == resource.data.uid
}

match /accounts/{account} {
 allow create: if request.auth.uid != null;
 allow read, delete: if sameUser(request, resource) || isAdmin(request);
}

// return Missing or insufficient permissions. Only try delete

Я не понимаю, почему с этим делает чтение без проблем, но при попытке устранить, я получаю сообщение об ошибке ...

Я пытался ...

// return Missing or insufficient permissions.

allow read, delete: if sameUser(request, resource) || isAdmin(request);
// -
allow delete: if sameUser(request, resource));
// -
allow delete: if request.auth.uid == resource.data.uid

Теперь, почему с таким же правилом позволяет мне читать, но выиграл не позволите мне удалить? Это не правильно?

Вот ошибка, которую я всегда получаю:

FirebaseError: Missing or insufficient permissions.
    at new FirestoreError (webpack-internal:///./node_modules/@firebase/firestore/dist/index.cjs.js:351:28)
    at JsonProtoSerializer.fromRpcStatus (webpack-internal:///./node_modules/@firebase/firestore/dist/index.cjs.js:15666:16)
    at JsonProtoSerializer.fromWatchChange (webpack-internal:///./node_modules/@firebase/firestore/dist/index.cjs.js:16179:44)
    at PersistentListenStream.onMessage (webpack-internal:///./node_modules/@firebase/firestore/dist/index.cjs.js:12804:43)
    at eval (webpack-internal:///./node_modules/@firebase/firestore/dist/index.cjs.js:12733:30)
    at eval (webpack-internal:///./node_modules/@firebase/firestore/dist/index.cjs.js:12773:28)
    at eval (webpack-internal:///./node_modules/@firebase/firestore/dist/index.cjs.js:1694:20)
...