.NET Core 2.0 Cookie中間件 權限驗證


1:在ConfigureServices添加Cookie中間件,使用自定義Scheme
services.AddAuthentication(options=> {
                options.DefaultChallengeScheme =“test”;
                options.DefaultSignInScheme = "test";
                options.DefaultAuthenticateScheme = "test";
            })
            .AddCookie("test", m =>
            {
                m.LoginPath = new PathString("/Account/Login");
                m.AccessDeniedPath = new PathString("/Account/Denied");
                m.LogoutPath = new PathString("/Account/Logout");
                m.Cookie.Path = "/";
             });
2:在Configure使用Cookie中間件

app.UseAuthentication();
3、引入命名空間 using Microsoft.AspNetCore.Authentication;
4、使用方式
//登錄
await HttpContext.SignInAsync("test", userPrincipal,
      new AuthenticationProperties
      {
          ExpiresUtc = DateTime.UtcNow.AddHours(12),
          IsPersistent = true,
          AllowRefresh = false
      });
 
//退出
await HttpContext.SignOutAsync("test"); 
5、AuthorizeAsync現在返回結果為AuthorizationResult

使用方式
1
2
3
4
5
var result = await HttpContext.AuthenticateAsync("xxxx");
if (result.Succeeded)
{
    ......
} 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM