Токен авторизации JWT генерируется на стороне клиента, но не работает в API - PullRequest
1 голос
/ 25 марта 2019

Я попытался реализовать jwt аутентификацию , так как токен генерируется правильно на стороне клиента, но Web API не аутентифицирует запрос со стороны клиента, у меня естьпри условии, что код, который я использовал, и я реализую его в asp.net core 1.1. , я убедился, что токен генерирует правильную информацию, используя JWT.io , и всеотлично.

это код в веб-API, который будет проверять входящий токен с другого сервера

        app.UseJwtBearerAuthentication(new JwtBearerOptions()
        {
            AutomaticAuthenticate=true,
            IncludeErrorDetails=true,               
            TokenValidationParameters = new TokenValidationParameters()
            {
                ValidateIssuer = false,
                ValidateAudience = false,
                ValidAudience = "exampleissuer",
                ValidIssuer = "exampleaudience",
                IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes("superkey_ValueforSigningTheJSONWebTokenJWT"))
            }
        });

это код в приложении, гдетокен генерируется и отправляется через запрос.

var signinKey = new SymmetricSecurityKey(

Encoding.UTF8.GetBytes ("superkey_ValueforSigningTheJSONWebTokenJWT"));

var token = new JwtSecurityToken(
    issuer: "exampleissuer",
    audience: "exampleaudience",
    signingCredentials: new SigningCredentials(signinKey, SecurityAlgorithms.HmacSha256)
);

var AuthenticationToken = new JwtSecurityTokenHandler().WriteToken(token);
            //                
_restClient.Authenticator = new JwtAuthenticator(AuthenticationToken);

req.AddHeader("WWW-Authenticate", string.Format("Bearer {0}", AuthenticationToken));

_restClient.Authenticator.Authenticate(_restClient, req);
            //

может кто-нибудь помочь мнеаутентифицировать токен в веб-интерфейсе.

...