分配权限,php – 在Laravel 5中使用Entrust为用户分配权限,而不是角色"/>
php 的分配权限,php – 在Laravel 5中使用Entrust为用户分配权限,而不是角色
我正在使用Laravel 5开发应用程序,我想使用Zizaco / Entrust为用户分配角色和权限.为了更好地理解,让我举个例子:
我的数据库中有4个角色:guest,user,admin,owner.所有者在管理面板和主站点上具有完全访问权限,管理员在管理面板上具有有限的访问权限,在主站点上具有完整访问权限,用户应该在主站点上具有自定义访问权限,并且访客应该根本没有访问权限(卡住在主页上,直到他们被赋予用户角色).
我面临的问题是对用户的自定义访问.有4个主页面,用户应该要求对其中一个或多个页面的权限.在主页面中,他们可以上传文件,也可以做其他一些事情.
我想做的就是给他们所有用户的角色,但是例如,用户A只能查看第1页,无法上传文件或任何其他内容,用户B有权查看页面和页面4,仅将文件上传到第3页,并将其他内容添加到第4页,除了上传文件.
我想你得到了照片.
这可以仅使用Entrust完成,还是应该在用户和权限之间创建一个新的数据透视表,并使用它来完成我需要的工作?
非常感谢你提前,
德拉戈什
编辑:
我之前想过的是给他们多个角色,比如“viewer-to-page-one”,“uploader-to-page-one”,“viewer-to-page-2”等等,然后是权限表在我的数据库中完全没用.
总而言之,我想要完成的是当具有对Page 1和Page 2的只读权限的用户登录时,我希望会话中包含以下数据:
['id'->1,'name'->'user's name','email'->'users's email','role'->'user','permissions'->['view-page-1','view-page-2']]
所以他只能查看第1页和第2页,但不能上传文件或其他任何内容.
当具有查看和上传文件权限的用户登录时,我希望:
['id'->2,'name'->'user's name','email'->'users's email','role'->'user','permissions'->['view-page-1','upload-to-page-1']]
所以他只能查看第1页并将文件上传到第1页.
更多推荐
php 的分配权限,php – 在Laravel 5中使用Entrust为用户分配权限,而不是角色
发布评论