diff --git a/CleanArchitecture/CleanArchitecture.API/Program.cs b/CleanArchitecture/CleanArchitecture.API/Program.cs index 635f076..f1f8b0b 100644 --- a/CleanArchitecture/CleanArchitecture.API/Program.cs +++ b/CleanArchitecture/CleanArchitecture.API/Program.cs @@ -1,5 +1,6 @@ using CleanArchitecture.Application; using CleanArchitecture.Infrastructure; +using CleanArchitecture.Identity; var builder = WebApplication.CreateBuilder(args); @@ -13,6 +14,15 @@ builder.Services.AddSwaggerGen(); builder.Services.AddInfrastructureServices(builder.Configuration); builder.Services.AddApplicationServices(); +builder.Services.ConfigureIdentityServices(builder.Configuration); + +builder.Services.AddCors(o => +{ + o.AddPolicy("CorsPolicy", builder => + builder.AllowAnyOrigin(). + AllowAnyMethod(). + AllowAnyHeader()); +}); var app = builder.Build(); @@ -24,8 +34,11 @@ if (app.Environment.IsDevelopment()) app.UseSwaggerUI(); } +app.UseAuthentication(); app.UseAuthorization(); +app.UseCors("CorsPolicy"); + app.MapControllers(); app.Run(); diff --git a/CleanArchitecture/CleanArchitecture.API/appsettings.json b/CleanArchitecture/CleanArchitecture.API/appsettings.json index 155b899..7ec6057 100644 --- a/CleanArchitecture/CleanArchitecture.API/appsettings.json +++ b/CleanArchitecture/CleanArchitecture.API/appsettings.json @@ -1,13 +1,20 @@ { "ConnectionStrings": { - "ConnectionString": "server=localhost;database=CleanArchitecture;user=root;password=securePassword" + "ConnectionString": "server=localhost;database=CleanArchitecture;user=root;password=securePassword", + "IdentityConnectionString": "server=localhost;database=CleanArchitecture.Security;user=root;password=securePassword" }, "EmailSettings": { "FromAddress": "alejandro@asarmiento.es", "ApiKey": "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", "FromName": "Alejandro Sarmiento" }, + "JwtSettings": { + "Key": "CjF*Hp$pHvsx$%wsSyfpMevUrzj@%TJv3ZjNPk34daE7N%3KjrjCnv2V76uRY8bCtH5aduTmMwdiuh%QP3iYEh$Fy*XDzz7S&pFyyZVDLDwTdFDxrP9m#A@MBgV6oNCf", + "Issuer": "CleanArchitectureAlejandroSarmiento", + "Audience": "CleanArchitectureUsers", + "DurationInMinutes": 360 + }, "Logging": { "LogLevel": { "Default": "Information",