无法使用 Windows 身份验证登录 SQL Server 2008 R2

无法使用 Windows 身份验证登录 SQL Server 2008 R2

当我尝试使用 Windows 身份验证连接到 SQL Server (2008 R2) 时:

在此处输入图片描述

我不能:

在此处输入图片描述

检查窗户应用事件日志中我发现错误:

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

  • 日志名称:应用
  • 来源:微软SQL服务器
  • 事件 ID:18456
  • 等级:信息
  • 用户:AVATOPIA\ian
  • 操作码:
  • 任务类别:登录

我可以使用 Windows 身份验证登录到计算机本身。我可以使用当地的Windows 管理员帐户。

我们可以使用 Windows 身份验证连接到域中的其他 8 个 SQL Server。只有这一个,这是唯一一个2008 R2失败了。因此我推测这是 **2008 R2* 的一个错误。

笔记:我无法使用 Windows 身份验证在本地或远程登录。我可以使用 SQL Server 身份验证在本地和远程登录。


更新

笔记:它不仅限于 SQL Server Management Studio,使用 Windows 身份验证连接的独立应用程序:

在此处输入图片描述

失败:

在此处输入图片描述

笔记:这不是客户端问题,因为我们可以正常连接到其他(非 SQL Server 2008 R2 计算机):

在此处输入图片描述

我确信有一篇技术说明或知识库文章描述了为什么 SQL Server 2008 R2破碎的 经过 默认,但我找不到它。

更新 2

马特弄清楚微软对 SQL Server 2008 R2 所做的更改默认已损坏

管理员不再是管理员

在此处输入图片描述

剩下的就是弄清楚如何让管理员成为管理员。

有一天我会开始列出微软“默认破坏”计划的变更清单。

重现问题的步骤

如何将群组添加到系统管理员修复了服务器角色?以下是我尝试过但不起作用的步骤:

  1. 点击添加

    在此处输入图片描述

  2. 点击对象类型

    在此处输入图片描述

  3. 确保您没有添加组的能力:

    在此处输入图片描述

    并点击好的

  4. 在下面输入要选择的对象名称, 进入Administrators

    在此处输入图片描述

  5. 点击检查姓名,并确保您无权添加组:

    在此处输入图片描述

    并点击取消

  6. 点击浏览...,并确保您无法添加组:

    在此处输入图片描述

您现在应该还没有将任何组添加到系统管理员角色。

附加信息

  • SQL Server Management Studio 正在以管理员身份运行:

    在此处输入图片描述

  • SQL Server 设置为使用 Windows 身份验证:

    在此处输入图片描述

  • 尝试同时使用两个和唯一的其他 sysadmin 域帐户登录 SQL sa(可以为那些不相信的人提供屏幕截图)

答案1

正如 Matt 所说,您使用的 Windows 登录尚未设置,您需要使用属于 sysadmin 固定服务器角色成员的登录名来添加它。

您不需要成为 sysadmin 固定服务器角色的成员即可连接到 SQL Server 2008 R2 实例。

顺便说一句,在 R2 安装期间,可以指定需要添加到 sysadmin 固定服务器角色的登录名。

更新-如何在 SQL Server 安全性中启用组添加 如何在 SQL Server 中添加 Windows 组

包含组后,您可以使用“选择用户或组”弹出窗口中的“检查名称”找到它们(如果存在)。

答案2

@squillman 提供了解决方案在一个单独的问题中。

这是 SQL Server 2008 和未来产品的已知问题。修复方法是运行:

CREATE LOGIN [BUILTIN\Administrators] FROM WINDOWS
go
sp_addsrvrolemember
      @LogiName='BUILTIN\Administrators',
      @RoleName='sysadmin'

重点是不能直接将“组”添加到服务器角色。您必须添加“登录”为了那个“组”。然后你可以添加那个“登录”:

例如失败

BUILTIN\Administrators->系统管理员

作品

BUILTIN\Administrators-> 内置\管理员 ->系统管理员

答案3

  • SQL 服务器是否与您的 PC 位于不同的域中
  • 您是否已将您的用户添加为系统管理员角色?

(要执行此操作,请以 sa 身份登录到服务器 - 转至安全性 - 如果不存在,则添加域用户 - 打开用户的属性 - 转至服务器角色并选择 sysadmin)

然后就应该可以登录了。

答案4

以 sa 模式登录后运行此查询..

使用 Windows 创建登录 [您当前的电脑名称\用户名],默认数据库为 [master],默认语言为 [us_english] 开始

在所有情况下它都对我有效。

相关内容