【问题标题】:Are Microsoft SQL Server DB userIDs case sensitive?Microsoft SQL Server DB 用户 ID 是否区分大小写?
【发布时间】:2019-12-30 09:50:24
【问题描述】:

我正在通过 RDC 登录到服务器,那里有一个 SQL Server 实例。 我认为 SSO 已在此处激活。

我使用 Windows 身份验证连接到 SQL Server Management Studio (SSMS),但无法连接到数据库。 (SSMS 显示登录的 UserID 为大写)

当我通过“以不同用户身份运行”连接到 SSMS 并输入用于登录此服务器的相同凭据(即仅 Windows 凭据)时,我可以连接到数据库! (SSMS 显示登录的 UserID 是小写的)。

有人可以帮忙解释为什么会这样!?有什么方法可以解决它?

【问题讨论】:

  • 你说的“用户ID”是什么意思? ID 是一个数字,不能区分大小写。
  • >>>我使用 Windows 身份验证连接到 SQL Server Management Studio (SSMS),但无法连接到数据库。 (SSMS 显示登录的 UserID 是大写的)
  • SQL Server 仅在您使用区分大小写排序规则时才区分大小写。
  • Windows 身份验证不区分大小写。你确定你在跳转框上登录的用户肯定是同一个用户和同一个域吗?
  • 我咨询了公司的管理团队。他们通过 Active Directory 允许访问我的 ID。如果我在“以不同用户身份运行”后登录到上层数据库引擎(SQL 实例)并使用我的 WINDOWS 的相同凭据,我可以连接到数据库。但是,如果我正常登录而不以其他用户身份运行,我将无法连接到数据库。是一样的证件!! Microsoft 管理团队在这里也无法理解为什么会这样。我检查了排序规则也一样 - 不区分大小写。

标签: sql-server database active-directory case-sensitive


【解决方案1】:

如果它在您使用“以不同用户身份运行”时有效,那让我认为这是陈旧的凭据。

尝试退出服务器。不要只是断开与 RDP 的连接,而是“注销”(然后会自动断开您的连接)。然后重新登录并重试。

当您登录时,Windows 会创建一个登录令牌,并将其传递给需要您的凭据的任何对象。即使您从 RDP 断开连接,如果您没有“注销”,那么您的会话仍然处于活动状态,您的登录令牌也是如此。

当您尝试对 SQL Server 进行身份验证时,它会使用您现有的登录令牌。 SQL Server 然后尝试使用域控制器验证您的令牌,但无论出于何种原因都无法验证。自您上次登录服务器以来,您的密码可能已更改,或者您帐户中的其他内容已更改。

当您使用“以不同用户身份运行”时,它会创建一个新的登录令牌。

【讨论】:

    猜你喜欢
    • 2011-03-24
    • 2010-11-27
    • 1970-01-01
    • 2013-02-04
    • 1970-01-01
    • 2010-09-14
    • 1970-01-01
    • 2012-05-13
    • 1970-01-01
    相关资源
    最近更新 更多