diff options
| author | transtrike <transtrike@gmail.com> | 2021-01-23 16:01:05 +0200 |
|---|---|---|
| committer | transtrike <transtrike@gmail.com> | 2021-01-23 16:01:05 +0200 |
| commit | 1f8d51c5393ea2f413de4f3e05f77d360d096ff3 (patch) | |
| tree | 529dd85dfcae02a38ff6525c75c17db49f64bd91 /src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs | |
| parent | df06bc309d44db352441f42de7d34794a6ee54ba (diff) | |
| download | DevHive-1f8d51c5393ea2f413de4f3e05f77d360d096ff3.tar DevHive-1f8d51c5393ea2f413de4f3e05f77d360d096ff3.tar.gz DevHive-1f8d51c5393ea2f413de4f3e05f77d360d096ff3.zip | |
The beginning of role based authorization
Diffstat (limited to 'src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs')
| -rw-r--r-- | src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs | 12 |
1 files changed, 12 insertions, 0 deletions
diff --git a/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs b/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs index 4831435..6e92a65 100644 --- a/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs +++ b/src/DevHive.Web/Configurations/Extensions/ConfigureDatabase.cs @@ -8,6 +8,8 @@ using Microsoft.AspNetCore.Builder; using System; using Microsoft.AspNetCore.Authentication.JwtBearer; using DevHive.Data; +using Microsoft.AspNetCore.Authorization; +using System.Collections.Generic; namespace DevHive.Web.Configurations.Extensions { @@ -19,6 +21,7 @@ namespace DevHive.Web.Configurations.Extensions options.UseNpgsql(configuration.GetConnectionString("DEV"))); services.AddIdentity<User, Role>() + .AddRoles<Role>() .AddEntityFrameworkStores<DevHiveContext>(); services.Configure<IdentityOptions>(options => @@ -47,6 +50,15 @@ namespace DevHive.Web.Configurations.Extensions options.AuthenticationSchemes.Add(JwtBearerDefaults.AuthenticationScheme); options.RequireRole("User"); }); + + options.AddPolicy("Administrator", options => + { + options.RequireAuthenticatedUser(); + options.AuthenticationSchemes.Add(JwtBearerDefaults.AuthenticationScheme); + options.RequireRole("Admin"); + }); + + // options.DefaultPolicy = ; }); } |
