2017-12-18 195 views
0

试图寻找它的网页,但不能得到这个解决方案.. 我得到了一个火力点DB我的应用程序,并希望每个用户(AUTH)才能读取和写入他自己的数据。 在我的应用程序中获得了页面,该页面生成用户输入的数据,但没有得到如何管理规则,因此只有用户本身才能看到和编辑数据。为每个用户火力规则来编写和读取自己的数据

这里的规则:

{ 
"rules": { 
".read": "auth != null", 
".write": "auth != null" 
    } 
} 

默认的! 我该怎么办?

与离子框架工作

回答

-1

您应该检查这个Firebase - secure user data

match /users/{userId} { 
    allow read: if request.auth.uid == userId; 
    allow write: if request.auth.uid == userId; 
} 

在这种情况下,每个用户都有自己的数据库。只是一些数据推到这个REF /用户/ {用户id}

+0

其实我需要它的项目清单上,而不是文件..所以它就像一个待办事项应用 –

1

你可以做这样的事情:

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

至于例如:

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

在这个例子中,用户只能写了他的账户下路/usersData/profiles/[USER'S_AUTH_UID]/这个用户无法读取根路径,也看不到任何配置文件,不能写任何节点,除了他自己一个人。


编辑: 此外,还有从火力点一个工具,称为Bolt这应该是有帮助使事情更容易,更容易维护,也使高级规则简单了很多实现的,看看他们的Guide here

+0

所以我尝试过了,这走了出去: 错误错误:在PERMISSION_DENIED /计划列表:客户端没有权限访问所需的数据。 –

+0

@MatanCohen取决于你的规则,也许有什么问题吗?看到我的编辑寿。 –