Power BI Embedded获OAUTH2令牌遇AADSTS50076,如何关闭MFA或绕过?
解决Power BI Embedded OAuth2令牌获取的AADSTS50076错误
一、排查MFA强制生效的根源
你在「每用户多因素认证」页面关闭用户MFA后仍报错,大概率是条件访问策略优先级更高,强制要求访问Power BI服务(资源ID:00000009-0000-0000-c000-000000000000)的用户启用MFA:
- 登录Azure AD门户,进入「条件访问」页面,逐一检查策略的「云应用或操作」是否包含Power BI服务,同时看「分配」的用户范围是否覆盖了目标账户。
- 若找到对应策略,可给该服务账户添加例外规则,或直接将策略的MFA要求调整为「不适用」。
二、永久关闭用户MFA的正确流程
- 清理关联的条件访问策略:确保目标用户未被任何强制MFA的条件访问策略包含。
- 重置用户MFA配置:
- 进入Azure AD「用户」列表,找到目标用户,进入「认证方法」页面,删除所有已配置的MFA方式(短信、验证码应用等)。
- 返回「每用户多因素认证」页面,确认用户状态为「禁用」。
三、绕过错误的替代方案(推荐生产环境使用)
你当前用的是资源所有者密码凭据(ROPC)流,这种认证方式本身不支持MFA,一旦MFA被强制就会失效。建议切换到更稳定的服务主体认证:
- 在Azure AD注册应用程序,获取
client_id和client_secret。 - 给该服务主体分配Power BI工作区的对应权限(如管理员、成员)。
- 使用客户端凭据流请求令牌,地址为
https://login.microsoftonline.com/<你的租户ID>/oauth2/token,参数为:grant_type=client_credentials client_id=<你的客户端ID> client_secret=<你的客户端密钥> resource=https://analysis.windows.net/powerbi/api
这种方式无需用户参与,不受MFA限制,是Power BI Embedded官方推荐的生产环境认证方案。
四、额外检查项
查看Azure AD的「风险检测」页面,确认目标用户是否因登录位置、设备异常触发了风险策略,这类策略也会临时强制MFA,如有风险事件可手动清除。
内容的提问来源于stack exchange,提问作者D. Watson
相关产品推荐
相关产品推荐

