如何使用 firestore.rules 防止某些 HTML 标签存储到 Firestore?

问题描述 投票:0回答:1

有这样的事吗?

service cloud.firestore {
  match /databases/{database}/documents {
    function isClaims(claim) {
      return get(/databases/$(database)/documents/users/$(request.auth.uid)).data.claims[claim];
    }

    match /foo/{id} {
      allow get;
      allow list: if request.query.limit <= 111;
      allow write: if isClaims("foo") == true
      // && ensure request.resource.data does not contain certain HTML tags here;
    }
    ...

注:

  • 我已经在客户端验证了用户输入。
  • 我没有尝试过任何规则,因为我根本不知道。
firebase google-cloud-platform google-cloud-firestore firebase-security
1个回答
0
投票

如果您想阻止某些 HTML 标签存储在 Firestore 中,我建议您根据 Google RE2 语法使用正则表达式。因此,要实现此目标,我建议您查看 Cloud Firestore 规则参考,您可以在其中找到 matches() 方法。此方法将允许您根据 REGEX 检查值。

© www.soinside.com 2019 - 2024. All rights reserved.