zoukankan      html  css  js  c++  java
  • 获取jwt(json web token)中存储的用户信息

    一个JWT实际上就是一个字符串,它由三部分组成,头部(header)、载荷(Payload)与签名。

    Payload

    payload中可以保存用户的信息。

    var claims = new Claim[]
    {
    new Claim(JwtRegisteredClaimNames.Sub, account),
    new Claim(JwtRegisteredClaimNames.Jti, Guid.NewGuid().ToString()),
    new Claim(JwtRegisteredClaimNames.Iat, now.ToUniversalTime().ToString(),
    ClaimValueTypes.Integer64),
    //用户名
    new Claim(ClaimTypes.Name,account),
    //角色
    new Claim(ClaimTypes.Role,"a")
    };

    获取所存放的account

    var schemeProvider = context.RequestServices.GetService(typeof(IAuthenticationSchemeProvider)) as IAuthenticationSchemeProvider;
    var defaultAuthenticate = await schemeProvider.GetDefaultAuthenticateSchemeAsync();
    if (defaultAuthenticate != null)
    {
    var result = await context.AuthenticateAsync(defaultAuthenticate.Name);
    var user = result?.Principal;
    if (user != null)
    {
    account = user.Identity.Name;
    }
    }

  • 相关阅读:
    Alpha冲刺总结
    测试随笔
    项目Alpha冲刺Day11
    项目Alpha冲刺Day12
    项目Alpha冲刺Day10
    项目Alpha冲刺Day9
    项目Alpha冲刺Day6
    beta冲刺1
    Beta准备博客
    基于微信小程序的实验室管理的postmortem
  • 原文地址:https://www.cnblogs.com/joyandjoys/p/9214994.html
Copyright © 2011-2022 走看看