Azure SQL Server数据库表Dataflows连接凭证无效问题排查
问题排查与解决方案
以下是你可能遗漏的关键步骤,按优先级逐一排查:
验证数据库用户的身份适配与权限
如果你创建的是SQL账号,需确保Dataflows连接时选择SQL身份验证而非AAD类型;若为AAD用户/服务主体,需确认:- 该主体属于网关VM所在的Azure AD租户;
- 已在目标数据库执行
GRANT CONNECT TO [AAD主体名];授予连接权限; - 若用AAD服务主体,需先在Azure SQL服务器上注册该主体(
CREATE USER [服务主体名] FROM EXTERNAL PROVIDER;)。
检查网关的身份传递配置
禁用公网访问的Azure SQL通过网关连接时,身份验证的传递逻辑需匹配:- 若用AAD MFA,需确保网关服务账户(运行网关的Windows账户)已被添加到Azure SQL的AAD允许列表,或启用网关VM的系统托管身份,并将该身份映射为数据库用户;
- 若用SQL账号,需确认网关能正确传递凭证,且账号未过期、未被锁定。
修正Azure SQL的网络授权规则
禁用公网后,仅IP白名单可能无效,需配置VNet防火墙规则:- 在Azure门户的SQL服务器 -> 安全性 -> 防火墙和虚拟网络中,添加网关VM所在的子网为授权VNet;
- 确认网关VM的NSG允许出站访问Azure SQL的1433端口(或自定义端口);
- 确保SQL服务器的私有端点与网关VM在同一VNet,或通过VNet对等互联打通网络。
核对Dataflows连接的凭证配置
在Dataflows连接设置中:- 选择的身份验证方法必须与数据库用户类型完全匹配(如AAD用户选“Azure Active Directory - 通用MFA”,SQL账号选“SQL身份验证”);
- 若用AAD MFA,需确保当前登录Power BI的账户有权限使用该凭证,且网关已升级到最新版本(旧版本网关可能不支持MFA凭证传递);
- 尝试清除缓存的凭证,重新输入并保存连接配置。
确认Azure SQL的AAD管理员已配置
使用AAD身份验证的前提是,Azure SQL服务器已设置AAD管理员(在Azure门户SQL服务器的“安全性”菜单下配置),否则所有AAD主体都无法登录数据库。
内容的提问来源于stack exchange,提问作者Glyphfever
相关产品推荐
相关产品推荐

