【发布时间】:2022-07-15 14:45:23
【问题描述】:
我正在开发一个旧的 ASP.NET Web 表单应用程序,将其从 Windows 身份验证转换为 Azure AD 身份验证。我已经完成了正常流程,当用户打开主页但未获得授权时,用户被重定向到 Azure AD 进行登录,然后从那里转到配置的重定向页面。
我发现难以实现的唯一情况是,当用户从书签或电子邮件中单击特定页面的应用程序链接时,经过身份验证后,他被重定向到仅重定向 URL。我希望向用户显示他单击的确切页面链接。
我知道只能将单个 URL 配置为用作重定向 URL,并且在该特定页面中,我必须实现将用户重定向到原始页面的逻辑。但我无法找到任何方法来识别代码中的原始页面。
我的验证码在 Global.asax 文件中,如下所示
void Application_AuthenticateRequest(object sender, EventArgs e)
{
if (!Request.IsAuthenticated && !Request.Path.ToLower().Contains("error"))
{
var properties = new AuthenticationProperties() { RedirectUri = "/"};
HttpContext.Current.GetOwinContext().Authentication.Challenge(
properties,
OpenIdConnectAuthenticationDefaults.AuthenticationType);
}
}
我在 Startup.cs 中提到了 Azure AD SSO 配置
如何从用户重定向到 Azure AD 身份验证页面的原始页面获取?
【问题讨论】:
标签: asp.net webforms azure-active-directory single-sign-on