Active Directory 用户/组 + SQL Server - 客户端找不到 SQL Server?
Posted
技术标签:
【中文标题】Active Directory 用户/组 + SQL Server - 客户端找不到 SQL Server?【英文标题】:Active Directory User/Groups + SQL Server - Client Cannot locate SQL Server? 【发布时间】:2011-08-16 02:03:23 【问题描述】:我正在研究如何将 Active Directory 中的用户或组集成到 SQL Server,以便用户可以简单地登录到 Windows 并使用应用程序(通过 Windows 身份验证连接)。
到目前为止我做了什么:
-
在名为“TheServerMachine”的计算机上安装 Windows Server 2008 R2
将“TheServerMachine”设置为 Active Directory 域“MyDomain”控制器
将用户 User1 添加到活动目录。
将组 Group1 添加到活动目录。 (全球、安全)
将 User1 添加到 Group1
在“TheServerMachine”上安装 SQL Server 2008 Express,“SQLEXPRESS”作为实例
设置服务器允许远程连接
SQL 服务器出现防火墙异常
为 SQL 服务启用 TCP/IP 协议
设置数据库“MyDatabase”
添加角色“MyRules”
使用默认数据库“MyDatabase”将“MyDomain/Group1”添加到登录(对话框识别组和域)
将用户“Group1Users”添加到“MyDatabase”,添加角色“MyRules”并设置我创建的登录。
将名为“Client1”的客户端计算机添加到“MyDomain”。
完成!
我的问题是,我无法访问在 Windows 中以“User1”身份成功登录的客户端 PC 中的 SQL 服务器。在我的 ConnectionString 中使用这些服务器路径,它表示服务器可能不允许远程连接,或者服务器路径可能无效。
"\\TheServerMachine\SQLEXPRESS" "\\MyDomain\SQLEXPRESS" "\\192.168.0.1\SQLEXPRESS" “服务器机器\SQLEXPRESS” “MyDomain\SQLEXPRESS” “192.168.0.1\SQLEXPRESS”注意:我的连接字符串设置为“Integrated Security=True”。
您认为这与我的道路有关吗? 是因为域和SQL服务器在同一台机器上吗? (我不这么认为) 我错过了域的一些配置吗?活动目录? SQL Server? 我应该在“Integrated Security”中使用“SSPI”而不是“True”吗?提前致谢!
【问题讨论】:
【参考方案1】:如果您的 TCP/IP 协议已启用,还要确保 SQL Server Browser 服务已启用并启动(如果您将接收来自客户端的连接,请将其设置为自动)。
SQL Server Browser 用于命名实例的动态端口分配(在这种情况下,SQLEXPRESS 是一个命名实例)并通过端口 1434 进行访问。同时确保端口 1433 和端口 1434 已打开。
编辑:确保您通过 SQL Server 配置管理器 (SSCM) 使用 SQL Server 服务,因为 Windows 服务管理器/控制台管理单元没有 SQL Server 服务所需的附加功能。
【讨论】:
各地的优秀点!我想你可能有答案【参考方案2】:首先想到的是 SQLExpress 没有为远程连接配置开箱即用。 Instructions on how to do that
在此之后您可能会遇到一些其他问题,但请先尝试该文章中的内容。
事实上,您确实已经确定您为远程连接配置了 SQLExpress。弹出的下一个项目是您对集成安全 true 与 SSPI 的连接字符串的不确定性。当前的连接字符串是什么样的?我会假设类似 数据源=.\SQLExpress;Integrated Security=True;User Instance=True;AttachDBFilename=|DataDirectory|aspnetdb.mdf
这个 SO 问题有很多故障排除和一个精彩的标题SQL Express connection string hell ASP.Net
【讨论】:
正如我在问题中提到的,我已经这样做了。我在我的 Windows 7(安装了 SQL express)中尝试过,它工作正常,但我的 Windows Server 出现问题。以上是关于Active Directory 用户/组 + SQL Server - 客户端找不到 SQL Server?的主要内容,如果未能解决你的问题,请参考以下文章
在 SQL 中确定 Active Directory 组和成员的最简单方法
Active Directory 用户/组 + SQL Server - 客户端找不到 SQL Server?
PowerShell:如何将 1 个用户添加到多个 Active Directory 安全组 - 具有写入权限的安全组的安全选项卡