Security 如何对绑定的数据集强制执行安全性或权限?

Security 如何对绑定的数据集强制执行安全性或权限?,security,strongly-typed-dataset,Security,Strongly Typed Dataset,使用强类型数据集及其相关的表适配器,通常当我希望将更改传递回时,只需将其传递给表并让它完成所有工作 当数据库使用应用程序ID而不是用户级别的安全性时,有哪些简单的方法可以在应用程序用户上强制执行安全角色,以插入/更新/删除哪些字段 我是否必须逐行检查每一行是否符合该特定用户的权限(通过检查每个字段的当前版本是否符合其角色权限的建议版本) 我相信第一级的安全性是锁定特定用户不应该修改的UI上的列,但是在数据级呢?有没有一种好的方法可以做到这一点 这在linq to sql中更容易吗?首先,您是在询

使用强类型数据集及其相关的表适配器,通常当我希望将更改传递回时,只需将其传递给表并让它完成所有工作

当数据库使用应用程序ID而不是用户级别的安全性时,有哪些简单的方法可以在应用程序用户上强制执行安全角色,以插入/更新/删除哪些字段

我是否必须逐行检查每一行是否符合该特定用户的权限(通过检查每个字段的当前版本是否符合其角色权限的建议版本)

我相信第一级的安全性是锁定特定用户不应该修改的UI上的列,但是在数据级呢?有没有一种好的方法可以做到这一点


这在linq to sql中更容易吗?

首先,您是在询问实际的安全性,还是仅仅是控制/安全/防愚(即阻止用户做愚蠢的事情)

如果您试图强制执行安全性,请尝试回答一些问题,如允许谁连接到数据库?实际强制执行在哪里(例如,应用程序与数据库连接)

例如,如果您的应用程序处于强制执行的位置,那么如果您的应用程序受到破坏,该怎么办?它是否可以连接到数据库并执行任何操作

对于角色分离,我建议运行/分配不同角色的不同应用程序。每个角色必须以某种方式对数据库进行身份验证,并且只能访问必要的数据


总而言之,询问谁在对谁做什么,以及如果他们被泄露了怎么办。

我的安全性将是数据库用户表中的is X用户设置为leadership。普通用户和leadership都不允许做的事情将根据该应用程序登录ID的SQL server权限进行限制。因此,如果我检测到有人,我将如果它们是X+Y,则它们可以编辑X列列表。因此,我希望首先保护应用程序的持久层,然后在演示文稿上复制该锁定。