sql-server - Windows 身份验证受信任的连接不起作用

标签 sql-server database-connection windows-authentication sqlconnection trustedconnection

MSSQL 服务器在“abc”域中,并且具有混合模式身份验证。 我正在从不在域或域“xyz”中但使用 MSSQL Jdbc 驱动程序 2.0 在同一网络中的机器连接。我已在 xyz 域中以管理员身份或帐户登录。

使用以下 url 连接“sa”或 SQL 模式身份验证时效果很好。

jdbc:sqlserver://%DB_IP%:%DB_PORT%;SelectMethod=cursor;DatabaseName=dbname

它不起作用对于使用凭据 "MSSQLDomain\username""abc\username" 的窗口身份验证,使用以下 url

jdbc:sqlserver://%DB_IP%:%DB_PORT%;SelectMethod=cursor;integratedSecurity=true;DatabaseName=dbname;

给出以下错误。 用户 '' 登录失败。该用户未与受信任的关联 SQL Server 连接。

我已经尝试将属性 Trusted_Connection=Yes 添加到 url,但仍然出现相同的错误。 我不想映射 SQL Server 的驱动器。我可以通过提供“MSSQLDomain\username”和密码来访问 SQL Server 机器的任何共享文件夹。

如果两台机器都在同一个域中,那么这两种身份验证模式都可以正常工作。 如果我从不在同一网络(即同一子网)的域或“xyz”域中的机器上使用 jtDS 驱动程序,它工作正常。

最佳答案

这是 Windows 身份验证有意而正确的行为。

这是因为您连接的域与您的 SQL Server 实例所在的 Windows 域不同。

我相信有一些方法可以桥接域,但是它们需要自定义和棘手的实现。您还必须配置域之间的信任关系。

以下线程包含您可能会觉得有用的讨论。

http://sql-server-performance.com/Community/forums/p/24601/137574.aspx

关于sql-server - Windows 身份验证受信任的连接不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/881928/

相关文章:

sql-server - 从文本列中仅选择第一行直到 CR/LF 的字符

python - 我应该尽量减少 Pony ORM 中 db_session 的使用吗? db_session 的目的是什么?

php - 如何将下拉菜单中的数据插入数据库中的新表?

javascript - Kerberos,javascript 中的 Windows 身份验证请求

sql-server - Node.js 与 SQL Server windows 身份验证的连接

sql - 更新语句错误:子查询返回了多个值

sql - 更改大表中的列类型

c# - 使用 NET.TCP 的 WCF 传输 Windows 身份验证仅在本地有效

mysql - 数据库模式关系和例程关系的工具

java - 我可以一直保留一个 jdbc 连接吗