从非域客户端连接到已join域的SQL Server

我昨天挣扎了一段时间,试图从非域join的客户端login到join域的服务器上的SQL Server 2008实例。 有问题的电脑:

-fhsvr是运行SQL Server 2008 Express实例的join域的计算机。
– 实例是默认的SQLEXPRESS,所以实例的完整path是fhsvr \ SQLEXPRESS。
-posregister1是我尝试从中连接的客户端计算机。 它不是域join的。

我正在尝试连接使用命名pipe道和SQL Server身份validation,这两个都启用。 港口都是标准的。 所有必要的(和一些不必要的)防火墙例外都已经完成。 使用SQL Server身份validation和命名pipe道的连接都可以在域内使用。

但是,当我尝试从域外连接时,我得到一个命名pipe道提供程序:无法打开连接到SQL Server [2]错误。 这可以通过将域凭证存储在未join域的计算机上的Windows凭据存储中来解决,但显然这不是一个好的长期解决scheme。

假设一个相同的连接string在域内工作,当尝试从域外连接时可能会导致这个问题。 我也要注意,电脑能够正常通讯。 如前所述,只要将域凭证添加到Windows凭证存储就可以解决问题,所以显然不是联网/防火墙等。 问题。

有没有可能影响到这个GPO? SQL Server中是否有可能会影响到这一点的设置?

嗯,还有一点需要注意:我们最终试图在这里连接销售点软件,不幸的是,该软件只支持使用命名pipe道的连接 – 不支持命名pipe道的直接TCP / IP连接。

谢谢你尽你所能的帮助。

有一个GPO:“networking访问:可以匿名访问的命名pipe道”域连接服务器的默认值不允许连接到SQL Server的命名pipe道。

默认实例的pipe道名称是“sql \ query”。 您必须在SQL Serverconfigurationpipe理器 – networkingconfiguration – 协议 – 命名pipe道下查找您的pipe道名称作为命名实例。

更多这里: http : //technet.microsoft.com/en-us/library/jj852278.aspx