Azure B2C用户流:注册阶段捕获用户名的技术咨询
Azure B2C用户注册阶段捕获唯一用户名的实现方法
内置用户名机制说明
Azure B2C的内置用户名对应属性为signInNames.userName,无需自定义属性即可实现注册时的唯一用户名捕获,且自带唯一性验证:
- 必须选择本地账户类型的用户流(不能仅用邮箱/手机号作为登录方式),创建用户流时指定「用户名」为本地账户的登录标识符,注册页面会自动生成用户名输入框,B2C会自动校验用户名的唯一性。
具体配置步骤
- 创建/编辑用户流:选择「注册和登录」类型,账户类型选「本地账户」,登录方法设置为「用户名」。
- 在「用户属性」页面,勾选「用户名」选项(若未显示,检查是否选中了本地账户类型),确保注册时用户需要填写该字段。
- 在「应用程序声明」页面,勾选「用户名」,这样生成的ID Token中就会包含
username字段,值为用户注册时填写的用户名。
解决ID Token中username为空的问题
- 确认已在「应用程序声明」中添加「用户名」声明,否则ID Token不会返回该属性。
- 检查用户流的登录方式是否为用户名,且用户注册时确实提交了有效的用户名。
关于自定义属性的注意事项
无需创建自定义属性来实现用户名功能,内置的signInNames.userName已具备唯一性验证能力,直接使用内置机制即可满足需求。
内容的提问来源于stack exchange,提问作者Springy Developer
相关产品推荐
相关产品推荐

