Sql Server 2008、Active Directory 组和登录失败

Sql Server 2008、Active Directory 组和登录失败

连接到 SQL Server 2008 数据库时,我的 ASP.net 应用程序中不断出现登录失败错误。我尝试使用用户 domain\foo 登录。

当我为 domain\foo 授予数据库登录(服务器和数据库级别)时,我的应用程序可以连接。

当我将 domain\foo 放入名为 domain/goo 的组中并为 domain\goo 提供数据库登录名时,用户 domain\foo 无法进行身份验证。

这没有任何意义。我做错了什么吗?domain\foo 和 domain\goo 的配置相同。唯一的区别是 on 是用户,one 是包含用户的组。将活动目录组作为用户添加到 SQL Server 2008 应该可以正常工作。

答案1

您不能使用组。我不知道 SQL 2008 已经改变了这一点。我认为您必须使用个人用户帐户。我知道……这很糟糕。

答案2

听起来你遇到的情况与我在设置第一个 SQL Server 2008 时遇到的情况类似。在我的特定场景中,我仅使用 Windows 身份验证,并且已授予当地行政人员系统管理员权限。然而,唯一能够成功登录的人SQL Server 管理工作室是服务器的本地管理员。(我看到的错误位于此帖子的底部。)

在找到 SQL Server 调试日志后,我发现身份验证成功,但访问被拒绝(状态:11)。进一步深入研究后科技网,我发现 UAC 掩盖了大多数组成员身份,解决方法是以管理员身份运行 SQL Studio。


SQL Server 管理工作室

无法连接到 {servername}。
附加信息
-> 用户“{username}”登录失败。(Microsoft SQL Server,错误:18456)

Windows 事件日志

用户“{username}”登录失败。原因:基于令牌的服务器访问验证因基础结构错误而失败。检查先前的错误。[客户端:]

SQL Server 调试日志

(位于:{SQL_Server_Root}\MSSQL10.{instance}\MSSQL\Log\ERRORLOG)

{Datestamp} 登录错误:18456,严重性:14,状态:11。
{Datestamp} 登录 用户“{username}”登录失败。原因:基于令牌的服务器访问验证因基础结构错误而失败。检查先前的错误。[客户端:]

答案3

这些是 Active Directory 安全组还是分发组?

我可以告诉你一个事实,我们使用 AD 安全组在 SQL Server 版本 2000、2005 和 2008 中分配权限。

相关内容