5

我目前登录到 Active Directory 域 A 上的用户计算机,我需要通过 VB6 访问位于域 B 中的 MSSQL 2000 中的数据库。用户在两个 Active Directory 服务器中都有帐户。Active Directory 域不相关或不链接。

目前我正在使用以下 MSSQL 连接字符串:

gcnnBD.ConnectionString = "Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=" & gsDataBase & ";Data Source=" & gsServidor & ";Connect Timeout=" & gsTimeOutconnection string.

如果我登录到域 A,是否可以通过连接字符串连接到域 B?

连接字符串会是什么样子?

欢迎任何建议。

4

3 回答 3

2

是的,但是由于您使用的是集成身份验证,因此域 B 需要信任域 A。如果您不熟悉此术语,您的域管理员应该能够提供帮助。您可能还需要限定服务器名称,如 domain\server 或 server.domain。

于 2012-07-12T17:15:39.590 回答
2

这个应用程序是否需要访问域 A 上的网络资源?

由于集成安全性,必须使用域凭据启动该过程。

假设没有信任关系,为此,您可以使用 RUNAS /NETONLY 让正在运行的程序使用另一个域凭据进行所有网络工作(这就是为什么我问您是否还会从该程序处理域 A) . http://ss64.com/nt/runas.html

事实上,我修改了我编写的一个程序,用等效的 Win32 API 调用重新启动它,以确保它在几年前问过这个问题后使用域凭据启动:如何将 RUNAS /NETONLY 功能构建到 (C# /.NET/WinForms) 程序?

于 2012-07-17T23:14:21.587 回答
2

这是我使用的连接字符串示例,以便从不同域上的不同服务器数据库进行 SSIS 访问。数据源=[IP 地址];用户 ID=[Windows 登录];密码=[您的密码];初始目录=[您的数据库名称];提供程序=SQLNCLI10.1

希望这会有所帮助。

于 2012-07-20T18:02:18.670 回答