-
Notifications
You must be signed in to change notification settings - Fork 1
A9 Security: Authorization (ApplicationRoleManager) (Wpf, Xamarin)
chempkovsky edited this page Jul 24, 2021
·
1 revision
To add a custom ApplicationRoleManager implementation to your project, follow these steps:
- With Visual studio 2019 open Dm04WebApp.csproj project
- open
App_Start\IdentityConfig.cs
-file - insert the code below right after the definition of
ApplicationUserManager {...}
-class
public class ApplicationRoleManager : RoleManager<IdentityRole>
{
public ApplicationRoleManager(IRoleStore<IdentityRole, string> roleStore) : base(roleStore)
{
}
public static ApplicationRoleManager Create(IdentityFactoryOptions<ApplicationRoleManager> options, IOwinContext context)
{
///It is based on the same context as the ApplicationUserManager
var appRoleManager =
new ApplicationRoleManager(new RoleStore<IdentityRole> (context.Get<ApplicationDbContext> ()));
return appRoleManager;
}
}
- open
App_Start\Startup.Auth.cs
-file - find
ConfigureAuth(IAppBuilder app){ ... }
-method. - Place the cursor immediately after the line of code:
app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create);
public void ConfigureAuth(IAppBuilder app)
{
...
app.CreatePerOwinContext(ApplicationDbContext.Create);
app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create);
--PLACE CURSOR HERE--
- Insert the following line of code:
app.CreatePerOwinContext<ApplicationRoleManager>(ApplicationRoleManager.Create);
- Here is a result
public void ConfigureAuth(IAppBuilder app)
{
...
app.CreatePerOwinContext(ApplicationDbContext.Create);
app.CreatePerOwinContext<ApplicationUserManager>(ApplicationUserManager.Create);
app.CreatePerOwinContext<ApplicationRoleManager>(ApplicationRoleManager.Create);
...