又发现官方doc中的一个示例的问题,做了2个修改能够成功了: 1.将get中的'改为` 2.需要判断isManager==true 原示例: { "read": true, // 公有读 "create": "doc.publisher == auth.openid", // 都可以发文章,但对数据一致性校验,要求 publisher 为发布者 openid "update": "doc.publisher == auth.openid || get('database.user.${auth.openid}').isManager", // 仅发布者或管理员可以更新 "delete": "doc.publisher == auth.openid || get('database.user.${auth.openid}').isManager", // 仅发布者或管理员可以删除 } 修改后: { "read": true, "write": "get(`database.user.${auth.openid}`).isManager == true", }
报个Bug,关于数据库安全规则的将样例文档中的规则,应用到我自己数据库的表,提示规则有误。 规则: { "read": "true", "delete": "get(`database.user.${id}`).isManager" } ERROR:Database Modify Security Rule Error:, Error: InvalidParameter, rule invalid (d94caf1f-7a8c-485c-a473-b81ecbd87fa0)
2020-03-04