新用户signUp后,createbyId是空,无法限制users表的访问权限以及api可无法控制恶意的创建新用户

用auth:signup创建的user或者认证插件创建的新user,在users表中的createbyId是null,造成的问题有:
1.在角色权限中,无法控制用户只访问自己的数据,如果获得了某个用户的token,就可以用list获取完整用户表,有安全上的隐患。
2.auth:singup没有限制,有恶意访问者,调用这个接口,就可以创建新用户

你好,针对您的问题:

  1. 关于限制用户仅访问自己的数据:对于没有 createdById 的情况,您可以通过自定义访问权限规则,例如根据用户 ID 字段进行筛选,以实现类似效果。
  2. 关于 singup没有限制的问题:目前可以在“用户认证”页面关闭“允许注册”选项。我们也已规划在未来版本中增加图形验证码等安全性机制,进一步完善注册流程控制。
1 Like

在DB里给users 表增加一个before insert 的触发器,强制将 createdById = NEW.id即可

1 Like