2***@qq.com
2***@qq.com
  • 发布:2022-01-13 22:58
  • 更新:2022-08-19 18:00
  • 阅读:2486

【报Bug】[uni-id-users.password.read]权限校验未通过

分类:uniCloud

产品分类: uniCloud/App

示例代码:
const db = uniCloud.database()  
let activity =await db.collection('activity').getTemp()  
let activity_detail =await db.collection(activity, 'uni-id-users').field(  

'CLIENTIP,OS,_add_time,files_list,text,type,uid.nickname,uid.avatar').get()
console.log('activity',activity)

操作步骤:

只要uni-id-user表作为副表,都不能通过校验

预期结果:

能通过校验

实际结果:

不能通过校验

bug描述:

[uni-id-users.password.read]权限校验未通过

使用unicloud-db组件和虚拟表都不行
我强行把password的schema的校验类型改为string也不行
schema表看附件

2022-01-13 22:58 负责人:无 分享
已邀请:
雷峰

雷峰

确实是有问题的,但可以用插件兼容解决。我以前遇到过

  • 2***@qq.com (作者)

    什么插件

    2022-01-14 10:24

  • 雷峰

    回复 2***@qq.com: 我发布的插件 https://ext.dcloud.net.cn/plugin?id=6514

    2022-01-14 12:40

DCloud_uniCloud_WYQ

DCloud_uniCloud_WYQ

password类型不允许前端读写,建议过滤掉

const col = db.collection('some-other-collection').getTemp()
const user = db.collection('uni-id-users').field('_id,username').getTemp()

const res = await db.collection(col,user).get()

  • 2***@qq.com

    没用。过滤了也没用

    2022-08-19 20:20

  • 5***@qq.com

    回复 2***@qq.com: 按照他这样过滤是可以的。注意:要先过滤出来一个虚表,然后在连表查询。不能在链表查询的时候过滤,那样是不起作用的(很奇怪的用法)。

    2023-03-02 16:35

2***@qq.com

2***@qq.com

解决了吗,我也遇到这个问题

  • 雷峰

    这个目前应该还不能直接解决,看我上面的回复。最后用插件异步加载数据解决的

    2022-08-20 10:17

该问题目前已经被锁定, 无法添加新回复