sql-server - 实现访问控制列表与使用数据库角色和用户

标签 sql-server wcf acl roles database-permissions

首先,在你把我拷问到地板上之前,我想说我已经花了相当多的时间阅读和研究这个主题。我读过一些关于 stackoverflow 本身的内容,例如

  1. How can I implement an Access Control List in my Web MVC application?
  2. Database schema for ACL

我发现有趣的是,它必然向我解释了如何创建一个好的 acl 实现,并且我遵循了这两个方法中的方法。我还引用了 Korth 的数据库概念来了解查询优化和性能影响。

但我真正的问题归结为这种愚蠢的方法。为什么在数据库上创建角色并授予表权限,然后使用相应的角色访问数据库不是更好。由于我使用的是 SQL SERVER,所以我所要做的就是在连接字符串上指定用户名和密码并完成它。我只是想知道这种方法的优缺点,而不是花费大量时间编写和测试您自己的 ACL 实现(同意学习很有趣:D)。所以请大家多多指教。

最佳答案

好的,很好,发现了问题:“为什么在数据库上创建角色并向表授予权限,然后使用相应的角色访问数据库不是更好?”。 :)

区别在于前端、站点管理和数据库管理之间。

考虑论坛。您可能有一个角色或头衔列表,每个角色或头衔对于他们可以做什么和不能做什么都有不同的权限集。这可能包括阅读、发帖、回复、创建新线程和创建主题。

论坛用户只能看到这些角色,而站点管理员将能够查看这些角色的权限。只有数据库管理员才能查看这些角色如何与数据库帐户关联。

某些帐户可能在一个实例中具有插入权限,但在另一实例中则没有相同的权限。通过将用户帐户与具有设置的 ACL 权限的角色链接起来,该角色可以与 SQL 帐户结合起来,在后台提供适当的访问权限。

我希望这能回答您的问题。 :)

关于sql-server - 实现访问控制列表与使用数据库角色和用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16505181/

相关文章:

mysql - 如何使用 SQL 打印数据库列中的前 2 个最大值?

php - 通过 PDO ODBC 将 PHP 连接到 MSSQL

wcf - 在 WCF 服务中重构上帝对象

c# - WCF 调用 .net core API 中的 NTLM 身份验证

wcf - WP7 将列表框绑定(bind)到 WCF 结果

javascript - Node Acl 动态链接

cakephp acl 控制插件的访问(FullCalendar)

sql-server - 测量事务日志吞吐量?

sql - 除了结构化 XML 数据之外,还选择行数据

asp.net - 如何在 VS2010 中使用 Web 部署设置文件夹 ACL?