Мы создаем мультитенантное приложение в Azure, которое должно разделять данные между пользователями / арендаторами.
Каждый арендатор будет загружать / сохранять различные документы (в основном файлы Excel и CSV), а затем иметь возможность использовать / извлекать их в приложении в качестве входных файлов для ряда расчетов ..
Я представляю себе такую структуру:
+ users/
|-+ {uid}/
| | — profile_picture.jpg
| |-+ input_data/
| | | — {input_data_id}.xlsx
В облачном хранилище, используя правила безопасности Firebase, мы можем защитить тех, кто может выполнять какие операции над объектами, хранящимися по разным путям, с помощью правила, подобного следующему.
rules_version = "2";
service firebase.storage {
match /b/{bucket}/o {
match /users/{userId}/input_data/{input_data_id} {
allow get: if request.auth.uid == userId ||
allow list, write: if request.auth.uid == userId;
}
}
}
Есть ли эквивалентный ресурс в лазури, который может сделать что-то вроде firestore;
- Соответствие правилам
- Запись объектов на основе UID.
- Список объектов на основе UID.
- Разрешить загрузку объектов на основе UID.
В 2015 году я нашел вопрос / ответ с аналогичной проблемой, и мне было интересно узнать, актуален ли ответ или есть ли лучший вариант
Большинствоэффективный способ управления несколькими хранилищами клиентов в Azure?