aboutsummaryrefslogtreecommitdiff
path: root/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs
diff options
context:
space:
mode:
authorKamen Mladenov <kamen.d.mladenov@protonmail.com>2021-04-09 19:51:35 +0300
committerGitHub <noreply@github.com>2021-04-09 19:51:35 +0300
commit233f38915ba0079079233eff55434ef349c05c45 (patch)
tree6c5f69017865bcab87355e910c87339453da1406 /src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs
parentf4a70c6430db923af9fa9958a11c2d6612cb52cc (diff)
parenta992357efcf1bc1ece81b95ecee5e05a0b73bfdc (diff)
downloadDevHive-233f38915ba0079079233eff55434ef349c05c45.tar
DevHive-233f38915ba0079079233eff55434ef349c05c45.tar.gz
DevHive-233f38915ba0079079233eff55434ef349c05c45.zip
Merge pull request #28 from Team-Kaleidoscope/devHEADv0.2mainheroku/main
Second stage: Complete
Diffstat (limited to 'src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs')
-rw-r--r--src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs70
1 files changed, 0 insertions, 70 deletions
diff --git a/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs b/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs
deleted file mode 100644
index 9f02dd7..0000000
--- a/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs
+++ /dev/null
@@ -1,70 +0,0 @@
-using Microsoft.Extensions.DependencyInjection;
-using Microsoft.EntityFrameworkCore;
-using Microsoft.Extensions.Configuration;
-using DevHive.Data.Models;
-using Microsoft.AspNetCore.Identity;
-using Microsoft.AspNetCore.Builder;
-using System;
-using Microsoft.AspNetCore.Authentication.JwtBearer;
-using DevHive.Data;
-
-namespace DevHive.Web.Configurations.Extensions
-{
- public static class DatabaseExtensions
- {
- public static void DatabaseConfiguration(this IServiceCollection services, IConfiguration configuration)
- {
- services.AddDbContext<DevHiveContext>(options =>
- {
- options.EnableSensitiveDataLogging(true);
- options.UseNpgsql(configuration.GetConnectionString("DEV"));
- });
-
- services.AddIdentity<User, Role>()
- .AddRoles<Role>()
- .AddEntityFrameworkStores<DevHiveContext>();
-
- services.Configure<IdentityOptions>(options =>
- {
- options.User.RequireUniqueEmail = true;
-
- options.Password.RequireDigit = true;
- options.Password.RequiredLength = 5;
- options.Password.RequiredUniqueChars = 0;
- options.Password.RequireLowercase = false;
- options.Password.RequireNonAlphanumeric = false;
- options.Password.RequireUppercase = false;
-
- options.Lockout.AllowedForNewUsers = true;
- options.Lockout.DefaultLockoutTimeSpan = TimeSpan.FromMinutes(5);
- options.Lockout.MaxFailedAccessAttempts = 5;
- });
-
- services.AddAuthorization(options =>
- {
- options.AddPolicy("User", options =>
- {
- options.RequireAuthenticatedUser();
- options.AuthenticationSchemes.Add(JwtBearerDefaults.AuthenticationScheme);
- options.RequireRole("User");
- });
-
- options.AddPolicy("Administrator", options =>
- {
- options.RequireAuthenticatedUser();
- options.AuthenticationSchemes.Add(JwtBearerDefaults.AuthenticationScheme);
- options.RequireRole("Admin");
- });
- });
- }
-
- public static void UseDatabaseConfiguration(this IApplicationBuilder app)
- {
- app.UseHttpsRedirection();
- app.UseRouting();
-
- app.UseAuthentication();
- app.UseAuthorization();
- }
- }
-}