如何在ASP.net和SQL Server中实现基于内容的授权?

时间:2018-02-07 11:39:26

标签: asp.net sql-server oauth architecture

我正在为政府开发数据应用程序,我的情况是,我需要在一个页面中为所有用户共享数据,但具有可以根据位置控制授权的不同权限级别,而不仅仅是简单的管理员和查看者或编辑角色。例如,我有包含分层模式的地区,城市和地区的位置表,并且页面上显示的所有数据都将受到此位置更改的影响,那么获得城市授权的用户可以看到只有与该城市和用户相关的数据才能被授权用于多个城市和页面内的多个数据集,如果我们将用户保留在记录中,那么我们需要记录号乘以授权位置全部乘以可以是无限的授权数据集。那么&# 39;为与特定位置相关的每个数据记录存储这些用户角色的最佳做法是什么?

1 个答案:

答案 0 :(得分:0)

我在第一个实例中查看了行级安全性。它允许您设置安全策略,允许不同的行可供不同的组/用户使用。

微软此处的主题从这里开始:https://docs.microsoft.com/en-us/sql/relational-databases/security/row-level-security

还有关于Plural Site的好教程。

我发布了一些例子,但这个问题太广泛了。

需要注意的一点是 - 行级安全性存在性能限制。

如果安全性不是一个问题,那么映射表和一些聪明的连接是一种流行的方式,也比行级安全性快得多 - 取决于您的数据大小。