Exemple #1
0
        public async Task <string> Login(User user)
        {
            if (!await ValidUser(user))
            {
                return(string.Empty);
            }
            var token = new JwtSecurityToken(TokenSettings.Issuer, TokenSettings.Audience,
                                             notBefore: DateTime.Now,
                                             expires: DateTime.Now.AddMinutes(TokenSettings.Lifetime), signingCredentials:
                                             new SigningCredentials(TokenSettings.GetSymmetricKey(), SecurityAlgorithms.HmacSha256));

            return(new JwtSecurityTokenHandler().WriteToken(token));
        }
Exemple #2
0
 public static IServiceCollection ConfigureAuthentication(this IServiceCollection services)
 {
     services.AddAuthentication(option =>
     {
         option.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme;
         option.DefaultChallengeScheme    = JwtBearerDefaults.AuthenticationScheme;
     }).AddJwtBearer(options =>
     {
         options.TokenValidationParameters = new TokenValidationParameters
         {
             ValidateIssuer           = true,
             ValidateAudience         = true,
             ValidateLifetime         = true,
             ValidateActor            = true,
             ValidateIssuerSigningKey = true,
             ValidateTokenReplay      = true,
             ValidIssuer      = TokenSettings.Issuer,
             ValidAudience    = TokenSettings.Audience,
             IssuerSigningKey = TokenSettings.GetSymmetricKey()
         };
     });
     return(services);
 }