授权规则的最佳方法

时间:2009-07-10 09:58:34

标签: .net sql-server-2005 rights-management

我很想知道实现auth的最佳方法。使用Business Objects的Client-Server应用程序中的规则。

我注意到常见的策略是:
- 在DB端:为应用程序实现一个角色,用于所有应用程序的用户
- 定义用户权限和角色,并将用户分配到适当的组 - 客户端:添加到Business Object的getter / setters权限检查器,允许为特定用户写入/显示数据

我担心的是,从安全角度来看,这是否真的很好 它看起来DB将所有信息发送给客户,然后客户的逻辑决定显示什么 因此,潜在的高级用户可以从他们的框中查询并查看/更改任何内容。 不是吗?

1 个答案:

答案 0 :(得分:0)

如果数据库正在向客户端发送所有信息,包括某些用户不应该看到的信息,那么您就会遇到安全问题。您应该只返回用户有权查看的数据量。

设计与您的应用程序和数据库设计紧密相关的授权。如果您需要非常精细(可能是每用户)权限,那么您需要能够在设计中相当深入地指定它以确保它是安全的。如果您只有简单的规则来实现,那么您可以在更高级别工作,并可能阻止对某些对象或表的访问。