有没有办法将 JS 小部件仅用于 MFA?
因此,如果调用返回“MFA_REQUIRED”,我们将使用 API 进行初始身份验证。
然后我想向用户展示 MFA 屏幕。
它目前没有记录,但有一种方法。您可以使用从初始主要身份验证请求中收到的引导小部件stateToken
,因此您可以执行以下操作:
stateToken
.stateToken
初始化时将其传递到小部件中:var signIn = new OktaSignIn({
baseUrl: 'https://yourOrg.okta.com',
stateToken: 'TheStateTokenInYourPrimaryAuthResponse',
// any other config options you'd normally pass in
});
小部件将使用它stateToken
来引导自己进入相同的状态 - 这适用于任何事务状态。
我假设您正在谈论 Okta 的登录小部件http://developer.okta.com/code/javascript/okta_sign-in_widget.html#a-simple-example。登录小部件负责身份验证http://developer.okta.com/docs/api/resources/authn.html#transaction-state。这也包括 MFA。
将登录小部件代码(来自上面的 url)复制粘贴到 .html 文件中并将其放在您的服务器上(例如http://localhost:8888/login-widget.html)您可以将 res.session.setCookieAndRedirect 设置为 Okta org Okta 中的 url 或应用程序 url。你 。稍后当您访问该文件并使用 Okta 用户凭据登录时(假设 MFA 策略处于活动状态),它应该会提示您输入 MFA。见下图。