【发布时间】:2018-09-27 21:34:18
【问题描述】:
我已经对此进行了大量阅读,但没有什么特别突出的。我已经有一个身份验证和授权系统,可以处理多个警卫和用户角色(用户、管理员、超级管理员等)
我正在尝试找出将系统分成完全独立的帐户的最佳方法,这些帐户具有以下内容;
没有登录部分
- 登陆页面。任何人无需登录即可查看。
管理部分
- 系统的管理员端有一个超级管理员,然后是多个管理员用户。
- 这些用户可以查看每个在客户端拥有帐户的用户的所有数据。
客户部分
- 每个用户帐户都有一个负责计费的所有者、他们自己的用户管理员等。
- 每个客户帐户还拥有许多具有不同权限的用户(管理员用户、编辑用户等)。
- 这一方的用户应该只能看到他们自己的帐户数据。他们应该永远看不到其他帐户数据。
在 Laravel 之前,我会有一个帐户表并为每个帐户分配一个唯一键。然后一个单独的用户表将包含用户及其帐户密钥。
从此以后的所有数据库表(帖子、产品、发货等)也将具有此密钥,以确保用户帐户只能看到自己的数据。
除此之外,还有权限表,用于精细控制每一方的每个用户可以看到的内容。
我原来的方式仍然适合 Laravel 还是有更好的方式?
【问题讨论】:
-
我认为您的问题中必须涵盖许多概念,但是为了支持精细控制,我建议您检查 ABAC 方法。检查这个。 github.com/thekordy/auzo