将经过身份验证的用户从应用程序传递到 B2C 并返回到应用程序以更新令牌

时间:2021-03-30 15:34:58

标签: azure-ad-b2c

我们有一个 .net5 razor 应用程序,它连接到我们的 B2C 环境。在应用程序中,我们有一个进程可以更新用户的一些详细信息,包括他们的姓名。我们目前正在应用程序的导航栏中显示他们的名字,并从 User.Identity.Name 获取此信息。

因此,当用户的名称更新时,User.Identity.Name 中保存的值不会更新,因此名称保持原样。

理想情况下,我们希望将用户传递到 B2C 中的屏幕以更新令牌,该令牌将获取其更新后的名称,然后一次性返回应用程序,而无需用户执行任何操作。或者,我们需要在后台调用更新令牌,然后当页面重新加载时,由于令牌已更新,名称将更新。

目前我们看不到这样做的方法,因为 asp-actions 下的可用 asp-area="MicrosoftIdentity" 仅限于:Challenge、EditProfile、ResetPassord、SignIn 和 SIGnOut。

如果我们通过 ResetPAssword 用户流传递用户,然后返回到应用程序,则令牌已更新,我们将取回更新后的用户名。但是,如果他们只更新他们的名字,我们不希望必须完成这个过程。

我们该怎么做?

1 个答案:

答案 0 :(得分:0)

正如 Jas Suri - MSFT 评论的 above,这样做的方法是将用户传递给 SignUpSignIn 策略,因为他们已经通过身份验证,他们将通过策略屏幕并返回到无需任何用户交互的应用程序。