代码之家  ›  专栏  ›  技术社区  ›  Mauro

SQL Server身份验证-将对数据库的访问限制为仅通过应用程序连接

  •  1
  • Mauro  · 技术社区  · 14 年前

    我有一个数据库,除非用户使用特定的应用程序,否则他们不能更改其中的数据。我知道最佳实践是使用windows身份验证,但这意味着用户可以使用任何其他支持数据的应用程序连接到数据库,并更改随后不会被审核的值。

    不幸的是,SQL 2008及其内置审计功能不可用。

    有什么办法可以确保用户不能改变任何东西,除非它通过控制应用程序?

    1 回复  |  直到 14 年前
        1
  •  1
  •   TomTom    14 年前
    • 使用任何方式让用户登录。鼓励使用Windwos认证。

    • 确保用户无权更改任何数据;)

    • 然后,在现有连接上,应用程序使用应用程序角色进行后授权。

    关于这个的更多信息 http://msdn.microsoft.com/en-us/library/bb669062.aspx

    基本上,应用程序可以通过使用应用程序密码(不幸的是,必须将密码编码到应用程序中-使用合理的方法来保护它)来获得单独的权限集,用更多的权限替换用户拥有的有限权限。

    我会要求您考虑使用应用服务器,但如果您有一个经典的客户机/服务器体系结构,它是最好的。