连接两个自定义策略

Connect two custom policies

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

现在我要说的是将这两项政策联系起来。让我们假设以下场景:

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

我已经添加了:

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

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

假设您已经知道如何 customize the UI, you can add ContentDefinitionParameters to your Relying Party policy to pass params to your HTML template. You can use claim resolvers 得到 client_id 和 redirect_uri:

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

可以通过 JavaScript 通过解析来自 SETTINGS.remoteResource 的查询字符串来访问这些值。当身份体验框架加载相应的内容定义时,SETTINGS 对象将被注入到您的 HTML 模板中。请注意 SETTINGS 对象是内部 API 的一部分,可能会在 page layout versions.

之间变化

现在您有了 client_id 和 redirect_uri,您可以使用 JavaScript 为另一个策略生成 link,尽管在策略重定向中包含原始随机数可能也是个好主意。