ASP.NET Core 2.0中CookieAuthentication如何使用
发表于:2025-12-02 作者:千家信息网编辑
千家信息网最后更新 2025年12月02日,这篇文章将为大家详细讲解有关ASP.NET Core 2.0中CookieAuthentication如何使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的
千家信息网最后更新 2025年12月02日ASP.NET Core 2.0中CookieAuthentication如何使用
这篇文章将为大家详细讲解有关ASP.NET Core 2.0中CookieAuthentication如何使用,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。
在ASP.NET Core 2.0中使用CookieAuthentication跟在1.0中有些不同,需要在ConfigureServices和Configure中分别设置,前者我们叫注册服务,后者我们叫注册中间件
public void ConfigureServices(IServiceCollection services){
services.AddCookieAuthentication();
services.AddMvc(options =>
{
var policy = new AuthorizationPolicyBuilder()
.RequireAuthenticatedUser()
.Build();
// 因为是后台系统,必须登陆以后才能操作
options.Filters.Add(new AuthorizeFilter(policy));
});
}public void Configure(IApplicationBuilder app, IHostingEnvironment env)
{
if (env.IsDevelopment())
{
app.UseDeveloperExceptionPage();
}
else
{
app.UseExceptionHandler("/Home/Error");
}
app.UseStaticFiles();
// 使用Authentication中间件
app.UseAuthentication();
app.UseMvc(routes =>
{
routes.MapRoute(
name: "default",
template: "{controller=Home}/{action=Index}/{id?}");
});
}在上面的services.AddCookieAuthentication中没有任何参数,系统会为某些属性指定默认值
public static class CookieAuthenticationDefaults
{
///
/// The default value used for CookieAuthenticationOptions.AuthenticationScheme
///
public const string AuthenticationScheme = "Cookies";
///
/// The prefix used to provide a default CookieAuthenticationOptions.CookieName
///
public static readonly string CookiePrefix = ".AspNetCore.";
///
/// The default value used by CookieAuthenticationMiddleware for the
/// CookieAuthenticationOptions.LoginPath
///
public static readonly PathString LoginPath = new PathString("/Account/Login");
///
/// The default value used by CookieAuthenticationMiddleware for the
/// CookieAuthenticationOptions.LogoutPath
///
public static readonly PathString LogoutPath = new PathString("/Account/Logout");
///
/// The default value used by CookieAuthenticationMiddleware for the
/// CookieAuthenticationOptions.AccessDeniedPath
///
public static readonly PathString AccessDeniedPath = new PathString("/Account/AccessDenied");
///
/// The default value of the CookieAuthenticationOptions.ReturnUrlParameter
///
public static readonly string ReturnUrlParameter = "ReturnUrl";
}根据微软的命名规范在ConfigureServices统一使用Add***,在Configure统一使用Use***
登陆代码
public async Task LoginDo()
{
var user = new ClaimsPrincipal(new ClaimsIdentity(new[] { new Claim(ClaimTypes.Name, "bob") }, CookieAuthenticationDefaults.AuthenticationScheme));
await HttpContext.SignInAsync(CookieAuthenticationDefaults.AuthenticationScheme, user, new AuthenticationProperties
{
IsPersistent = true,
ExpiresUtc = DateTimeOffset.Now.Add(TimeSpan.FromDays(180))
});
return Redirect("/");
} 登出代码
public async Task Logout()
{
await HttpContext.SignOutAsync(CookieAuthenticationDefaults.AuthenticationScheme);
return Redirect("/");
} 关于ASP.NET Core 2.0中CookieAuthentication如何使用就分享到这里了,希望以上内容可以对大家有一定的帮助,可以学到更多知识。如果觉得文章不错,可以把它分享出去让更多的人看到。
中间件
代码
内容
文章
更多
知识
篇文章
系统
登陆
统一
不同
不错
参数
后台
属性
质量
面的
微软
参考
帮助
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
福建服务器散热片定制虚拟主机
毕业设计软件开发课题
如何练习计算机网络技术
市政网络安全设计单位名单
数据库上云怎么迁移
和创互联网科技
三级数据库技术大题视频讲解
汉口互联网科技
河北软件开发公司都有哪些
网络安全法 防篡改
组建个人存储服务器
02336数据库
事务发布数据库简单模式
深信服服务器修改管理口ip
安徽云主机服务器技术指导
echo是什么服务器
学校网络安全课程
备份数据库有日志吗
主席令网络安全法
网络安全蜜罐是什么
服务器保护 物理防护
访问服务器d盘
数据库主机控制面板
sdmaid优化数据库有什么用
电子商务网络安全支付问题
华为鹏霄服务器芯片如何解决
华为校招软件开发面经
科技与互联网健康风险
网络安全法第六十八条
互联网科技服务实体经济