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

通过P2S VPN使用带MFA的Azure AD账户连接SSMS失败

问题分析与解决方案

核心原因

通过P2S VPN使用Azure Active Directory(AAD)身份验证连接Azure SQL Database失败,本质是AAD身份验证依赖Azure公共端点完成令牌校验,而VPN私有IP连接时,默认路由会将所有流量走VPN隧道,导致AAD令牌请求无法正常触达公共服务,触发错误40532。

解决步骤

1. 调整VPN客户端路由(放行AAD流量走公网)

  • 找到P2S VPN的客户端配置文件(.xml或.ovpn格式)
  • 添加以下路由规则,强制AAD核心服务域名的流量绕过VPN,直接走本地公网:
    # 针对AAD关键服务域名添加路由
    route add login.microsoftonline.com 255.255.255.255 metric 1
    route add aadcdn.msauth.net 255.255.255.255 metric 1
    route add aadcdn.msftauth.net 255.255.255.255 metric 1
    
  • 重启VPN连接,确保路由规则生效

2. 校验SQL DB的AAD身份配置

  • 确认SQL DB已正确关联目标AAD租户,且登录的AAD账户已被授予SQL DB权限(如db_owner或自定义角色)
  • 执行以下SQL语句,验证AAD账户已在SQL DB中注册:
    SELECT name, type_desc FROM sys.server_principals WHERE type_desc LIKE 'EXTERNAL%';
    

3. 调整SSMS连接设置

  • 保持使用私有IP10.1.1.4连接,在AAD身份验证选项中选择对应租户(多租户场景下需明确指定)
  • 临时取消"始终加密"选项测试连接,排除加密配置与AAD验证的冲突,确认正常后再重新启用并配置列加密密钥

4. 检查VPN DNS配置

  • 确保VPN客户端的DNS服务器能正确解析Azure内部域名,可手动设置Azure公共DNS(168.63.129.16)作为VPN客户端的DNS服务器,避免DNS解析失败导致AAD请求受阻

验证方法

完成上述配置后,重新连接P2S VPN,使用SSMS的AAD身份验证(通用或集成模式)连接私有IP10.1.1.4,确认是否能正常登录。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 04:15:28