我无法让特定场景发挥作用。我发现了 https://github.com/okta/samples-aspnet/tree/master/self-hosted-login 示例,它表现出相同的问题行为。我的应用程序是 ASP.Net MVC 5 (.Net 4.8)。我该怎么做才能通过以下步骤实现“期望的行为”?
samples-aspnet-master\self-hosted-login 示例中重现的步骤:
我打开浏览器并登录我们的 Okta 域,这需要用户名/密码,但不需要 MFA。
我导航到示例应用程序的 Home/Profile 路由,这需要身份验证。
因为我的网站需要 MFA,它会识别出我没有经过正确的身份验证,并且该网站会将我重定向到托管小部件的本地帐户/登录路由。
此时出现问题
a) 期望的行为:小部件应该识别出我在登录 Okta 域时已经提供了我的用户名/密码,并且应该将我转发到 MFA 屏幕。
b) 实际行为:小部件显示用户名/密码挑战,即使我在登录 Okta 域时已经提供了。
示例中的小部件代码如下所示:
signIn.renderEl({ el: '#widget' }, (res) => {
var sessionTokenField = $("#hiddenSessionTokenField");
sessionTokenField.val(res.session.token);
var form = sessionTokenField.parent();
form.submit();
}, (err) => {
console.error(err);
});
我假设我需要更新此小部件代码以正确处理部分登录状态,但我似乎无法弄清楚正确的代码应该是什么。