Azure ad b2c Azure B2C(IEF/自定义策略)-状态参数
使用“注册”时,我有以下登录/注册流程:Azure ad b2c Azure B2C(IEF/自定义策略)-状态参数,azure-ad-b2c,identity-experience-framework,Azure Ad B2c,Identity Experience Framework,使用“注册”时,我有以下登录/注册流程: 向用户显示注册屏幕,允许他们输入电子邮件/密码/姓名 验证输入,然后发送电子邮件(RESTAPI)并在b2c自定义扩展属性中设置验证属性 然后用户收到带有验证链接的电子邮件 用户单击电子邮件中的链接,并被发送到新用户的回程旅程 新用户旅程从查询字符串获取参数(电子邮件+验证代码) B2C验证验证码+有效期 如果用户已验证,则通过自定义扩展属性将其设置为已验证,然后发送到(ASP.NET MVC)应用程序 这就是我被卡住的地方——B2C正在将jwt令牌发送
旁注:“id\u token”与“id\u token\u hint”相同吗?在谷歌上搜索时,我找不到它们是相同的还是不同的。你需要做的是将电子邮件中的邀请链接作为应用程序的链接发送,例如。
然后,让您的应用程序帐户控制器向策略发出身份验证请求,以完成帐户赎回,并附带一个额外的查询参数“id\u token\u hint=value”。现在,在初始化应用程序openId中间件的情况下,可以进行正确的身份验证。谢谢您的回复Jas,我已经更新了我的问题以进行澄清。该示例使用id_tokem_hint;)问题是,如果您不将令牌传递给应用程序以执行身份验证请求,而是直接链接到身份验证端点(如示例所示),则.NET OpenID中间件不会为用户初始化会话。因此,你最终在应用程序中使用令牌,而应用程序会忽略它。你必须像我说的那样,链接到应用程序,应用程序将id令牌提示传递到B2C身份验证请求中。唯一的额外工作是在应用程序(如/INVITE)上调用accountController方法以启动身份验证请求的端点。同时,从传入的URL传递id令牌提示。id令牌提示本身是在您进行操作时生成的,并通过电子邮件发送。只是它不能直接调用身份验证端点,必须通过您的web应用程序传递值。再次感谢您,Jas,让我看看我是否了解我可以在这里做什么。我让B2C将令牌(从我的屏幕截图)传回应用程序,但应用程序无法处理它。因此,如果我的应用程序有一个可以接受令牌的方法(比如/redemedinInvite),我可以使用传递给该方法的令牌作为“id\u token\u hint”的值,并将令牌提示发送回B2C(通过我的.net openid中间件>accountcontroller.login或任何调用)。然后,应用程序将构建一个会话,B2C将能够从令牌中提取声明,并让此人登录?是的,这是有道理的。示例是生成id\u令牌\u提示值的对象。将该值粘贴在电子邮件链接中,但将其作为参数传递给应用程序。然后,该控制器需要调用accountController方法,该方法将id\u令牌\u提示作为额外的查询参数传递给身份验证请求,并使用处理id\u令牌\u提示的b2c策略id