我希望用我的应用程序发布SQL服务器数据库文件。我对SQL非常陌生。与我的应用程序一起发运SQL服务器数据库
1)我不知道如何保护这个文件不被打开。
2)如果这个文件通过电子邮件发送,任何人都可以阅读它?
3)有没有可能像保护Access数据库一样受到密码保护,所以即使通过电子邮件发送,也无法打开它。
感谢 Furqan
我希望用我的应用程序发布SQL服务器数据库文件。我对SQL非常陌生。与我的应用程序一起发运SQL服务器数据库
1)我不知道如何保护这个文件不被打开。
2)如果这个文件通过电子邮件发送,任何人都可以阅读它?
3)有没有可能像保护Access数据库一样受到密码保护,所以即使通过电子邮件发送,也无法打开它。
感谢 Furqan
定期SQL Server数据库文件(.mdf,.ldf)不打算随应用程序一起提供并在本地安装 - 它们是打算用于运行在secur中的SQL Server实例e典型用户本身无法物理访问文件的环境。
因此,密度纤维板/ .ldf文件无法真正通过密码或任何类似的保护 - 您可以定义用户和他们的权限,但只适用于权限内数据库 - 而不是数据库文件(s)本身。
对于你的情况,我想你会更好用SQL Server Compact Edition - 一个进程内(只是一堆DLL),一个文件为你的整个数据库(*。 sdf)类型的数据库 - 比完全成熟的SQL Server更接近Access替代品。
的文件中明确指出:
SQL Server精简版是 从一开始就假设 用户必须访问物理 文件而设计的。如果没有额外的安全机制,用户可以跳过您的 应用程序,并使用工具(如 MSQuery)来查看和编辑原始数据。 的SQL Server Compact Edition支持 能力密码保护和加密 数据文件,从而 限制访问你的应用程序 中嵌入的密码。 数据库的密码保护 文件增加了一层保护, 与该文件一起移动,使其更难以访问 中的数据,这是一个非法用户获取文件的情况。
了解更多关于SQL Server Compact 3.5,你可能也想看看它讨论的最新进展SQL Server Compact blog(的SQL Server Compact 4.0在测试现在)。
如果你出货 - 比别人在另一端需要打开并安装它。
您可以使用带有密码的zip软件来保护文件,并通过电话告诉对方。
但是如果有人从用户的计算机打开它会怎么样? – 2010-11-13 06:48:23
1)即使您在将其添加到SQL Server之前对其进行了保护,用户在加载并在服务器上运行后也能够进入数据库。
2)可能的,但你为什么要发送电子邮件的数据库文件?
3)当您通过电子邮件发送邮件时,您可以将其添加到带有密码的存档中,如密码保护的zip文件。
我没有发送电子邮件,任何有权访问该计算机的人都可以这么做。没有像访问密码保护? – 2010-11-13 06:48:00
@ user415037:不,您**不能**保护SQL Server文件本身。但是,您可以**定义该数据库上的用户和权限以定义谁可以执行此操作。但任何拥有SQL Server实例的人都可以恢复该文件并“控制”它 - 没有“阻止使用此文件”的保护 – 2010-11-13 07:07:29
1)分配一个用户名和密码通过SSMS或企业管理器
2)否,由于[1]
3)是,由于[1]
只是要双倍确定:将数据库脱机,zip加密.mdf文件并发送
我真的很困惑。 – 2010-11-13 06:59:26
您能否告诉我分配您提到的用户名和密码的步骤? – 2010-11-13 06:59:48
但是如果我是一个邪恶的黑客,并且我掌握了该MDF文件,我总是可以将其恢复到我自己的SQL Server实例,并使自己成为该数据库中的管理员 - 所以真的,这里没有真正的保护。 – 2010-11-13 07:08:37
非常感谢。这工作。 – 2010-11-13 14:00:56