diff --git a/src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs b/src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs
index b65bdd412c..a447f9bfc7 100644
--- a/src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs
+++ b/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");
}
}
}
diff --git a/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.csproj b/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.csproj
index 3a5f5ac4d6..da73098120 100644
--- a/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.csproj
+++ b/src/Volo.Abp.Identity.Application.Contracts/Volo.Abp.Identity.Application.Contracts.csproj
@@ -14,6 +14,7 @@
+
diff --git a/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs b/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs
index e481a0be43..54b4b99a24 100644
--- a/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/AbpIdentityApplicationContractsModule.cs
+++ b/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(options =>
+ {
+ options.DefinitionProviders.Add();
+ });
+
services.AddAssemblyOf();
}
}
diff --git a/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissionDefinitionProvider.cs b/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissionDefinitionProvider.cs
new file mode 100644
index 0000000000..35d3e967a0
--- /dev/null
+++ b/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);
+ }
+ }
+}
diff --git a/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissions.cs b/src/Volo.Abp.Identity.Application.Contracts/Volo/Abp/Identity/IdentityPermissions.cs
new file mode 100644
index 0000000000..ea6588073a
--- /dev/null
+++ b/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";
+ }
+ }
+}
\ No newline at end of file