public void ConfigureServices(IServiceCollection services) { services.AddDbContext <SportNewsContext>(options => options.UseSqlServer(Configuration.GetConnectionString("Database")), ServiceLifetime.Transient); services.AddAuthentication(JwtBearerDefaults.AuthenticationScheme) .AddJwtBearer(option => { option.RequireHttpsMetadata = false; option.SaveToken = true; option.TokenValidationParameters = new TokenValidationParameters { ValidateIssuer = true, ValidateAudience = true, ValidateLifetime = true, ValidateIssuerSigningKey = true, ValidIssuer = Configuration["Jwt:Issuer"], ValidAudience = Configuration["Jwt:Audience"], IssuerSigningKey = new SymmetricSecurityKey(Encoding.UTF8.GetBytes(Configuration["Jwt:SecretKey"])), ClockSkew = TimeSpan.Zero }; //services.AddCors() }); services.AddAuthorization(configure => { configure.AddPolicy(Policies.SuperAdmin, Policies.FullAdminPolicy()); configure.AddPolicy(Policies.Admin, Policies.AdminPolicy()); configure.AddPolicy(Policies.Dziennikarz, Policies.FullJournalistPolicy()); configure.AddPolicy(Policies.CustomJournalist, Policies.CustomJournalistPolicy()); }); //services.AddCors(options => //{ // options.AddPolicy("AllowOrigin", // builder => // { // builder.WithOrigins("http://localhost:4200") // .AllowAnyHeader() // .AllowAnyMethod() // .AllowCredentials(); // }); //}); ; services.AddControllers().AddJsonOptions(options => options.JsonSerializerOptions.Converters.Add(new IntToStringConverter())); services.AddTransient(typeof(IRepository <>), typeof(Repository <>)); services.AddTransient(typeof(ISportNewsContext), typeof(SportNewsContext)); services.AddTransient(typeof(IUnitOfWork), typeof(UnitOfWork)); }