Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
React native Firebase实时数据库高级安全规则_React Native_Firebase Realtime Database_Google Cloud Firestore_Firebase Security - Fatal编程技术网

React native Firebase实时数据库高级安全规则

React native Firebase实时数据库高级安全规则,react-native,firebase-realtime-database,google-cloud-firestore,firebase-security,React Native,Firebase Realtime Database,Google Cloud Firestore,Firebase Security,现在我正在做一个项目,我需要深入研究Firebase安全规则,但我不是这个主题的最大专家,而且我还没有找到一个解决方案来解决我需要的在线问题 我在实时数据库中有一个用户系统,其结构如下: 用户->用户名->我的个人资料/朋友/和更多 在Cloud Firestore中,我存储了用户名,这样如果有人登录,他就可以从Cloud Firestore中的文档中获取用户名,并在实时数据库中读取带有用户名标题的文档(我希望这是有意义的) 现在我想写一个安全规则,允许用户只读取他自己的文档(文档的标题不是他的

现在我正在做一个项目,我需要深入研究Firebase安全规则,但我不是这个主题的最大专家,而且我还没有找到一个解决方案来解决我需要的在线问题

我在实时数据库中有一个用户系统,其结构如下:

用户->用户名->我的个人资料/朋友/和更多

在Cloud Firestore中,我存储了用户名,这样如果有人登录,他就可以从Cloud Firestore中的文档中获取用户名,并在实时数据库中读取带有用户名标题的文档(我希望这是有意义的)

现在我想写一个安全规则,允许用户只读取他自己的文档(文档的标题不是他的uid,而是他的用户名)。。。 另外,我想允许其他用户读取users->username->myProfile中的数据,但前提是请求用户的用户名包含在被请求用户的users->username->friends中

澄清一个例子:

个人A登录到他的帐户,他从Cloud Firestore获得用户名,并希望访问以其用户名命名的实时数据库中的文档。 然后他想在RD中读取个人B的数据,但只有当他的用户名保存到个人B的个人资料中的朋友数组中时,才允许他这样做。 每个人都必须能够读取来自每个人的好友数组,但只能读取myProfile数据,前提是他的用户名包含在另一个人的好友数组中

我将非常感谢任何帮助!如果有不清楚的地方,就问吧


Micha

你能分享一下你数据库结构的截图吗?这会更容易理解。@Dharmaraj我补充说,我希望你能看到它是如何工作的,每个用户都有这样的结构。我希望这是可以理解的:)