c# - 在 aspnet core 2 中添加多个 cookie 方案

标签 c# asp.net cookies asp.net-core asp.net-core-mvc-2.0

如何在aspnet core 2.0中添加多个cookie schemes?

我已按照此处的说明进行操作 Auth 2.0 Migration announcement 在这里 Migrating Authentication and Identity to ASP.NET Core 2.0 但我无法添加多个方案。

例如:

services.AddAuthentication("myscheme1").AddCookie(o =>{
        o.ExpireTimeSpan = TimeSpan.FromHours(1);
        o.LoginPath = new PathString("/forUser");
        o.Cookie.Name = "token1";
        o.SlidingExpiration = true;
});

services.AddAuthentication("myscheme2").AddCookie(o =>{
        o.ExpireTimeSpan = TimeSpan.FromHours(1);
        o.LoginPath = new PathString("/forAdmin");
        o.Cookie.Name = "token2";
        o.SlidingExpiration = true;
});

最佳答案

aspnet core 2.0中添加多个方案很简单。 我已经通过这样做解决了。

services.AddAuthentication()
.AddCookie("myscheme1", o => // scheme1
{
        o.ExpireTimeSpan = TimeSpan.FromHours(1);
        o.LoginPath = new PathString("/forUser");
        o.Cookie.Name = "token1";
        o.SlidingExpiration = true;
})
.AddCookie("myscheme2", o => //scheme2
{
        o.ExpireTimeSpan = TimeSpan.FromHours(1);
        o.LoginPath = new PathString("/forAdmin");
        o.Cookie.Name = "token2";
        o.SlidingExpiration = true;
});

可以在这里找到讨论 Auth 2.0 Migration announcement

关于c# - 在 aspnet core 2 中添加多个 cookie 方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45809707/

相关文章:

c# - Nopcommerce PerRequestCacheManager 与 MemoryCacheManager

c# - for循环中可能发生的事情

c# - ASP.NET Razor 文件上传

javascript - 使用 Javascript 进行部分回发

session - 如何使用 cookie 正确启动 session 、使用 Rack session 在 Sinatra 应用程序中存储和访问它

session - 复制 JSESSIONID cookie 时防止复制 session

c# - Razor View 基于一个字段的颜色行

asp.net - 表单发布 - 回发然后发布,(Paypal)这可能吗?

php - $_SERVER ['HTTP_COOKIE' ] 和 $_COOKIE 之间的区别

c# - Azure函数无法读取应用程序设置和连接字符串