using Microsoft.AspNetCore.Authentication.Cookies; using Microsoft.Extensions.Configuration; using Microsoft.Extensions.DependencyInjection; using VberZero; namespace VberAdmin.Identity; public static class ConfigureApplicationCookie { /// /// 自定义Cookie选项 /// /// /// public static void ConfigureCustomApplicationCookie(this IServiceCollection services, IConfiguration configuration) { if (!int.TryParse(configuration["AuthSession:ExpireTimeInMinutes"], out int expireTime)) { expireTime = VzConsts.SignInExpireMinutes; } services.ConfigureApplicationCookie(options => { //访问拒绝路径 options.AccessDeniedPath = "/Account/Login"; options.Cookie.Name = VberAdminConsts.AspNetCoreCookieName; options.Cookie.HttpOnly = true; options.ExpireTimeSpan = TimeSpan.FromMinutes(expireTime); options.LoginPath = "/Account/Login"; // ReturnUrlParameter requires //using Microsoft.AspNetCore.Authentication.Cookies; options.ReturnUrlParameter = CookieAuthenticationDefaults.ReturnUrlParameter; options.SlidingExpiration = true; }); } }