Вы можете предотвратить запись в этот документ, используя Правила безопасности Firebase на стороне сервера , которые автоматически применяются для записи из любого клиентского SDK.
Если, например, у вас есть документ с число, которое должно быть больше 0, чтобы иметь возможность писать новый документ, вы можете применить это с помощью:
service cloud.firestore {
match /databases/{database}/documents {
match /orders/{order} {
// Only allow an order for a product of there's any stock left
allow create:
if get(/databases/$(database)/documents/products/$(request.resource.data.productid)).data.stock > 0
}
}
}