无法授权,载体错误=“ invalid_token”,错误_description =“签名无效”

时间:2019-08-07 13:58:05

标签: .net jwt authorization core

无法使用.net核心中的Jwt身份验证来装饰我的应用

我关注了this tutorial

启动

        RSA publicRsa = RSA.Create();
        publicRsa.FromXmlFile(Path.Combine(Directory.GetCurrentDirectory(),
            "Keys",
            Configuration.GetValue<String>("Tokens:PublicKey")
        ));
        RsaSecurityKey signingKey = new RsaSecurityKey(publicRsa);

        services.AddAuthentication(options =>
        {
            options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
            options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme;
        }).AddJwtBearer(config =>
        {
            config.RequireHttpsMetadata = false;
            config.SaveToken = true;
            config.TokenValidationParameters = new TokenValidationParameters()
            {
                IssuerSigningKey = signingKey,
                ValidateAudience = false,
                ValidAudience = Configuration["Tokens:Audience"],
                ValidateIssuer = true,
                ValidIssuer = Configuration["Tokens:Issuer"],
                ValidateLifetime = true,
                ValidateIssuerSigningKey = true
            };
        });

    this is my appsettings

   "Tokens": {
"PrivateKey": "private.xml",
"PublicKey": "public.xml",
"Lifetime": "86400",
"Issuer": "http://localhost:44330/",
"Audience": "http://localhost:44330/"
    }

我可以使用令牌注册并创建用户 我也可以使用以下用户名和密码登录 创建的用户,但是当我尝试使用此身份验证来授权或不授予某些控制器时,我会收到该错误

0 个答案:

没有答案