/// <summary> /// This will handle authentication for API /// </summary> /// <param name="services"></param> /// <param name="configuration"></param> private static void ValidateJWTToken(IServiceCollection services, IConfiguration configuration) { TokenManagerSettings option = new TokenManagerSettings(); // configure strongly typed settings objects configuration.GetSection("TokenManager").Bind(option); var securityKey = new SymmetricSecurityKey(Encoding.Default.GetBytes(option.SecretKey)); services.AddAuthentication(options => { options.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; options.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; }) .AddJwtBearer(options => { options.TokenValidationParameters = new TokenValidationParameters { ValidateIssuerSigningKey = true, IssuerSigningKey = securityKey, ValidateIssuer = false, ValidateAudience = false, ValidateLifetime = true, //ClockSkew = TimeSpan.Zero }; }); }
public JwtTokenService(IOptions <TokenManagerSettings> tokenSettings) { _tokenSettings = tokenSettings?.Value; }