gpt4 book ai didi

c# - 使用 Windows 身份验证从非域计算机访问 SQL Server 2005

转载 作者:可可西里 更新时间:2023-11-01 13:29:06 25 4
gpt4 key购买 nike

我有一个 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: Login failed for user 'domain\user' and the server-side error is: Error 18456, Severity 14, State 5

我尝试了各种方法,包括将集成安全性设置为 true 和 false,以及在用户 ID 中使用\而不是\,但没有成功。

一般来说,我知道可以从非域计算机连接到 SQL Server 2005 实例(例如,我正在使用基于 Linux 的应用程序,它很乐意这样做),但我似乎不知道能够弄清楚如何从 Windows 机器上执行此操作。

最佳答案

使用 Management Studio,当通过 Windows 身份验证连接到另一个域上的服务器时,您需要在启动应用程序时使用“runas”工具。

 runas /user:OTHERDOMAIN\OTHERUSERNAME  /netonly 
"C:\Program Files\Microsoft SQL Server\100\Tools\Binn\VSShell\Common7\IDE\Ssms.exe"

也许您可以在启动您的应用程序时尝试类似的事情?

关于c# - 使用 Windows 身份验证从非域计算机访问 SQL Server 2005,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2795723/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com