百倍
百倍
  • 发布:2021-05-03 04:04
  • 更新:2022-10-01 11:50
  • 阅读:762

统计用户数count(),报[uni-id-users.password.read]权限校验未通过

分类:uniCloud

统计用户数count(),报[uni-id-users.password.read]权限校验未通过

尝试一:通过field过滤password

尝试结果:依然报[uni-id-users.password.read]权限校验未通过

尝试二:设置password权限read为true

尝试结果:依然报[uni-id-users.password.read]权限校验未通过

这个问题要如何解决?

2021-05-03 04:04 负责人:无 分享
已邀请:
9***@qq.com

9***@qq.com

password类型的字段不支持读写的admin账号也不行,文档有写。

hws007

hws007 - 我就是我!

只要关联到用户表!更新!新增!删除!过虑了密码字段,也不行!都会报这个!等官方处理

  • 名图客

    别等了,弃了吧,jql还不适合生产环境。

    2021-05-13 17:46

DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

此问题已修复,上传schema触发云端clientDB更新

  • hws007

    谢谢!明天试试!就不用写涵数了

    2021-05-15 02:54

  • hws007

    还是不行,还是显示没有权限,admin角色

    2021-05-16 16:25

  • DCloud_uniCloud_WYQ

    回复 hws007: 升级到正式版3.1.13试试

    2021-05-17 14:43

  • LikeU恋爱交友

    最新版 HX也会报这个错,反复测试了好久,这个方案可行:

    1 除了要新版

    2 需要指定字段,不能带password: jql要这样写: db.collection('uni-id-users').field("_id,ali_openid,apple_openid,avatar,comment,department_id,email,email_confirmed,gender,inviter_uid,nickname,status,username,wx_openid,wx_unionid,info").where({wx_unionid:uni.getStorageSync('openid')}).get({getOne:true}).then((res) => {

    ----以上在百度和微信小程序中测试成功,这个问题之前没有出现,应该是哪方改版之后把之前成功发布的搞报错了

    2021-12-07 11:09

LikeU恋爱交友

LikeU恋爱交友 - LikeU恋爱交友

最新版 HX也会报这个错,反复测试了好久,这个方案可行:
1 除了要新版
2 需要指定字段,不能带password: jql要这样写: db.collection('uni-id-users').field("_id,ali_openid,apple_openid,avatar,comment,department_id,email,email_confirmed,gender,inviter_uid,nickname,status,username,wx_openid,wx_unionid,info").where({wx_unionid:uni.getStorageSync('openid')}).get({getOne:true}).then((res) => {
----以上在百度和微信小程序中测试成功,这个问题之前没有出现,应该是哪方改版之后把之前成功发布的搞报错了

  • DCloud_uniCloud_WYQ

    这里和你的不是一个问题,password不能read但是可以count

    2021-12-07 11:57

还是梁家茵

还是梁家茵 - 80后IT男

我说_id都可以强制自带了,那password也能强制过滤吧?
因为这个权限问题联表查询也麻烦,希望尽快有个解决办法

  • DCloud_uniCloud_WYQ

    有password时count报权限问题的bug已经修复,默认带_id是mongoDB本身的逻辑,如果是说未指定field时过滤password这样的逻辑不应该加,因为在云端jql里面是可以访问password字段的

    2022-10-08 12:21

  • 还是梁家茵

    回复 DCloud_uniCloud_WYQ: 那field有没有指定就不返回某个字段的方法呢?

    2022-10-11 14:25

  • DCloud_uniCloud_WYQ

    回复 3***@qq.com: 不支持,为了权限校验的兼容,暂时没有支持field使用指定不返回的模式。

    2022-10-11 19:06

  • 还是梁家茵

    回复 DCloud_uniCloud_WYQ: 还有个问题请请教一下,如何用JQL判断一个字段是否存在呢?


    如这种用法:

    var where = {

    "wx_openid": {

    "mp-weixin": dbCmd.exists(true)

    }

    };

    2022-10-12 14:13

  • DCloud_uniCloud_WYQ

    回复 3***@qq.com: jql也支持对象的写法,另外直接判断是否为null应该也是可行的

    2022-10-12 14:16

  • 还是梁家茵

    回复 DCloud_uniCloud_WYQ: 学到了 谢了哥

    2022-10-12 14:35

要回复问题请先登录注册