ABP 初探 之 AbpSession 扩展

      Abp的权限管理是基于 Identity,所有的扩展也是基于 claims 。claims 有许多默认属性,具体连接

  关于 Identity的详细介绍,可以参考园友博客

      继承 Microsoft.AspNet.Identity 的UserManager后,我们直接调用  await base.CreateIdentityAsync(user, authenticationType); 此方法完成登录,登录成功后可以获取

HttpContext.Current.User,通过HttpContext可以或取相关初始化的Claims信息
ClaimsPrincipal principal = HttpContext.Current.User as ClaimsPrincipal;
if (null != principal)
{
   foreach (Claim claim in principal.Claims)
   {
      Response.Write("CLAIM TYPE: " + claim.Type + "; CLAIM VALUE: " + claim.Value + "</br>");
   }

}

       了解基本功能后,可以根据需要进行扩展,

       定义 ClaimsType

       /// <summary> DataPermissions </summary>
       public const string DataPermissions = "http://www.aspnetboilerplate.com/identity/claims/dataPermissions";

       

       

       获取 Claims

       

       View Code

       登录后 添加 Claims    identity.AddClaim(new Claim(AbpClaimTypes.DataPermissions, 需要添加的值));

       

   获取 AbpSession 的 DataPermissions

       

原文地址:https://www.cnblogs.com/Fengger/p/4974396.html