如何在使用SQL Server作为数据库时保护或隐藏后端数据?

时间:2012-04-10 11:21:29

标签: c# sql-server vb6

是否可以从用户隐藏我的应用程序中使用的数据库。 我需要的是当用户打开SQL Server管理工作室时,他不应该看到我在C#和VB6中开发的应用程序中使用的数据库

4 个答案:

答案 0 :(得分:4)

有两种方法可以禁止访问数据库内容:

  • 加密数据库内容:会降低性能
  • 自动清除:您专门为应用程序创建用户,将其作为数据库所有者,并删除所有用户的访问权限。此外,您还需要在MsSQL服务器中禁用Windows身份验证连接,以便管理员无法以这种方式连接。

答案 1 :(得分:1)

仅使用用户登录访问数据库可以访问已获得该用户许可的数据库。不同的用户可以访问不同的数据库。也许你有3个用户:root,admin,user。

作为一个起点,试试看 http://msdn.microsoft.com/en-us/library/ms187936.aspx

答案 2 :(得分:0)

您需要从角色PUBLIC撤消权限'VIEW ANY DATABASE'(从SQL SERVER 2005开始)。从Stackoverflow。有关详细信息,请参阅ans Hide SQL database from Management Studio

答案 3 :(得分:0)

不授予用户访问数据库的权限。而是将凭据嵌入到您的程序中,以允许它通过专用帐户访问数据库。当用户使用您的程序时,程序的用户被授予访问权限,但如果用户尝试直接连接,则拒绝访问。

相关问题