【发布时间】:2011-02-17 06:03:15
【问题描述】:
我有一个 Windows 域,其中一台机器正在运行 SQL Server 2005,并且配置为仅支持 Windows 身份验证。我想在同一网络上的机器上运行 C# 客户端应用程序,但它不在域上,并访问 SQL Server 2005 实例上的数据库。
我认为这样做很简单:
string connectionString = "Data Source=server;Initial Catalog=database;User Id=domain\user;Password=password";
SqlConnection connection = new SqlConnection(connectionString);
connection.Open();
但是,这失败了:客户端错误是:
System.Data.SqlClient.SqlException:用户“域\用户”登录失败 并且服务器端错误是:错误 18456,严重性 14,状态 5
我尝试了各种方法,包括将集成安全设置为 true 和 false,并在用户 ID 中使用 \ 而不是 \,但没有成功。
一般来说,我知道可以从非域机器连接到 SQL Server 2005 实例(例如,我正在使用一个基于 Linux 的应用程序,它很乐意这样做),但我似乎没有能够在 Windows 机器上弄清楚如何做到这一点。
【问题讨论】:
-
您尝试连接 SQL Server 的应用类型是什么?网络应用?
-
这只是一个 C# 应用程序,我可以通过 Visual Studio 或在命令行运行。
标签: c# sql-server windows security dns