You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启用Entra身份验证的SQL Server是否支持Windows 2000前标识符?

能否配置启用Entra身份验证的SQL Server以接受Windows 2000前标识符?

我有一台已加入Microsoft Entra域服务实例的Azure虚拟机,上面部署了SQL Server,且已启用「为Azure VM上的SQL Server启用Microsoft Entra身份验证」功能。

我在Entra ID中有一个用户:user@mydomain.onmicrosoft.com,并通过以下语句为该用户创建了SQL Server登录名:

CREATE LOGIN [user@mydomain.onmicrosoft.com] FROM EXTERNAL PROVIDER

这一配置允许我通过SSMS选择Microsoft Entra选项完成身份验证:
SSMS身份验证选项

但我要部署的应用仅支持Windows身份验证或原生SQL身份验证。我认为SQL Server身份验证无法映射到Entra用户。

当使用Windows身份验证时,系统会尝试用Windows 2000前标识符mydomain\user而非UPN user@mydomain.onmicrosoft.com进行身份验证,最终导致「用户未找到」的错误。

我尝试用Windows 2000前标识符创建SQL登录名,但因为名称包含反斜杠而失败:

CREATE LOGIN [mydomain\user] FROM EXTERNAL PROVIDER

Msg 15006, Level 16, State 2, Line 1
'mydomain\user' 不是有效的名称,因为它包含无效字符。

核心问题:能否配置启用Entra身份验证的SQL Server以接受Windows 2000前标识符?

如果无法实现,目前能想到的替代方案有:

  • 放弃Entra,在VM上部署完整AD实例,回归传统Windows身份验证
  • 放弃Entra,为所有用户维护原生SQL登录名
  • 说服应用供应商添加对Entra/UPN格式身份验证的支持

内容的提问来源于stack exchange,提问作者Andrew Stubbs

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.21 00:49:56