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 + "
"); } }

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

       定义 ClaimsType

       ///

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

       ABP 初探 之 AbpSession 扩展_第1张图片

       ABP 初探 之 AbpSession 扩展_第2张图片

       获取 Claims

       ABP 初探 之 AbpSession 扩展_第3张图片

       View Code

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

       ABP 初探 之 AbpSession 扩展_第4张图片

   获取 AbpSession 的 DataPermissions

       ABP 初探 之 AbpSession 扩展_第5张图片

你可能感兴趣的:(ABP 初探 之 AbpSession 扩展)