gpt4 book ai didi

sql-server - 使用缓存的凭据跨域边界连接到SQL 2005

转载 作者:行者123 更新时间:2023-12-02 04:19:47 25 4
gpt4 key购买 nike

自从前一段时间在我的开发计算机上迁移到Vista以来,从SSMS之类的客户端工具连接到DMZ Activity 目录域中的SQL Server的工作就没有以前那样了。在XP中,只要我以某种方式在服务器上进行了身份验证(例如,将Explorer定向到\ server.dmzdomain \ c $并在登录提示中输入有效凭据),SSMS就会使用这些缓存的凭据进行连接。

但是,由于切换到Vista,当尝试将SSMS连接到DMZ域中的服务器时,我收到消息“用户登录失败”。该用户未与受信任的SQL Server连接相关联。如果将连接选项更改为使用命名管道而不是默认的TCP / IP,则会发送我的缓存凭据,并且一切正常。无论Windows防火墙处于打开还是关闭状态,并且与我们内部域(与我的开发PC所在的域相同)中的服务器的连接都可以通过TCP / IP或命名管道正常工作。

我不太介意将命名管道用于这些连接,这是一种解决方法,但似乎TCP / IP是推荐的连接方法,而且我不喜欢不理解为什么它无法按预期工作。有任何想法吗?

最佳答案

“用户''登录失败,该用户未与可信SQL Server连接关联”。

在这种情况下,客户端可能会进行tcp连接,此外,无论是否注册了SPN,SQL Server都无法识别客户端凭据,无论它是在本地管理员帐户还是非管理员计算机帐户下运行的。

解决方法是:

在目标SQL Server计算机上创建与客户端计算机上的帐户相同的帐户,并使用相同的密码,然后对该帐户授予适当的权限。

让我们更详细地解释一下:

当您在两者上创建相同的NT帐户(我们将其称为usr1)时
工作站,您实际上是连接并模拟了本地帐户
连接站。也就是说,当您从站点1连接到站点2时,
您正在通过station2的帐户进行身份验证。因此,如果您将
SQL Server的启动帐户(假设它在station2上运行)是
当您使用station1的usr1从station1连接到SQL时,station2的usr1
登录后,SQL会将您身份验证为station2的usr1。

现在,在SQL中,您绝对可以访问station1的资源。虽然,如何
大量访问将取决于station1的usr1权限。

到目前为止,SQL只处理属于sysadmin角色的用户
SQL Server。为了允许其他用户(非sysamdin)访问网络资源,
您将必须设置代理帐户。看看这篇文章
附加信息。
取自http://blogs.msdn.com/sql_protocols/archive/2006/12/02/understanding-kerberos-and-ntlm-authentication-in-sql-server-connections.aspx

关于sql-server - 使用缓存的凭据跨域边界连接到SQL 2005,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22493/

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