如何跳过Entra ID多租户应用中外用户的管理员审批流程
解决方案:跳过外部用户登录的管理员审批
针对你的多租户Azure应用(基于OpenID Connect实现MS Entra身份验证),外部用户登录需管理员审批的问题,可通过以下两种核心方案解决,无需预先添加来宾用户:
1. 配置MS Entra ID全局用户同意设置
你的应用仅请求User.Read(低权限委托权限),符合用户自行授权的条件,通过全局设置开启用户自主同意:
- 登录MS Entra ID管理门户,进入企业应用 → 同意和权限 → 用户同意设置
- 选择「允许用户同意应用访问他们的数据」,建议进一步限定为「仅允许用户同意低权限的委托权限」(兼顾安全与便捷)
- 保存设置后,外部用户登录时可自行授权
User.Read权限,无需管理员审批
2. 配置应用注册的用户同意权限
确保你的应用注册本身允许用户自主同意:
- 进入应用注册页面,切换到API权限标签,确认
User.Read为委托权限(而非应用权限) - 进入身份验证标签(或「管理」菜单下的「企业应用设置」),开启「允许用户同意此应用」
补充说明
你的应用配置已正确设置为多租户模式(TenantId: "organizations"),无需修改:
"AzureAd": { "Instance": "https://login.microsoftonline.com/", "TenantId": "organizations", "ClientId": " - - - - ", "ClientSecret": " ~ ", "Domain": "domain.onmicrosoft.com", "CallbackPath": "/signin-azuread-oidc" }
核心逻辑是:当应用仅请求用户级低权限委托权限时,通过开启用户同意设置,让外部用户自主完成授权,跳过管理员审批环节。
内容的提问来源于stack exchange,提问作者Jerry
相关产品推荐
相关产品推荐

