Php laravel 5.4-如何防止一个角色访问另一个角色的属性?

Php laravel 5.4-如何防止一个角色访问另一个角色的属性?,php,laravel,laravel-5.4,Php,Laravel,Laravel 5.4,我有一个库存应用程序,它有三个不同的角色,即操作员、管理员和超级管理员 问题是,当我使用其中一个角色进入时,我可以通过在浏览器链接栏的菜单中写入链接来访问属于另一个角色的菜单 范例 在管理页面中有一个备份和恢复菜单,链接:/admin/backupAndRestore 然后我以操作员身份登录 在操作员页面中只有项目借用和归还项目菜单,但如果我在浏览器链接栏中写入管理备份和还原菜单的链接,如localhost:8000/admin/backupAndRestore,我可以访问该页面 我想让已登录的

我有一个库存应用程序,它有三个不同的角色,即操作员、管理员和超级管理员

问题是,当我使用其中一个角色进入时,我可以通过在浏览器链接栏的菜单中写入链接来访问属于另一个角色的菜单

范例

在管理页面中有一个备份和恢复菜单,链接:/admin/backupAndRestore

然后我以操作员身份登录

在操作员页面中只有项目借用和归还项目菜单,但如果我在浏览器链接栏中写入管理备份和还原菜单的链接,如localhost:8000/admin/backupAndRestore,我可以访问该页面


我想让已登录的用户无法访问注册或登录页面并重定向到主页,我该怎么办?

您正在寻找的功能在Laravel框架中称为。由于您可以通过许多不同的方式在技术上实现用户角色,因此在这里为您发布一个代码示例是不现实的。相反,我建议您阅读上的整个文档页面,然后设计一个适用于您的设置的实现。您很可能希望使用来构建逻辑,这是围绕特定模型组织授权逻辑的类

您可以使用策略,阅读授权文档了解如何使用Laravel的该部分: