【发布时间】:2016-01-01 19:20:28
【问题描述】:
如何使用 c# 和 WPF 应用程序为生产模式创建连接字符串。现在我在开发人员模式下使用了这个连接字符串和 Windows 身份验证。并且运行良好。
<connectionStrings>
<add name="SensorSystem" connectionString="Data Source=DEVELOPMENT\SQLEXPRESS;Initial Catalog=SensorSystem;Integrated Security=True"
providerName="System.Data.SqlClient" />
为了测试我的应用程序在计算机上运行良好。但是当完成并且数据库添加到服务器和应用程序安装在另一台计算机上时,需要 SQL 身份验证以获得更好的安全性和不同的连接字符串(我认为)。
【问题讨论】:
-
SQL Server 连接字符串的语法有很好的文档记录。你试过用谷歌搜索这个吗? PS。 SQL 身份验证会导致更糟糕的安全性,因为用户名/密码必须存储在某个地方。您也没有控制谁使用这些凭据以及如何使用。定期更改密码也是一个大痛,首先是因为您不知道谁使用该帐户,其次是因为您必须更改每个单独的应用程序设置
-
您不需要 SQL 身份验证来连接到远程计算机。只要运行应用程序的用户有权连接到数据库,Windows 身份验证也可以正常工作。在 Windows 域中,您可以添加每个单独的用户,或将所有用户放在一个组中并将 组 添加到数据库中。
-
一种解决方案是使用 SqlConnectionStringBuilder 而不是手工制作。
-
我尝试用谷歌搜索。并发现 SQL Authentication 是使用用户名和密码。现在,当我打开 SQL 管理工作室进行 Windows 身份验证时,不需要用户名和密码。为了安全起见,我认为使用 SQL 身份验证很好,因为需要用户名和密码。
标签: c# sql-server wpf connection-string ssms