如何在Azure APIM应用中用Azure AD B2C用户流+API连接器实现用户审核登录?
Azure AD B2C 结合API连接器实现用户注册审核流程
一、前置准备工作
- 配置好Azure AD B2C租户及基础的注册/登录用户流
- 准备两个API连接器(或用Azure Logic Apps/Power Automate替代,灵活性更高):一个负责注册时向管理员发送审核邮件,另一个负责审批后向用户发送确认邮件
- 在Azure AD B2C中创建自定义属性
isApproved(布尔类型,默认值设为false),用于标记用户的审核状态
二、注册用户流配置:触发审核+标记待审核
- 编辑注册/登录用户流,进入「API连接器」配置环节
- 在「创建用户后」步骤添加API连接器:
- 将API连接器指向后端服务(如Logic Apps),传递用户注册的核心信息:邮箱、姓名、用户ID等
- 后端服务接收数据后,自动向指定管理员邮箱发送审核邮件,内容包含用户注册详情及审批操作入口(如指向审批页面的链接)
- 确保用户注册完成后,
isApproved属性被设置为false——可通过API连接器写入,或在用户流的自定义属性配置中设置默认值 - 自定义注册成功后的提示文本,直接显示:“您的资料正在审核,请等待确认邮件后重试”(在用户流的「页面布局」中修改即可)
三、登录用户流配置:拦截待审核用户
- 编辑同一注册/登录用户流,在用户旅程中添加「验证用户状态」步骤:
- 通过API连接器调用后端服务,或使用自定义策略,检查用户的
isApproved属性值 - 若属性值为
false,终止登录流程,弹出提示:“您的资料正在审核,请等待确认邮件后重试” - 若属性值为
true,允许用户完成正常登录流程
- 通过API连接器调用后端服务,或使用自定义策略,检查用户的
四、管理员审批流程:更新状态+通知用户
- 搭建简易审批入口:用Power Apps创建审批页面,或直接使用Logic Apps内置的审批功能,让管理员能查看待审核用户列表
- 管理员批准用户后,触发后端服务调用Azure AD Graph API,将该用户的
isApproved属性更新为true - 属性更新完成后,触发第二个API连接器(或Logic Apps流程),向用户发送确认邮件,告知其账号已通过审核,可正常登录
五、关键注意事项
- API连接器的后端服务需配置身份验证(如使用Azure AD应用注册的客户端凭据),避免未授权调用
- 自定义属性
isApproved需提前在B2C中创建并启用,确保用户流可读取和写入该属性 - 邮件内容需实用:审核邮件要包含用户信息和审批入口;确认邮件要包含登录指引
- 测试时需覆盖全流程:注册→管理员收审核邮件→批准→用户收确认邮件→登录,确保各环节状态同步、提示准确
内容的提问来源于stack exchange,提问作者Priyanka Mane-Patil
相关产品推荐
相关产品推荐

