【发布时间】:2020-12-28 07:12:39
【问题描述】:
我正在尝试在向具有[AllowAnonymous] 属性的控制器发出 ajax 请求后刷新会话。由于某些原因,现在不可能删除此属性。正在通过 OWIN (Microsoft.Owin v4.1.0) 进行身份验证。
以下是身份验证的方式:
public class Startup_Auth
{
public void Configuration(IAppBuilder app)
{
try
{
MyAuthenticationProvider provider = new MyAuthenticationProvider() { OnValidateIdentity = MyValidation };
app.SetDefaultSignInAsAuthenticationType("ExternalCookie");
app.UseCookieAuthentication(new CookieAuthenticationOptions
{
AuthenticationType = "ExternalCookie",
AuthenticationMode = AuthenticationMode.Active,
CookieName = "MyCookie",
CookieSecure = CookieSecureOption.Always,
LoginPath = new PathString(PATH),
ExpireTimeSpan = TimeSpan.FromMinutes(EXPIRATION),
Provider = provider,
TicketDataFormat = new MyTicketDataFormat()
});
}
...
}
private static Task MyValidation(CookieValidateIdentityContext context)
{
...
}
}
控制器的OnActionExecuting我也试过了:
[AllowAnonymous]
public class MyController : Controller
{
protected override void OnActionExecuting(ActionExecutingContext filterContext)
{
// can't access cookies here
}
}
欢迎提出任何建议。
【问题讨论】:
标签: c# asp.net-mvc authentication cookies owin