从WPF保存到SQL Server数据库
问题描述:
我有一个SQL Server数据库托管在Azure上。我需要将使用WPF应用程序的多个PC用户的数据写入此数据库。从WPF保存到SQL Server数据库
假设WPF应用程序被多个用户使用是否可以安全地保存app.config
文件中的连接字符串?将Windows应用程序的数据保存到共享数据库的最佳做法是什么?
恐怕用户可以利用存储在app.config
中的连接字符串来操作数据。
答
假设WPF应用程序被多个用户使用,可以安全地在app.config文件中保存 连接字符串吗?
恕我直言,它永远不会安全地以纯文本存储连接字符串。用户可以在应用程序之外连接到数据库并对数据库造成严重损坏,这是完全正确的。
浮现在我的脑海里有几件事情是:而不是存储连接字符串加密
- 加密连接字符串并使用它。
- 使用基于Azure AD的访问控制。最近,Azure团队宣布可以使用Azure AD凭据连接到SQL数据库。这样,您可以在连接到数据库之前对用户进行身份验证。你可以在这里阅读更多关于它的信息:https://azure.microsoft.com/en-in/documentation/articles/sql-database-aad-authentication/。
您可能还会发现以下文章对保护Azure SQL数据库的安全:https://azure.microsoft.com/en-us/documentation/articles/sql-database-security-guidelines/。
如果你加密了连接字符串,你会在哪里解密它 - 在应用代码中? –