mysql - 基于角色的访问控制 MySql 实现

标签 mysql database laravel rbac role-based-access-control

我即将使用 Laravel 开发一个管理网络应用程序。

我需要我的用户具有不同的角色和不同的权限。

详细说明:一些用户可以添加客户,一些用户可以写与客户相关的论文,一些用户可以只阅读该论文,一些其他用户可以只阅读该论文的一些片段。

所以我决定使用 RBAC 方法以获得一定的灵 active 。 我将使用此数据库模式(只是一个示例模式,但代表我的应用程序的需求):

dbexample

我的回答是:既然users和paper、customer、attaches等有直接关系,那么RBAC规则是怎么表达的呢?当他请求操作或资源时,我必须在前端检查用户的权限吗?或者即使在后端级别也有表达此规则的方法?也许使用一些 GRANT 选项?

希望sby能帮上忙。 谢谢!

最佳答案

我建议您使用已经可用的 RBAC 包之一,那里有一些,但有几个值得注意的地方包括:

定义UserCustomer等角色,can-write-papercan-read-paper等权限 并根据您的用例将它们分配给角色或个人用户。

关于mysql - 基于角色的访问控制 MySql 实现,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58671535/

相关文章:

php mysql - 更新表中的多行

数据库设计: Default Address

database - 一个关系可以在具有多个外键的 3NF 中吗?

java - Runtime.getRuntime().exec 提示时传递参数

php - Laravel Spark 重定向注册

mysql - 来自带有 GROUP BY 和 HAVING 的 Select 语句的 ID

php - 关于使我的 WordPress 网站变慢的查询

mysql - 为什么 MySQL 程序在遇到错误时停止执行?我该如何让它继续下去?

php - Laravel 迁移似乎无法在某些计算机上运行

php - 创建一个 cron 以自动启动数据库播种器