Firebase基于角色的授权

时间:2018-08-18 04:43:44

标签: firebase firebase-realtime-database ionic2 firebase-security-rules

我有3个用户,分别是管理员,管理员和用户。如何在Firebase中创建基于角色的功能?管理员可以在其中查看,写入某些页面,管理员可以在其中读取,写入,编辑,而用户只能在其中读取的位置?在我的数据库Firebase(实时)上,我更改为以下规则:-

{
  "rules": {
    "users": {
      "$uid": {
        ".read": "$uid === auth.uid",
        ".write": "$uid === auth.uid"
      }
    }
  }
}

我对此感到困惑。我设法创建一个帐户,但不限于页面。我该如何更改?请帮助我

1 个答案:

答案 0 :(得分:1)

请参见Control Access with Custom Claims and Security Rules

  

Firebase Admin SDK支持在用户上定义自定义属性   帐户。这提供了实现各种访问的能力   Firebase中的控制策略,包括基于角色的访问控制   应用。这些自定义属性可以为用户提供不同级别的   访问(角色),这是应用程序的安全规则中强制执行的。

{
  "rules": {
    "adminContent": {
      ".read": "auth.token.admin === true",
      ".write": "auth.token.admin === true",
    }
  }
}