using Faben.Api; using FastEndpoints; using FastEndpoints.Security; using Microsoft.AspNetCore.Identity; using Microsoft.EntityFrameworkCore; var builder = WebApplication.CreateBuilder(args); // Add services to the container. // Learn more about configuring Swagger/OpenAPI at https://aka.ms/aspnetcore/swashbuckle builder.Services.AddEndpointsApiExplorer(); builder.Services.AddFastEndpoints() .AddJWTBearerAuth("TokenSigningKey1231312375645412312312341231") //add this .AddAuthorization(); builder.Services.AddEndpointsApiExplorer(); builder.Services.AddSwaggerGen(); builder.Services.AddDbContext(options => { options.UseSqlServer(builder.Configuration.GetConnectionString("Default")); }); builder.Services.AddCors(); builder.Services .AddIdentityCore(options => { options.Password = new PasswordOptions { RequireDigit = false, RequiredLength = 5, RequireLowercase = false, RequireUppercase = false, RequiredUniqueChars = 0, RequireNonAlphanumeric = false }; }) .AddRoles() .AddEntityFrameworkStores() .AddDefaultTokenProviders(); var app = builder.Build(); app.UseHttpsRedirection(); app.UseStaticFiles(); app.UseSwagger(); app.UseSwaggerUI(); app .UseAuthentication() //add this .UseAuthorization() .UseResponseCaching() .UseFastEndpoints(c => { c.Endpoints.RoutePrefix = "api"; c.Versioning.Prefix = "v"; c.Versioning.DefaultVersion = 1; c.Versioning.PrependToRoute = true; }); app.UseCors(b => { b.AllowAnyHeader() .AllowAnyOrigin() .AllowAnyMethod(); }); app.Run();