gpt4 book ai didi

c# - AuthCookie 已设置,仍被重定向到 login.aspx

转载 作者:行者123 更新时间:2023-11-30 18:38:30 24 4
gpt4 key购买 nike

我正在 C# 网络应用程序中设置混合模式身份验证。我在 WindowsAuthentication 网站中设置了 AuthCookie,然后尝试重定向到 FormsAuthentication 网站。我认为 cookie 位于正确的路径和所有内容中,因为 Context.Request.IsAuthenticated 为真。不幸的是,我一直被重定向到 FormsAuthentication 网站的登录页面,就好像我没有设置 AuthCookie 一样。这是怎么回事?

我不熟悉身份验证在 ASP.NET 中的工作方式,所以请像我才 5 岁一样向我解释一下。谢谢,:)

编辑:这是制作 cookie 的 WindowsAuth 站点的 Global.asax 中的事件。该站点当前位于 FormsAuth 站点“下”的路径/authentication 中。

void Application_PostAuthenticateRequest(Object sender, EventArgs e)
{
WindowsIdentity ident = WindowsIdentity.GetCurrent();
WindowsPrincipal p = new WindowsPrincipal(ident);
if (p.Identity.IsAuthenticated)
{
HttpCookie cookie = FormsAuthentication.GetAuthCookie(p.Identity.Name, false);
FormsAuthenticationTicket ticket = FormsAuthentication.Decrypt(cookie.Value);
// Store roles inside the Forms cookie.
FormsAuthenticationTicket newTicket = new FormsAuthenticationTicket(
ticket.Version, ticket.Name, ticket.IssueDate, ticket.Expiration,
ticket.IsPersistent, "", ticket.CookiePath);
string encTicket = FormsAuthentication.Encrypt(newTicket);
Context.Response.Cookies.Add(new HttpCookie(".GWBTroubleTickets", encTicket));
}
Response.Redirect("/employee/home.aspx");
}

最佳答案

每个页面可能会多次调用该事件。 - https://stackoverflow.com/a/5947309/57883Response.Redirect("/employee/home.aspx");

周围没有 if/else

尝试使用自定义属性而不是此事件

关于c# - AuthCookie 已设置,仍被重定向到 login.aspx,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11141716/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com