欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  数据库

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

程序员文章站 2022-06-08 19:25:57
...

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL服务器(不是域环境) 之前连MSDN都说连接局域网内的另一台SQL服务器如果要用Windows身份验证的话必须是 域环境 但是今天我发现使用Windows身份验证不用域环境照样可以连接局域网内的另一台SQL

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL服务器(不是域环境)

之前连MSDN都说连接局域网内的另一台SQL服务器如果要用Windows身份验证的话必须是“域环境”

但是今天我发现使用Windows身份验证不用域环境照样可以连接局域网内的另一台SQL服务器

在MSDN上的解释:

地址:http://msdn.microsoft.com/zh-cn/library/ms144284.aspx

http://msdn.microsoft.com/zh-cn/library/ms143705(v=SQL.90).aspx

  • 允许 SQL Server 支持具有混合操作系统的环境,在这种环境中并不是所有用户均由 Windows 域进行验证

实际上是msdn论坛上的一个帖子中某人尝试了之后发现的

我说一下步骤:

我的试验环境:

A机器:Windows7 SQL2005 计算机名: joe

B机器:Windows8 SQL2008R2 计算机名:joehomepc

条件:A机器的 Windows帐户名跟B机器的Windows帐户名要一样 ,密码也要一样(可以没有密码)

第一步:

比如我的A机器的Windows帐户是 Administrator

而我的B机器的Windows帐户也是Administrator

两个帐户的密码都为空

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

A机器ip:192.168.1.100
B机器ip:192.168.1.102

第二步:

在A机器上打开SSMS,然后输入B机器的ip地址,使用Windows身份验证

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

直接连接到SQL2008R2

第三步:

查询SQL2008R2上的数据,如果在对象资源管理器里-》打开表会报错

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

但是使用查询编辑器就不会报错

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

SQLSERVER 在局域网使用Windows身份验证连接局域网内的另一台SQL

估计是因为SQL2008已经不支持SQL2005的“打开表”这个命令了


总结:

究竟是微软的漏洞呢?还是我们不知道有这个功能?