zoukankan      html  css  js  c++  java
  • 验证基于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);

  • 相关阅读:
    assignment of day nine
    不会互相转化,看我的
    enumrate用法
    这是作业
    这是表格
    本周回顾
    爬虫
    今天又学了啥?
    what have we learnt in day five
    OMG that's another blog!
  • 原文地址:https://www.cnblogs.com/wh-blog/p/11843303.html
Copyright © 2011-2022 走看看