public AuthService(MshareDbContext context, IEmailService emailService, ITimeService timeService, IJWTConfiguration jwtConf, IURIConfiguration uriConf, IStringLocalizer<LocalizationResource> localizer, IRazorViewToStringRenderer renderer) { Context = context; EmailService = emailService; TimeService = timeService; JwtConf = jwtConf; UriConf = uriConf; Renderer = renderer; Localizer = localizer; random = new Random(); }
public static void UseAuthenticationSettings(this IApplicationBuilder app, ICorsConfiguration corsConfiguration, IJWTConfiguration jwtConfiguration) { if (!corsConfiguration.IsEnabled() || !jwtConfiguration.IsEnabled()) { return; } app.UseCors(builder => builder .WithOrigins(corsConfiguration.Origins) .AllowAnyOrigin() .AllowAnyMethod() .AllowAnyHeader() //.AllowCredentials() ); app.UseAuthentication(); app.UseAuthorization(); }
public static void AddAuthenticationSettings(this IServiceCollection services, IJWTConfiguration jwtConfiguration, IJWTManager jwtManager) { if (!jwtConfiguration.IsEnabled()) { return; } services.AddAuthentication(opt => { opt.DefaultAuthenticateScheme = JwtBearerDefaults.AuthenticationScheme; opt.DefaultScheme = JwtBearerDefaults.AuthenticationScheme; opt.DefaultChallengeScheme = JwtBearerDefaults.AuthenticationScheme; }).AddJwtBearer(opt => { //opt.RequireHttpsMetadata = false; //opt.Authority = "http://localhost:5000"; opt.SaveToken = true; opt.TokenValidationParameters = jwtManager.GetTokenValidationParameters(); }); services.AddAuthorization(auth => { auth.AddPolicy(POLICY_NAME, GenerateAuthorizationPolicy()); }); }
public JWTManager(IJWTConfiguration configuration) { this.configuration = configuration; }