2015-12-03 136 views
0

我正在寻找RBAC for laravel,然后我发现了像哨兵,委托等等......为什么我们需要RBAC许可?

RBAC通常有5个表,如用户,user_role,roles,role_permission,权限。

如果权限取决于角色,为什么我们不仅仅检查角色并删除那个权限表?

+0

只是为了澄清你的问题,你想知道为什么我们必须有权限表吗? – James

+0

是的,因为权限取决于角色,所以为什么我们不仅要检查角色? –

+0

如果您没有权限,您会如何知道角色拥有的权限? –

回答

0

你当然可以完全摆脱权限,但你仍然必须让他们在某个地方。否则,这些角色会降级为具有其他名称的权限。

角色可以拥有多个权限,并且用户属于角色。该代码通常仍然会检查权限,如“可以编辑设置”,“可以保存”,角色只是一组权限。例如,管理员可以编辑设置并保存文件。

如果您只有角色,则必须在其中编写权限。您的代码会在每个保存点中说“角色X或Y或Z中的用户?”并且添加新的角色将需要将它们添加到代码中。所以基本上这些角色将毫无意义。