Meteor 中控制用户访问某些敏感页面的标准做法是什么?例如,只有 Admin
级别的用户才能访问 CRUD 操作,那么阻止/允许用户访问这些页面的最佳方法是什么?
我知道我们可以使用publish
来限制用户对数据的访问,但是对于页面,最好的方法是什么?
我正在考虑在渲染期间检查用户级别,但同样,我不确定这种方法是否安全。
最佳答案
目前没有拒绝访问页面的方法,因为整个客户端代码被打包并作为一个应用程序发送。由于受限制页面的代码在浏览器中,用户可以轻松访问该页面。
您可以做的是限制对这些页面上显示的数据 的访问。有两件事要做:
指定用户可以查看的数据。这是通过 publish and subscribe 完成的方法。在
Meteor.publish
方法中,您可以检查用户权限并决定用户可以看到哪些对象,以及这些对象的哪些字段。指定用户可以更改的数据。正如其他答案中所述,这是通过
Collection.allow
实现的。和Collection.deny
方法,允许您检查每个 CRUD 操作的用户权限并决定是否允许。
关于javascript - 在 Meteor 中控制用户访问,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24218208/