我为 DNN 创建了一个具有混合身份验证的自定义登录模块:1)通过 ADFS 进行身份验证。2) 使用常规表单身份验证进行身份验证。一切正常,除了:
protected void Adfs_Click(object sender, EventArgs e)
{
HttpContext.Current.GetOwinContext()
.Authentication.Challenge(new AuthenticationProperties { RedirectUri = redirectUrl },
OpenIdConnectAuthenticationDefaults.AuthenticationType);
}
第一次单击会重新加载页面,并且第二次总是有效。我试图禁用像这篇文章建议的表单身份验证,但因为我正在使用 DNN,所以我不能这样做。
我还测试了在 Page_Load 上触发事件并正常工作,但我想让 DNN 本地用户能够直接登录到 DNN(主机用户)......所以我也不能在那里进行挑战。
关于我应该怎么做才能使挑战在第一次点击时起作用的任何帮助?
提前致谢。