收藏
回答

云开发未登录数据权限自定义规则导致无法写入数据?

首先已经在全局设置中打开未登录用户访问云资源的权限,存储和云函数也均设置自定义规则允许未登录用户访问。

场景:小程序分享页面到朋友圈

问题:开启自定义规则后,小程序页面在朋友圈被他人打开后可以查看页面内容,但是创建此条数据的作者在正式打开小程序且获取到 open_id 的情况下依然无法修改数据,提示如下错误。但是如果使用默认的所有用户可读,仅创建者可写权限,则朋友圈分享的页面其他人无权限查看内容。

checklist-create-or-edit.js? [sm]:154 Error: errCode: -502003 database permission denied | errMsg: Permission denied
    at new t (WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:17)
    at Function.success (WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:17)
    at f (WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:2)
    at Object.success (WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:2)
    at r (WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:26)
    at WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:26
    at b (WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:26)
    at WASubContext.js?t=wechat&s=1662181595593&v=2.14.1:26
    at WAServiceMainContext.js:11
    at VM9 asdebug.js:10(env: macOS,mp,1.06.2208311; lib: 2.14.1)

最后一次编辑于  2022-09-04
回答关注问题邀请回答
收藏

2 个回答

  • 跨商通
    跨商通
    2022-09-04

    目前是用云函数来请求可以绕开这个 bug

    这不是bug,机制就是如此。

    2022-09-04
    有用
    回复 3
    • 糊瑞安
      糊瑞安
      2022-09-04
      自定义配置的规则有两条,read: true 所有人都可读了,write 的时候 openid 只要是创建者的就可以 write 呀,我说的 bug 就是只配置了 write: doc.open_id == auth.openid,但是在小程序内(不是朋友圈内打开的一级页面内)创建者却无法编辑,这很显然也不符合配置规则的语义。
      2022-09-04
      回复
    • 跨商通
      跨商通
      2022-09-04回复糊瑞安
      云函数里,身份是管理员,white自动设置为true
      2022-09-04
      回复
    • 糊瑞安
      糊瑞安
      2022-09-04回复跨商通
      这我知道,自定义规则有两条,其中一条是 write: doc.open_id == auth.open_id,当 auth 为创作者 open_id 的时候,为什么还不能 write ? 这很显然是 bug 啊
      2022-09-04
      回复
  • 糊瑞安
    糊瑞安
    2022-09-03

    目前是用云函数来请求可以绕开这个 bug,但是希望官方能尽快解决问题。

    2022-09-03
    有用
    回复
登录 后发表内容