【问题标题】:Firestore - Sanitizing Text Area Input?Firestore - 清理文本区域输入?
【发布时间】:2019-01-12 10:14:50
【问题描述】:

我在Writing conditions for Cloud Firestore Security Rules 文档中看到可以针对新写入运行(服务器端)自定义函数。我的问题是:我什至需要担心在将 textarea 用户输入写入/保存到 FireStore 之前对其进行清理,还是 Firestore 会自动执行此操作?

如果我需要清理用户输入,那么 javascript 函数会是什么样子?我应该禁止或从字符串中删除哪些字符?提前致谢。

【问题讨论】:

    标签: javascript google-cloud-firestore firebase-security


    【解决方案1】:

    Firestore 不会自动对输入进行任何过滤。如果你想过滤输入,你必须在你自己的代码和/或安全规则中这样做。

    具体规则取决于您的具体需求。我看到的最常见的事情是长度限制,以及电子邮件或电话号码验证之类的事情。更复杂的规则肯定是可能的,但许多开发人员在某些时候更喜欢使用云函数来进行清理。

    【讨论】:

    • 我担心有人将 javascript 放在 textarea 中。知道防止恶意代码通过的最佳方法吗?
    • Firestore 不存储 JavaScript,它只存储文本。您需要确保您永远不会简单地使用elm.innerHTML 设置任何用户输入。如果用户可以输入文本,则存储他们输入的内容,并将其设置为elm.innerText。一个非常简单的清理方法是将< 添加到 HTML 时将其转义为<
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-17
    • 1970-01-01
    • 2020-09-13
    • 2015-06-08
    • 2012-06-27
    • 2011-01-07
    相关资源
    最近更新 更多