【问题标题】:implementing Access Control Lists vs using database roles and users实施访问控制列表与使用数据库角色和用户
【发布时间】:2013-05-06 11:47:11
【问题描述】:

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

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

我发现有趣的是,它必然向我解释了如何创建一个好的 acl 实现,并且我遵循了这两种方法。我还参考了 Korth 的 Database Concepts 来了解查询优化和性能影响。

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

【问题讨论】:

    标签: sql-server wcf acl roles database-permissions


    【解决方案1】:

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

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

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

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

    某些帐户可能在一个实例中具有插入权限,但在另一个实例中却没有相同的权限。通过将用户帐户与设置了 ACL 权限的角色相关联,该角色可以与 SQL 帐户绑定以在后台提供适当的访问权限。

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

    【讨论】:

    • 非常感谢。这有帮助:D
    猜你喜欢
    • 2018-02-27
    • 1970-01-01
    • 1970-01-01
    • 2017-01-01
    • 2010-11-23
    • 1970-01-01
    • 2019-07-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多