仅配置SignIn Policy实现Azure AD B2C身份验证可行吗?AADB2C99002错误求助
如何仅用Azure AD B2C的SignIn Policy实现仅登录(禁止用户自行注册)
嘿,我来帮你搞定这个问题!你想要的仅手动添加用户、禁止自助注册,只用SignIn Policy完成身份验证是完全可行的,你遇到的AADB2C99002错误主要是配置细节或者用户创建环节出了问题,下面一步步帮你解决:
为什么会出现AADB2C99002错误?
这个错误提示本质是系统找不到你输入的用户账号,或者你的SignIn Policy背后还是隐含了“引导注册”的逻辑。但别担心,只要调整配置就能解决。
正确的配置步骤
1. 确保用户是在Azure AD B2C租户内正确创建的
- 登录Azure门户,切换到你的Azure AD B2C租户(别搞成普通的Azure AD租户了!)
- 进入「用户」→「新建用户」,选择「创建本地账户」,填写用户名(比如邮箱或自定义用户名格式)、密码,确保用户状态是「已启用」
- 划重点:必须是B2C租户下的本地账户,外部账户或者其他租户的用户无法通过你的SignIn Policy登录
2. 配置仅登录的SignIn Policy
- 在Azure AD B2C门户,进入「身份体验框架」→「用户流」→「新建用户流」
- 选择「登录」类型,命名你的用户流(比如
SignIn_Only),点击创建 - 编辑这个用户流:
- 在「身份提供者」里,只保留「本地账户」(不需要社交登录的话),移除所有其他身份提供者
- 进入「用户旅程」,检查编排步骤(Orchestration Steps):确保只有登录相关的步骤,没有任何指向注册的跳转逻辑(默认的登录用户流已经是这样,但最好确认一遍)
- 在「页面布局」里,确认登录页面没有显示「注册」相关的链接或按钮(默认配置已隐藏,也可以在「页面UI自定义」里进一步锁定)
3. 测试验证
- 保存并发布你的SignIn Policy(未发布的配置不会生效!)
- 使用门户提供的「运行用户流」功能,输入你手动创建的B2C用户账号和密码,应该能正常登录,不会再出现注册提示
额外排查点
如果还是遇到错误,先检查这几点:
- 输入的账号是否和B2C租户里创建的完全一致(包括大小写、邮箱后缀)
- 用户账户是否处于「已启用」状态,没有被禁用
- SignIn Policy是否已经完成发布操作
内容的提问来源于stack exchange,提问作者tteguayco
相关产品推荐
相关产品推荐

