数据库设计 - 根据用户权限读取/删除内容

时间:2013-04-12 16:10:16

标签: database-design relational-database sql-server-2012 database-schema

我在设计数据库/找到解决此问题的方法时遇到问题:

我有一个名为Documents的页面,显示我数据库中'content'表中的内容。

我想知道如何为内容添加用户权限,我在组合/设计数据库时遇到了问题。

我该如何解决?

数据库图表:

enter image description here

文件页面:

enter image description here

例如,如果“用户类型”是“管理员”,我希望用户具有“读取”和“删除”权限,但如果用户为“正常”(例如),我希望用户只能查看内容而不是删除。

关于我需要创建哪些表或需要使用哪些SQL语句的任何想法?

1 个答案:

答案 0 :(得分:1)

我会创建一个包含两列的permissions表:permission_idname。此表将有两行,因为您当前描述的问题是:1-Read,2-Delete。

然后,您还需要三个表:user_type_permissionsrole_permissionsuser_permissions。这些表中的每一个都将具有permissions表的外键,以及user_typesrolesusers的外键。