• 验证基于identityserver4授权的token


    问题:

      aspnetcore  services 注入一把梭,为什么会有这种需求?

      因为有的程序不是aspnetcore,asp.net web api 也想接入。

    实现:

      // 需要引用的包,最低支持4.5

      System.IdentityModel.Tokens.Jwt 5.6.0

      主要代码

      // 获取公钥

         var json = httpclient 获取 jwks;

      var jwk = Microsoft.IdentityModel.Tokens.JsonWebKeySet.Create(json);

      // 构建parameter

           var parameter = new Microsoft.IdentityModel.Tokens.TokenValidationParameters();
           parameter.IssuerSigningKeys = jwk.GetSigningKeys();

      // 验证颁布者
           parameter.ValidIssuer = "http://localhost:5000";

      // 验证资源
           parameter.ValidAudience = "api1";

           // 验证token

      var claimsPrincipal = new System.IdentityModel.Tokens.Jwt.JwtSecurityTokenHandler().ValidateToken(tokenString, parameter, out Microsoft.IdentityModel.Tokens.SecurityToken token);

  • 相关阅读:
    C++实现base64编解码
    使用matplotlib绘制3D函数图像
    C++分治策略实现快速排序
    C++分治策略实现二分搜索
    C++生成随机数
    eBay 表结构
    mysql 流程函数
    无限极分类
    PHP 导出 Excell
    js
  • 原文地址:https://www.cnblogs.com/wh-blog/p/11843303.html
Copyright © 2020-2023  润新知