0

我已经实现了custom-mfa-totp示例。我已经定义了一个允许重置 QR 码的自定义策略。一切正常。

现在我需要说连接这两个策略。让我们假设以下情况:

  • 用户注册我的 B2C
  • 用户登录,它必须安装身份验证应用程序才能获得验证码
  • 用户已登录
  • 一个月后,用户必须重新安装应用程序(原因不明)。如果他去登录,则要求验证码:

在此处输入图像描述

我的想法是添加一种链接以打开其他策略以重置 QR 码。在文档中,我看到了添加Action的可能性,但我无法弄清楚如何。有什么提示吗?

我已经添加了它:

在此处输入图像描述

但是为了以正确的方式重定向,我需要上一页中的参数,例如“client_Id”和redirect_url

4

2 回答 2

1

假设您已经知道如何自定义 UI,您可以将ContentDefinitionParameters添加到您的依赖方策略以将参数传递给您的 HTML 模板。您可以使用声明解析器来获取 client_id 和 redirect_uri:

<ContentDefinitionParameters>
    <Parameter Name="client_id">{OIDC:ClientId}</Parameter>
    <Parameter Name="redirect_uri">{OIDC:RedirectUri}</Parameter>
</ContentDefinitionParameters>

这些值可以通过 JavaScript 通过解析查询字符串来访问SETTINGS.remoteResource。当 Identity Experience Framework 加载相应的内容定义时,该SETTINGS对象将被注入到您的 HTML 模板中。请注意,该SETTINGS对象是内部 API 的一部分,可能会在页面布局版本之间发生变化。

现在您有了 client_id 和 redirect_uri,您可以使用 JavaScript 生成指向另一个策略的链接,尽管在策略重定向中包含原始 nonce 可能也是一个好主意。

于 2021-04-29T02:58:10.240 回答
-1

您可以将自定义 HTML 中的链接添加到myapp.com/launchPolicyX. 然后应用程序应该使用您最喜欢的 OpenId 库发出新的身份验证请求。

于 2021-04-09T12:10:01.597 回答