【问题标题】:JWT auth with [Authorize] attribute具有 [Authorize] 属性的 JWT 身份验证
【发布时间】:2018-12-03 02:45:26
【问题描述】:

有人能解释一下默认的 Asp.Net 核心属性 [Authorize](使用 Asp.Net Identity)如何理解它应该如何解码 JWT 令牌并获取必要的信息以进行授权访问吗? 在形成 JWT 令牌时,我为用户放入令牌 RoleClaims,[Authorize] 是否基于声明授予他们对特定 actionMethod 的访问权限

【问题讨论】:

    标签: asp.net-web-api asp.net-core asp.net-identity jwt


    【解决方案1】:

    您可以使用以下代码访问您的声明:

    User.Claims.FirstOrDefault(el => el.Type == claim)?.Value
    

    【讨论】:

      【解决方案2】:

      更多详情请点击此链接 Create JWT & Authorize

          [Authorize]
          [HttpPost]
          public string Post()
          {
              var identity = HttpContext.User.Identity as ClaimsIdentity;
              IEnumerable<Claim> claim = identity.Claims;
              var UserName = claim.Where(c => c.Type == "UserName").Select(c => c.Value).SingleOrDefault();
      
              return "Welcome to " + UserName + "!";
          }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-11-02
        • 2021-05-20
        • 2017-07-27
        • 2020-07-30
        • 2021-10-27
        • 1970-01-01
        • 2021-06-05
        • 2022-01-22
        相关资源
        最近更新 更多