У меня есть файлы, которые я хочу сохранить в безопасности, после того как администратор загрузит файл в хранилище, только он и пользователь, с которым он делится файлом, получат доступ к ссылкам для загрузки этого файла. Следовательно, в правилах пожарного магазина я добавил следующее:
match /users/{userID} {
allow read: if isOwner(userID) || isAdmin();
allow write: if isOwner(userID) || isAdmin();
}
/// FUNCTIONS BELLOW ///
function isAdmin() {
return get(/databases/$(database)/documents/users/$(request.auth.uid)).data.IsAdmin;
}
Однако когда я пытался добавить те же правила в Firestorage, доступ постоянно отказывался.
service firebase.storage {
match /b/{bucket}/o {
match /{allPaths=**} {
allow read: if isAdmin();
allow write: if isAdmin();
}
/// FUNCTIONS BELLOW ///
function isAdmin() {
return get(/databases/$(database)/documents/users/$(request.auth.uid)).data.IsAdmin;
}
}
}
Метод get Firestorage работает иначе, чем метод get Firestore?
Любая помощь будет высоко ценится.