Browse Source

Created IdentityPermissionDefinitionProvider.

pull/216/head
Halil İbrahim Kalkan 9 years ago
parent
commit
0ef8f2e936
  1. 8
      src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs
  2. 1
      src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.csproj
  3. 10
      src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs
  4. 22
      src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissionDefinitionProvider.cs
  5. 23
      src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissions.cs

8
src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs

@ -1,5 +1,4 @@
using Volo.Abp.Authorization.Permissions;
using Volo.Abp.Permissions;
namespace AbpDesk.Web.Mvc.Permissions
{
@ -16,13 +15,6 @@ namespace AbpDesk.Web.Mvc.Permissions
var customers = abpDeskGroup.AddPermission("AbpDesk.Customers");
customers.AddChild("AbpDesk.Customers.Create");
customers.AddChild("AbpDesk.Customers.Delete");
var identityGroup = context.AddGroup("Identity");
var userManagement = identityGroup.AddPermission("Identity.UserManagement");
userManagement.AddChild("Identity.UserManagement.Create");
userManagement.AddChild("Identity.UserManagement.Update");
userManagement.AddChild("Identity.UserManagement.Delete");
}
}
}

1
src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.csproj

@ -14,6 +14,7 @@
</PropertyGroup>
<ItemGroup>
<ProjectReference Include="..\Volo.Abp.Authorization\Volo.Abp.Authorization.csproj" />
<ProjectReference Include="..\Volo.Abp.Ddd\Volo.Abp.Ddd.csproj" />
<ProjectReference Include="..\Volo.Abp.Identity.Domain.Shared\Volo.Abp.Identity.Domain.Shared.csproj" />
</ItemGroup>

10
src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs

@ -1,14 +1,22 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Authorization;
using Volo.Abp.Authorization.Permissions;
using Volo.Abp.Modularity;
namespace Volo.Abp.Identity
{
[DependsOn(typeof(AbpDddModule))]
[DependsOn(typeof(AbpIdentityDomainSharedModule))]
[DependsOn(typeof(AbpAuthorizationModule))]
[DependsOn(typeof(AbpDddModule))]
public class AbpIdentityApplicationContractsModule : AbpModule
{
public override void ConfigureServices(IServiceCollection services)
{
services.Configure<PermissionOptions>(options =>
{
options.DefinitionProviders.Add<IdentityPermissionDefinitionProvider>();
});
services.AddAssemblyOf<AbpIdentityApplicationContractsModule>();
}
}

22
src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissionDefinitionProvider.cs

@ -0,0 +1,22 @@
using Volo.Abp.Authorization.Permissions;
namespace Volo.Abp.Identity
{
public class IdentityPermissionDefinitionProvider : PermissionDefinitionProvider
{
public override void Define(IPermissionDefinitionContext context)
{
var identityGroup = context.AddGroup(IdentityPermissions.GroupName);
var rolesPermission = identityGroup.AddPermission(IdentityPermissions.Roles.Default);
rolesPermission.AddChild(IdentityPermissions.Roles.Create);
rolesPermission.AddChild(IdentityPermissions.Roles.Update);
rolesPermission.AddChild(IdentityPermissions.Roles.Delete);
var usersPermission = identityGroup.AddPermission(IdentityPermissions.Users.Default);
usersPermission.AddChild(IdentityPermissions.Users.Create);
usersPermission.AddChild(IdentityPermissions.Users.Update);
usersPermission.AddChild(IdentityPermissions.Users.Delete);
}
}
}

23
src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissions.cs

@ -0,0 +1,23 @@
namespace Volo.Abp.Identity
{
public static class IdentityPermissions
{
public const string GroupName = "AbpIdentity";
public static class Roles
{
public const string Default = GroupName + ".Roles";
public const string Create = Default + ".Create";
public const string Update = Default + ".Update";
public const string Delete = Default + ".Delete";
}
public static class Users
{
public const string Default = GroupName + ".Users";
public const string Create = Default + ".Create";
public const string Update = Default + ".Update";
public const string Delete = Default + ".Delete";
}
}
}
Loading…
Cancel
Save