【发布时间】:2013-09-24 18:33:54
【问题描述】:
在自定义用户权限中,我们有类似的东西:
UserId permission
11100001 ViewThis
11100001 ViewThat
11100002 EditThis
11100003 EditThat
现在,我们希望ViewThis 更加个性化,例如针对特定成本中心,因此某个用户只能查看来自某个成本中心的员工。所以我添加了一个专栏CostCenter。如果是NULL,则表示用户可以查看所有成本中心。现在的问题是一些其他权限,例如ViewThat 也需要自定义,问题是自定义或限制不针对某个成本中心,它确实针对其他因素,例如合同类型。因此,具有ViewThat 权限的用户应仅限于具有特定合同类型的员工。所以我添加了另一列ContractTypeID。在不需要此字段的权限中应忽略此列。有时,某个权限需要两个或多个自定义/限制字段。
现在的问题是,每当我需要向权限添加自定义/限制时,表格就会水平增长。有没有更好的方法或最佳实践来处理这种困境?
【问题讨论】:
标签: c# entity-framework database-design permissions