Join us for Firebase Summit on November 10, 2021. Tune in to learn how Firebase can help you accelerate app development, release with confidence, and scale with ease. Register

开始使用 Firebase 安全规则

Firebase 安全规则为 Cloud Firestore、实时数据库和 Cloud Storage 中的数据提供强大且完全可自定义的保护。您可以按照本指南中的步骤轻松开始使用规则,保护您的数据并保护您的应用程序免受恶意用户的侵害。

了解 Firebase 安全规则语言

在开始编写规则之前,值得花一些时间查看您正在使用的 Firebase 产品的特定 Firebase 安全规则语言。云存储利用通用表达式语言(CEL)的超集,它依赖于match ,并allow该设定的条件,在规定的路径访问报表..

通过学习开始的火力地堡安全规则语言的核心语法

设置身份验证

如果你还没有做它已经,添加火力地堡身份验证您的应用程序。 Firebase 身份验证支持多种常见的身份验证方法,并与 Firebase 安全规则集成以提供全面的验证功能。

您可以为您的应用程序设置额外的自定义身份验证信息。

了解更多关于火力地堡的安全规则和火力地堡认证

定义您的数据和规则结构

您构建数据的方式可能会影响您构建和实施规则的方式。当您定义数据结构时,请考虑它们可能对您的规则结构产生的影响。

例如,在 Cloud Storage 中,您可能希望包含一个字段来表示每个用户的特定角色。然后,您的规则可以读取该字段并使用它来授予基于角色的访问权限。

在定义数据和规则架构时,请记住规则级联或不级联的方式,具体取决于您的产品。使用实时数据库,规则自上而下工作,较浅的规则覆盖较深的规则。如果规则授予对特定路径的读或写权限,那么它还授予对其下所有子节点的访问权限。相比之下,对于 Cloud Firestore 和 Cloud Storage,规则仅适用于数据层次结构的指定级别,您可以编写明确的规则来控制对不同级别的访问。

访问您的规则

要查看您现有的规则,请使用 Firebase CLI 或 Firebase 控制台。确保始终使用相同的方法编辑规则,以避免错误地覆盖更新。如果您不确定本地定义的规则是否反映了最近的更新,Firebase 控制台将始终显示 Firebase 安全规则的最近部署版本。

要访问从您的规则火力地堡控制台,选择项目,然后在左侧导航面板中,单击存储。按此规则,一旦你在正确的数据库或存储桶是。

从火力地堡CLI访问规则,请在您提到的规则文件firebase.json文件

编写基本规则

当你正在开发你的应用和理解规则,尝试实施规则,以解决一些基本的使用情况,包括以下内容:

  • 内容所有者只:限制用户对内容的访问。
  • 混合访问:限制用户的写权限,但允许公共读取权限。
  • 基于属性的访问:限制访问一组或类型的用户。

测试你的规则

如果你在火力地堡控制台设置你的火力地堡的安全规则,你可以使用火力地堡规则游乐场,可以快速有效的行为。但是,我们建议用更全面的测试本地模拟器套房您更改部署到生产环境之前。

部署规则

使用 Firebase 控制台或 Firebase CLI 将您的规则部署到生产环境。按照列出的步骤管理和部署火力地堡的安全规则