文档/操作/命令权限/访问控制,rbac,abac

时间:2018-02-06 19:37:28

标签: database permissions access-control business-logic business-layer

我正在开发一个用于采购的商业Web应用程序。我使用ASP.NET MVC Core 2.0,EF core 2.0,MSSQL Server。我已经在互联网上搜索我的问题答案了几个月但是找不到答案。假设我有一个文档,我想控制文档上不同操作的权限(读取,编辑,删除,编辑文档编号,编辑它的不同属性等)。所以我开发了一些IPermissionControl接口和几个实现此接口的类,如RoleBasedPermissionControl等。现在我有一个问题。我的所有业务逻辑都在.Net app中,而不是在Db中。因此,当用户打开所有允许的文档列表时,将从数据库中提取所有文档并在应用程序中检查权限。它会产生很大的性能问题,因此如果db有1000000个文档,并且用户只有10个文档的权限,那么获取所有文档是个坏主意。如何解决这个问题,将所有BL留在c#app中?

提前致谢!

0 个答案:

没有答案