我正在尝试为网站的基本安全系统找到最佳方式。我知道我想要用户和组。
我以为我会有:
user_table
user_id
user_name
...
group_type
group_id
group_name
parent_id
...
group_table
id
user_id
group_id
第一个是用户,第二个是组,第三个是连接两者的中间表。一个用户有多个组。
这听起来好吗?
我正在尝试为网站的基本安全系统找到最佳方式。我知道我想要用户和组。
我以为我会有:
user_table
user_id
user_name
...
group_type
group_id
group_name
parent_id
...
group_table
id
user_id
group_id
第一个是用户,第二个是组,第三个是连接两者的中间表。一个用户有多个组。
这听起来好吗?
对此进行建模的传统方法是使用一种称为Role-Based Security的模式。
这个想法不仅仅是拥有用户组,还有权限组。以下是该模式的外观:
请注意,您要避免表名的保留字,因此不要完全按照图中所示的方式命名您的表。
它的工作方式是,您的组或角色不仅有分配给他们的用户列表,还有分配给他们的权限列表。如果您关注我,这使您可以同时决定谁可以做什么,以及他们可以做什么。