diff options
Diffstat (limited to 'API/Extensions/ConfigureDatabase.cs')
| -rw-r--r-- | API/Extensions/ConfigureDatabase.cs | 42 |
1 files changed, 42 insertions, 0 deletions
diff --git a/API/Extensions/ConfigureDatabase.cs b/API/Extensions/ConfigureDatabase.cs new file mode 100644 index 0000000..57560e2 --- /dev/null +++ b/API/Extensions/ConfigureDatabase.cs @@ -0,0 +1,42 @@ +using Microsoft.Extensions.DependencyInjection; +using API.Database; +using Microsoft.EntityFrameworkCore; +using Microsoft.Extensions.Configuration; +using Data.Models.Classes; +using Microsoft.AspNetCore.Identity; +using Microsoft.AspNetCore.Builder; + +namespace API.Extensions +{ + public static class DatabaseExtensions + { + public static void DatabaseConfiguration(this IServiceCollection services, IConfiguration configuration) + { + services.AddDbContext<DevHiveContext>(options => + options.UseNpgsql(configuration.GetConnectionString("DEV"))) + .AddAuthentication() + .AddJwtBearer(); + + services.AddIdentity<User, Roles>() + .AddEntityFrameworkStores<DevHiveContext>(); + + services.AddAuthentication(); + + services.Configure<IdentityOptions>(options => + { + options.User.RequireUniqueEmail = true; + + options.Password.RequiredLength = 5; + }); + } + + public static void UseDatabaseConfiguration(this IApplicationBuilder app) + { + app.UseHttpsRedirection(); + app.UseRouting(); + + app.UseAuthentication(); + app.UseAuthorization(); + } + } +}
\ No newline at end of file |
