0

我有n 个用户角色,这些角色将限制访问程度,例如

  1. 阅读器(只读)
  2. 作者(选择、插入、更新、删除)
  3. 维护者(例如为其组织单位创建新表或视图)

在我们m 个组织单位(部门)的每一个中,例如国家/地区的销售部门

  1. 美国
  2. 日本
  3. 英国
  4. 德国

这将限制表和数据行的可见性(行级安全性)。

问题:满足我的访问控制要求的最佳设置是什么

  • 无需创建太多登录名、数据库用户或数据库角色(例如,创建 n * m 的完整矩阵不是一个选项,n + m 将是完美的)。
  • 允许用户查看他们的表以使用标准查询/报告工具(视图是可以接受的)
  • 最小化用户更改所需的数据库更改(我使用的是 Active Directory)
  • 将维护者用户角色创建的新表限制为例如她/他有权访问的(国家?)模式?

我想过使用基于 Windows AD 组的数据库角色,但没有看到避免 n * m 角色爆炸的方法(因此数据库登录以引用 AD 组)。

注意:我看到了一个类似的问题,但它与将组织单位分组为(重叠)层次结构有关(但没有区分用户角色):

SQL Server 行级安全性 - 多对多

我正在使用 Microsoft SQL Server 2012,并且用户和组在 Active Directory 中维护......

像SQL Server 2012 中的行级安全性白皮书中描述的解决方案对我来说似乎太复杂了(直到它是唯一的选择 ;-)

4

0 回答 0