Firebase Firestore 是一种 NoSQL 数据库,允许开发者存储和同步数据,并且支持实时更新。Firestore 的安全规则用于控制用户对数据的访问权限,确保数据的安全性和完整性。
Firestore 安全规则主要有两种类型:
适用于需要实时数据同步、灵活数据模型和强大查询功能的应用,如社交应用、实时协作工具等。
用户可能会尝试多次创建文档,导致数据冗余或不规范。
可以通过 Firestore 安全规则来实现这一限制。以下是一个示例规则:
service cloud.firestore {
match /databases/{database}/documents {
match /users/{userId} {
allow create: if request.auth != null && !exists(/databases/$(database)/documents/users/$(userId));
}
}
}
service cloud.firestore { ... }
:定义 Firestore 服务的规则。match /databases/{database}/documents { ... }
:匹配所有 Firestore 文档。match /users/{userId} { ... }
:匹配 /users
集合中的所有文档,其中 {userId}
是用户的唯一标识符。allow create: if request.auth != null && !exists(/databases/$(database)/documents/users/$(userId));
:允许创建文档的条件是:request.auth != null
)。!exists(/databases/$(database)/documents/users/$(userId))
)。通过上述规则,可以确保每个用户只能创建一个 Firestore 文档,从而保证数据的规范性和安全性。
领取专属 10元无门槛券
手把手带您无忧上云