如何检查Azure AD B2C的删除权限配置?
权限与配置核对页面
- 应用注册详情页:进入对应Azure AD B2C租户的「应用注册」板块,打开你用到的应用详情。除已核对的API权限外,点击「清单」选项卡,搜索
requiredResourceAccess字段,确认生产环境的权限ID、权限类型(Application/Delegated)和测试环境完全一致,部分场景下UI显示一致但底层清单可能存在配置偏差。同时检查「证书和密码」页的客户端密钥是否在有效期内、状态为启用,「身份验证」页的账户类型、访问配置和测试环境对齐。 - 企业应用配置页:进入Azure AD B2C的「企业应用」板块,找到对应应用的详情,查看「权限」页的管理员同意状态,确认所有申请的权限都已完成租户级管理员同意,部分场景下应用注册页显示已同意,但企业应用侧可能因为租户限制实际未生效。同时查看「属性」页的应用启用状态、数据操作权限开关是否正常开启。
- 租户级别配置页:进入Azure AD B2C租户的「属性」设置,查看是否开启了租户级对象删除保护;进入「条件访问」板块,检查是否存在针对该应用、针对删除操作的拦截策略,生产租户通常会配置额外的安全策略限制高危操作。
日志查询页面
- 审计日志:路径为Azure AD B2C → 监视 → 审计日志,筛选时间范围、操作类型为「删除用户」、目标资源为对应测试用户,可查看操作被拒绝的具体错误代码和原因,包含权限不足、策略拦截、对象锁定等常见问题的明确说明。
- 服务主体登录日志:路径为Azure AD B2C → 监视 → 登录日志 → 服务主体登录,筛选你所用应用的ClientId,查看每次API请求的令牌发放详情,确认令牌中携带的
roles(应用权限)或scp(委托权限)声明包含用户删除所需的权限(如User.ReadWrite.All),如果令牌无对应权限,说明权限授予实际未生效。 - 目录活动日志:如果生产租户开启了目录活动日志记录,可筛选操作名称为「删除目录对象」,查看资源提供程序返回的拦截详情,对象级删除锁、租户安全策略等限制都会在该日志中明确标注。
调试参考:你可以先在生产环境用相同的ClientId、ClientSecret请求
DELETE https://graph.microsoft.com/v1.0/users/{目标用户ID},对比返回的HTTP错误码和错误信息,能快速缩小问题排查范围。
内容的提问来源于stack exchange,提问作者cinaarss
相关产品推荐
相关产品推荐

