diff --git a/Volo.Abp.sln b/Volo.Abp.sln index d22f0dd3ca..fc12143408 100644 --- a/Volo.Abp.sln +++ b/Volo.Abp.sln @@ -258,8 +258,6 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Settings.Domain.Sh EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Abp.Settings", "Abp.Settings", "{D62B8D43-B8D9-4FC6-97E2-DC54CD765915}" EndProject -Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Permissions", "src\Volo.Abp.Permissions\Volo.Abp.Permissions.csproj", "{0FDD21F9-9E73-4DB5-8356-A110D3FBDB1D}" -EndProject Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "Abp.Permissions", "Abp.Permissions", "{055F4AC0-46C4-4E99-89CD-0F30D4A97382}" EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Permissions.Domain", "src\Volo.Abp.Permissions.Domain\Volo.Abp.Permissions.Domain.csproj", "{D77E0662-8404-43C5-9C46-6289EA207A40}" @@ -270,11 +268,11 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Permissions.Entity EndProject Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Permissions.Tests", "test\Volo.Abp.Permissions.Tests\Volo.Abp.Permissions.Tests.csproj", "{7B4D2BEB-DE3E-4533-8CD4-7BBB30414647}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Permissions.Web", "src\Volo.Abp.Permissions.Web\Volo.Abp.Permissions.Web.csproj", "{8859CFE4-BC7F-4F29-B6B5-A9457435CC32}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Permissions.Web", "src\Volo.Abp.Permissions.Web\Volo.Abp.Permissions.Web.csproj", "{8859CFE4-BC7F-4F29-B6B5-A9457435CC32}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Permissions.Application.Contracts", "src\Volo.Abp.Permissions.Application.Contracts\Volo.Abp.Permissions.Application.Contracts.csproj", "{837ABFF5-66EE-486A-8023-8DD3EE7D7D96}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Permissions.Application.Contracts", "src\Volo.Abp.Permissions.Application.Contracts\Volo.Abp.Permissions.Application.Contracts.csproj", "{837ABFF5-66EE-486A-8023-8DD3EE7D7D96}" EndProject -Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "Volo.Abp.Permissions.Application", "src\Volo.Abp.Permissions.Application\Volo.Abp.Permissions.Application.csproj", "{90197499-CBB6-4C8C-90E6-8718CD755C04}" +Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Volo.Abp.Permissions.Application", "src\Volo.Abp.Permissions.Application\Volo.Abp.Permissions.Application.csproj", "{90197499-CBB6-4C8C-90E6-8718CD755C04}" EndProject Global GlobalSection(SolutionConfigurationPlatforms) = preSolution @@ -690,10 +688,6 @@ Global {27F990E2-6820-4159-B54A-59C8ADED8D28}.Debug|Any CPU.Build.0 = Debug|Any CPU {27F990E2-6820-4159-B54A-59C8ADED8D28}.Release|Any CPU.ActiveCfg = Release|Any CPU {27F990E2-6820-4159-B54A-59C8ADED8D28}.Release|Any CPU.Build.0 = Release|Any CPU - {0FDD21F9-9E73-4DB5-8356-A110D3FBDB1D}.Debug|Any CPU.ActiveCfg = Debug|Any CPU - {0FDD21F9-9E73-4DB5-8356-A110D3FBDB1D}.Debug|Any CPU.Build.0 = Debug|Any CPU - {0FDD21F9-9E73-4DB5-8356-A110D3FBDB1D}.Release|Any CPU.ActiveCfg = Release|Any CPU - {0FDD21F9-9E73-4DB5-8356-A110D3FBDB1D}.Release|Any CPU.Build.0 = Release|Any CPU {D77E0662-8404-43C5-9C46-6289EA207A40}.Debug|Any CPU.ActiveCfg = Debug|Any CPU {D77E0662-8404-43C5-9C46-6289EA207A40}.Debug|Any CPU.Build.0 = Debug|Any CPU {D77E0662-8404-43C5-9C46-6289EA207A40}.Release|Any CPU.ActiveCfg = Release|Any CPU @@ -847,7 +841,6 @@ Global {61422EC8-8FFB-48EA-B4B5-527E29077930} = {37087D1B-3693-4E96-983D-A69F210BDE53} {27F990E2-6820-4159-B54A-59C8ADED8D28} = {D62B8D43-B8D9-4FC6-97E2-DC54CD765915} {D62B8D43-B8D9-4FC6-97E2-DC54CD765915} = {3B481ACC-5BB3-4189-880C-5F7A27EAEB70} - {0FDD21F9-9E73-4DB5-8356-A110D3FBDB1D} = {4C753F64-0C93-4D65-96C2-A40893AFC1E8} {055F4AC0-46C4-4E99-89CD-0F30D4A97382} = {3B481ACC-5BB3-4189-880C-5F7A27EAEB70} {D77E0662-8404-43C5-9C46-6289EA207A40} = {055F4AC0-46C4-4E99-89CD-0F30D4A97382} {E4D0326C-515D-46FA-AF7E-1AC32155BD03} = {055F4AC0-46C4-4E99-89CD-0F30D4A97382} diff --git a/src/AbpDesk/AbpDesk.Web.Mvc/AbpDeskWebMvcModule.cs b/src/AbpDesk/AbpDesk.Web.Mvc/AbpDeskWebMvcModule.cs index 80b48ab86e..efb68e61ec 100644 --- a/src/AbpDesk/AbpDesk.Web.Mvc/AbpDeskWebMvcModule.cs +++ b/src/AbpDesk/AbpDesk.Web.Mvc/AbpDeskWebMvcModule.cs @@ -18,6 +18,7 @@ using Volo.Abp.AspNetCore.MultiTenancy; using Volo.Abp.AspNetCore.Mvc; using Volo.Abp.AspNetCore.Mvc.Bundling; using Volo.Abp.AspNetCore.Mvc.UI.Bootstrap; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.Autofac; using Volo.Abp.Identity; using Volo.Abp.Identity.EntityFrameworkCore; diff --git a/src/AbpDesk/AbpDesk.Web.Mvc/Controllers/AuthTestController.cs b/src/AbpDesk/AbpDesk.Web.Mvc/Controllers/AuthTestController.cs index 49529fa14c..7b4765281f 100644 --- a/src/AbpDesk/AbpDesk.Web.Mvc/Controllers/AuthTestController.cs +++ b/src/AbpDesk/AbpDesk.Web.Mvc/Controllers/AuthTestController.cs @@ -36,7 +36,7 @@ namespace AbpDesk.Web.Mvc.Controllers return Content("OK: AllowedPermission"); } - [RequirePermission("NotAllowedPermission")] + [RequiresPermission("NotAllowedPermission")] public ContentResult NotAllowedPermissionTest() { return Content("OK: NotAllowedPermission"); diff --git a/src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs b/src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs index 1e98c94086..b65bdd412c 100644 --- a/src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs +++ b/src/AbpDesk/AbpDesk.Web.Mvc/Permissions/AbpDeskPermissionDefinitionProvider.cs @@ -1,4 +1,5 @@ -using Volo.Abp.Permissions; +using Volo.Abp.Authorization.Permissions; +using Volo.Abp.Permissions; namespace AbpDesk.Web.Mvc.Permissions { diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/AbpAuthorizationModule.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/AbpAuthorizationModule.cs index cd50626ee2..3ad0498828 100644 --- a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/AbpAuthorizationModule.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/AbpAuthorizationModule.cs @@ -1,6 +1,4 @@ -using System; -using System.Threading.Tasks; -using Microsoft.AspNetCore.Authorization; +using Microsoft.AspNetCore.Authorization; using Microsoft.Extensions.DependencyInjection; using Volo.Abp.Modularity; @@ -14,7 +12,7 @@ namespace Volo.Abp.Authorization { options.AddPolicy("AllowedPermission", policy => { - policy.Requirements.Add(new RequirePermissionRequirement + policy.Requirements.Add(new RequiresPermissionRequirement { PermissionName = "AllowedPermission" }); @@ -22,41 +20,13 @@ namespace Volo.Abp.Authorization options.AddPolicy("NotAllowedPermission", policy => { - policy.Requirements.Add(new RequirePermissionRequirement { PermissionName = "NotAllowedPermission" }); + policy.Requirements.Add(new RequiresPermissionRequirement { PermissionName = "NotAllowedPermission" }); }); }); - services.AddSingleton(); + services.AddSingleton(); services.AddAssemblyOf(); } } - - public class RequirePermissionRequirement : IAuthorizationRequirement - { - public string PermissionName { get; set; } - } - - public class RequirePermissionAttribute : AuthorizeAttribute - { - public RequirePermissionAttribute(string permissionName) - { - Policy = permissionName; - } - } - - public class RequirePermissionHandler : AuthorizationHandler - { - protected override Task HandleRequirementAsync( - AuthorizationHandlerContext context, - RequirePermissionRequirement requirement) - { - if (requirement.PermissionName == "AllowedPermission") - { - context.Succeed(requirement); - } - - return Task.CompletedTask; - } - } } diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionChecker.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionChecker.cs similarity index 80% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionChecker.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionChecker.cs index 9007faca66..26b0d7a01a 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionChecker.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionChecker.cs @@ -1,7 +1,7 @@ using System.Threading.Tasks; using JetBrains.Annotations; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public interface IPermissionChecker { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionContext.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionContext.cs similarity index 83% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionContext.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionContext.cs index dedf471d56..94353f520f 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionContext.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionContext.cs @@ -1,6 +1,6 @@ using JetBrains.Annotations; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public interface IPermissionDefinitionContext { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionManager.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionManager.cs similarity index 87% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionManager.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionManager.cs index 52fd62acfc..432a9e343d 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionManager.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionManager.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using JetBrains.Annotations; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public interface IPermissionDefinitionManager { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionProvider.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionProvider.cs similarity index 80% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionProvider.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionProvider.cs index fd23aad5fe..d0a41b3390 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionDefinitionProvider.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionDefinitionProvider.cs @@ -1,6 +1,6 @@ using Volo.Abp.DependencyInjection; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public interface IPermissionDefinitionProvider : ISingletonDependency { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionStore.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionStore.cs similarity index 84% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionStore.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionStore.cs index e27ad54262..f7ed62b6d4 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionStore.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionStore.cs @@ -1,7 +1,7 @@ using System.Threading.Tasks; using JetBrains.Annotations; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public interface IPermissionStore { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionValueProvider.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionValueProvider.cs similarity index 85% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionValueProvider.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionValueProvider.cs index eb6b83fc6e..d610a5ccd2 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/IPermissionValueProvider.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/IPermissionValueProvider.cs @@ -1,7 +1,7 @@ using System.Threading.Tasks; using Volo.Abp.DependencyInjection; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public interface IPermissionValueProvider : ISingletonDependency { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/NullPermissionStore.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/NullPermissionStore.cs similarity index 92% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/NullPermissionStore.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/NullPermissionStore.cs index d9ab2546dc..b5c5cb5a4b 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/NullPermissionStore.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/NullPermissionStore.cs @@ -3,7 +3,7 @@ using Microsoft.Extensions.Logging; using Microsoft.Extensions.Logging.Abstractions; using Volo.Abp.DependencyInjection; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class NullPermissionStore : IPermissionStore, ISingletonDependency { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionChecker.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionChecker.cs similarity index 97% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionChecker.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionChecker.cs index 433f100e22..ffda9cafc3 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionChecker.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionChecker.cs @@ -6,7 +6,7 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Options; using Volo.Abp.DependencyInjection; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionChecker : IPermissionChecker, ISingletonDependency { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionCheckerExtensions.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionCheckerExtensions.cs similarity index 88% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionCheckerExtensions.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionCheckerExtensions.cs index 05d5ff8501..11b7a1ca25 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionCheckerExtensions.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionCheckerExtensions.cs @@ -1,6 +1,6 @@ using System.Threading.Tasks; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public static class PermissionCheckerExtensions { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinition.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinition.cs similarity index 97% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinition.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinition.cs index 1415b21b73..dddfcce41c 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinition.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinition.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Collections.Immutable; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionDefinition { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionContext.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionContext.cs similarity index 89% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionContext.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionContext.cs index bf3ee824b5..caf00580ae 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionContext.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionContext.cs @@ -1,8 +1,6 @@ using System.Collections.Generic; -using System.Collections.Immutable; -using System.Linq; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionDefinitionContext : IPermissionDefinitionContext { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionManager.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionManager.cs similarity index 98% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionManager.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionManager.cs index 41250488ec..a4ec886202 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionManager.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionManager.cs @@ -6,7 +6,7 @@ using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Options; using Volo.Abp.DependencyInjection; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionDefinitionManager : IPermissionDefinitionManager, ISingletonDependency { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionProvider.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionProvider.cs similarity index 78% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionProvider.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionProvider.cs index 43f8ebe146..df1674dc2e 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionDefinitionProvider.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionDefinitionProvider.cs @@ -1,4 +1,4 @@ -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public abstract class PermissionDefinitionProvider : IPermissionDefinitionProvider { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionGrantInfo.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGrantInfo.cs similarity index 92% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionGrantInfo.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGrantInfo.cs index 1d2b584ee2..833d69fcb3 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionGrantInfo.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGrantInfo.cs @@ -1,6 +1,6 @@ using JetBrains.Annotations; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionGrantInfo { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionGroupDefinition.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGroupDefinition.cs similarity index 98% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionGroupDefinition.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGroupDefinition.cs index 5ac8cb16c9..6e88379882 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionGroupDefinition.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionGroupDefinition.cs @@ -1,7 +1,7 @@ using System.Collections.Generic; using System.Collections.Immutable; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionGroupDefinition //TODO: Consider to make possible a group have sub groups { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionOptions.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionOptions.cs similarity index 90% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionOptions.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionOptions.cs index a50af4e5fc..30c1170e49 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionOptions.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionOptions.cs @@ -1,6 +1,6 @@ using Volo.Abp.Collections; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionOptions { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionValueProvider.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionValueProvider.cs similarity index 91% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionValueProvider.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionValueProvider.cs index 48441d5a5e..bffed7e041 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionValueProvider.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionValueProvider.cs @@ -1,6 +1,6 @@ using System.Threading.Tasks; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public abstract class PermissionValueProvider : IPermissionValueProvider { diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionValueProviderGrantInfo.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionValueProviderGrantInfo.cs similarity index 91% rename from src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionValueProviderGrantInfo.cs rename to src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionValueProviderGrantInfo.cs index da83db49f8..3c1fc47799 100644 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/PermissionValueProviderGrantInfo.cs +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/Permissions/PermissionValueProviderGrantInfo.cs @@ -1,6 +1,6 @@ using JetBrains.Annotations; -namespace Volo.Abp.Permissions +namespace Volo.Abp.Authorization.Permissions { public class PermissionValueProviderGrantInfo { diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionAttribute.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionAttribute.cs new file mode 100644 index 0000000000..1d9e079629 --- /dev/null +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionAttribute.cs @@ -0,0 +1,12 @@ +using Microsoft.AspNetCore.Authorization; + +namespace Volo.Abp.Authorization +{ + public class RequiresPermissionAttribute : AuthorizeAttribute + { + public RequiresPermissionAttribute(string permissionName) + { + Policy = permissionName; + } + } +} \ No newline at end of file diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionHandler.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionHandler.cs new file mode 100644 index 0000000000..625a91e15f --- /dev/null +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionHandler.cs @@ -0,0 +1,20 @@ +using System.Threading.Tasks; +using Microsoft.AspNetCore.Authorization; + +namespace Volo.Abp.Authorization +{ + public class RequiresPermissionHandler : AuthorizationHandler + { + protected override Task HandleRequirementAsync( + AuthorizationHandlerContext context, + RequiresPermissionRequirement requirement) + { + if (requirement.PermissionName == "AllowedPermission") + { + context.Succeed(requirement); + } + + return Task.CompletedTask; + } + } +} \ No newline at end of file diff --git a/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionRequirement.cs b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionRequirement.cs new file mode 100644 index 0000000000..362cf8c9bd --- /dev/null +++ b/src/Volo.Abp.Authorization/Volo/Abp/Authorization/RequiresPermissionRequirement.cs @@ -0,0 +1,9 @@ +using Microsoft.AspNetCore.Authorization; + +namespace Volo.Abp.Authorization +{ + public class RequiresPermissionRequirement : IAuthorizationRequirement + { + public string PermissionName { get; set; } + } +} \ No newline at end of file diff --git a/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/RolePermissionManagementProvider.cs b/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/RolePermissionManagementProvider.cs index b7d14dd4cd..5b50ee7c5a 100644 --- a/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/RolePermissionManagementProvider.cs +++ b/src/Volo.Abp.Identity.Domain/Volo/Abp/Identity/RolePermissionManagementProvider.cs @@ -1,5 +1,6 @@ using System; using System.Threading.Tasks; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.Guids; using Volo.Abp.Permissions; diff --git a/src/Volo.Abp.Identity.Domain/Volo/Abp/Permissions/RolePermissionManagerExtensions.cs b/src/Volo.Abp.Identity.Domain/Volo/Abp/Permissions/RolePermissionManagerExtensions.cs index 3acff7e635..77f152928c 100644 --- a/src/Volo.Abp.Identity.Domain/Volo/Abp/Permissions/RolePermissionManagerExtensions.cs +++ b/src/Volo.Abp.Identity.Domain/Volo/Abp/Permissions/RolePermissionManagerExtensions.cs @@ -8,6 +8,13 @@ namespace Volo.Abp.Permissions { public static class RolePermissionManagerExtensions { + public static Task GetForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName, string permissionName) + { + Check.NotNull(permissionManager, nameof(permissionManager)); + + return permissionManager.GetAsync(permissionName, RolePermissionManagementProvider.ProviderName, roleName); + } + public static Task> GetAllForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName) { Check.NotNull(permissionManager, nameof(permissionManager)); @@ -15,11 +22,11 @@ namespace Volo.Abp.Permissions return permissionManager.GetAllAsync(RolePermissionManagementProvider.ProviderName, roleName); } - public static Task SetForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName, [NotNull] string name, bool isGranted) + public static Task SetForRoleAsync([NotNull] this IPermissionManager permissionManager, string roleName, [NotNull] string permissionName, bool isGranted) { Check.NotNull(permissionManager, nameof(permissionManager)); - return permissionManager.SetAsync(name, RolePermissionManagementProvider.ProviderName, roleName, isGranted); + return permissionManager.SetAsync(permissionName, RolePermissionManagementProvider.ProviderName, roleName, isGranted); } } } \ No newline at end of file diff --git a/src/Volo.Abp.Permissions.Application/Volo/Abp/Permissions/PermissionAppService.cs b/src/Volo.Abp.Permissions.Application/Volo/Abp/Permissions/PermissionAppService.cs index badc1ae236..9a0674304d 100644 --- a/src/Volo.Abp.Permissions.Application/Volo/Abp/Permissions/PermissionAppService.cs +++ b/src/Volo.Abp.Permissions.Application/Volo/Abp/Permissions/PermissionAppService.cs @@ -2,6 +2,7 @@ using System.Collections.Generic; using System.Threading.Tasks; using Volo.Abp.Application.Services; +using Volo.Abp.Authorization.Permissions; namespace Volo.Abp.Permissions { diff --git a/src/Volo.Abp.Permissions.Domain/Volo.Abp.Permissions.Domain.csproj b/src/Volo.Abp.Permissions.Domain/Volo.Abp.Permissions.Domain.csproj index a8dd53e12c..6d5e9b7811 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo.Abp.Permissions.Domain.csproj +++ b/src/Volo.Abp.Permissions.Domain/Volo.Abp.Permissions.Domain.csproj @@ -14,9 +14,9 @@ + - diff --git a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs index def72d7cf8..4a3a9fd172 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs +++ b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/AbpPermissionsDomainModule.cs @@ -1,9 +1,10 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Authorization; using Volo.Abp.Modularity; namespace Volo.Abp.Permissions { - [DependsOn(typeof(AbpPermissionsModule))] + [DependsOn(typeof(AbpAuthorizationModule))] [DependsOn(typeof(AbpDddModule))] [DependsOn(typeof(AbpPermissionsDomainSharedModule))] public class AbpPermissionsDomainModule : AbpModule diff --git a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManagementProvider.cs b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManagementProvider.cs index e1c15d3f98..7affa13bd6 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManagementProvider.cs +++ b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManagementProvider.cs @@ -1,5 +1,6 @@ using System.Threading.Tasks; using JetBrains.Annotations; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.DependencyInjection; namespace Volo.Abp.Permissions diff --git a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManager.cs b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManager.cs index 9a47905494..be5535519a 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManager.cs +++ b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/IPermissionManager.cs @@ -4,12 +4,14 @@ using JetBrains.Annotations; namespace Volo.Abp.Permissions { + //TODO: Write extension methods for simple IsGranted check + public interface IPermissionManager { - Task GetAsync(string name, string providerName, string providerKey); + Task GetAsync(string permissionName, string providerName, string providerKey); Task> GetAllAsync([NotNull] string providerName, [NotNull] string providerKey); - Task SetAsync(string name, string providerName, string providerKey, bool isGranted); + Task SetAsync(string permissionName, string providerName, string providerKey, bool isGranted); } } \ No newline at end of file diff --git a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManagementProvider.cs b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManagementProvider.cs index 016e8e1664..86a0a8a399 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManagementProvider.cs +++ b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManagementProvider.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.Guids; namespace Volo.Abp.Permissions diff --git a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManager.cs b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManager.cs index 11e4f34c29..0b29b70672 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManager.cs +++ b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionManager.cs @@ -4,6 +4,7 @@ using System.Linq; using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using Microsoft.Extensions.Options; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.DependencyInjection; using Volo.Abp.Guids; @@ -44,9 +45,9 @@ namespace Volo.Abp.Permissions ); } - public async Task GetAsync(string name, string providerName, string providerKey) + public async Task GetAsync(string permissionName, string providerName, string providerKey) { - return await GetInternalAsync(PermissionDefinitionManager.Get(name), providerName, providerKey); + return await GetInternalAsync(PermissionDefinitionManager.Get(permissionName), providerName, providerKey); } public async Task> GetAllAsync(string providerName, string providerKey) @@ -61,9 +62,9 @@ namespace Volo.Abp.Permissions return results; } - public async Task SetAsync(string name, string providerName, string providerKey, bool isGranted) + public async Task SetAsync(string permissionName, string providerName, string providerKey, bool isGranted) { - var currentGrantInfo = await GetAsync(name, providerName, providerKey); + var currentGrantInfo = await GetAsync(permissionName, providerName, providerKey); if (currentGrantInfo.IsGranted == isGranted) { return; @@ -72,7 +73,7 @@ namespace Volo.Abp.Permissions if (currentGrantInfo.IsGranted == false) { var provider = ManagementProviders.FirstOrDefault(m => m.Name == providerName); - await provider.GrantAsync(name, providerKey); + await provider.GrantAsync(permissionName, providerKey); } else { @@ -82,7 +83,7 @@ namespace Volo.Abp.Permissions } var provider = ManagementProviders.FirstOrDefault(m => m.Name == providerName); - await provider.RevokeAsync(name, providerKey); + await provider.RevokeAsync(permissionName, providerKey); } } diff --git a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionStore.cs b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionStore.cs index 9ed13f844e..79e5533725 100644 --- a/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionStore.cs +++ b/src/Volo.Abp.Permissions.Domain/Volo/Abp/Permissions/PermissionStore.cs @@ -1,4 +1,5 @@ using System.Threading.Tasks; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.DependencyInjection; namespace Volo.Abp.Permissions diff --git a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/AbpPermissionsModule.cs b/src/Volo.Abp.Permissions/Volo/Abp/Permissions/AbpPermissionsModule.cs deleted file mode 100644 index c414b0e005..0000000000 --- a/src/Volo.Abp.Permissions/Volo/Abp/Permissions/AbpPermissionsModule.cs +++ /dev/null @@ -1,13 +0,0 @@ -using Microsoft.Extensions.DependencyInjection; -using Volo.Abp.Modularity; - -namespace Volo.Abp.Permissions -{ - public class AbpPermissionsModule : AbpModule - { - public override void ConfigureServices(IServiceCollection services) - { - services.AddAssemblyOf(); - } - } -} diff --git a/src/Volo.Abp.Session/Volo.Abp.Session.csproj b/src/Volo.Abp.Session/Volo.Abp.Session.csproj index 6ecc09159c..7931bf7177 100644 --- a/src/Volo.Abp.Session/Volo.Abp.Session.csproj +++ b/src/Volo.Abp.Session/Volo.Abp.Session.csproj @@ -14,8 +14,8 @@ + - diff --git a/src/Volo.Abp.Session/Volo/Abp/Session/AbpSessionModule.cs b/src/Volo.Abp.Session/Volo/Abp/Session/AbpSessionModule.cs index d9fb24a220..7c0f0f3521 100644 --- a/src/Volo.Abp.Session/Volo/Abp/Session/AbpSessionModule.cs +++ b/src/Volo.Abp.Session/Volo/Abp/Session/AbpSessionModule.cs @@ -1,6 +1,7 @@ using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Authorization; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.Modularity; -using Volo.Abp.Permissions; using Volo.Abp.Security; using Volo.Abp.Settings; @@ -8,7 +9,7 @@ namespace Volo.Abp.Session { [DependsOn(typeof(AbpSecurityModule))] [DependsOn(typeof(AbpSettingsModule))] - [DependsOn(typeof(AbpPermissionsModule))] + [DependsOn(typeof(AbpAuthorizationModule))] public class AbpSessionModule : AbpModule { public override void ConfigureServices(IServiceCollection services) diff --git a/src/Volo.Abp.Session/Volo/Abp/Session/RolePermissionValueProvider.cs b/src/Volo.Abp.Session/Volo/Abp/Session/RolePermissionValueProvider.cs index 9b9c102dc1..9677e7ab1d 100644 --- a/src/Volo.Abp.Session/Volo/Abp/Session/RolePermissionValueProvider.cs +++ b/src/Volo.Abp.Session/Volo/Abp/Session/RolePermissionValueProvider.cs @@ -1,6 +1,6 @@ using System.Linq; using System.Threading.Tasks; -using Volo.Abp.Permissions; +using Volo.Abp.Authorization.Permissions; namespace Volo.Abp.Session { diff --git a/src/Volo.Abp.Session/Volo/Abp/Session/UserPermissionValueProvider.cs b/src/Volo.Abp.Session/Volo/Abp/Session/UserPermissionValueProvider.cs index 14db07cac9..7cd20c4c49 100644 --- a/src/Volo.Abp.Session/Volo/Abp/Session/UserPermissionValueProvider.cs +++ b/src/Volo.Abp.Session/Volo/Abp/Session/UserPermissionValueProvider.cs @@ -1,5 +1,5 @@ using System.Threading.Tasks; -using Volo.Abp.Permissions; +using Volo.Abp.Authorization.Permissions; namespace Volo.Abp.Session { diff --git a/src/Volo.Abp/Volo/Abp/AbpCommonModule.cs b/src/Volo.Abp/Volo/Abp/AbpCommonModule.cs index 64e3e10922..12ea477ed8 100644 --- a/src/Volo.Abp/Volo/Abp/AbpCommonModule.cs +++ b/src/Volo.Abp/Volo/Abp/AbpCommonModule.cs @@ -7,7 +7,6 @@ using Volo.Abp.Localization; using Volo.Abp.Modularity; using Volo.Abp.MultiTenancy; using Volo.Abp.ObjectMapping; -using Volo.Abp.Permissions; using Volo.Abp.Security; using Volo.Abp.Session; using Volo.Abp.Settings; @@ -23,7 +22,6 @@ namespace Volo.Abp [DependsOn(typeof(AbpSecurityModule))] [DependsOn(typeof(AbpSessionModule))] [DependsOn(typeof(AbpSettingsModule))] - [DependsOn(typeof(AbpPermissionsModule))] [DependsOn(typeof(AbpDataModule))] [DependsOn(typeof(AbpJsonModule))] [DependsOn(typeof(AbpVirtualFileSystemModule))] diff --git a/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/AbpIdentityDomainTestModule.cs b/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/AbpIdentityDomainTestModule.cs index d9c04f795a..2d2679f6a7 100644 --- a/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/AbpIdentityDomainTestModule.cs +++ b/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/AbpIdentityDomainTestModule.cs @@ -1,6 +1,7 @@ using System; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.Autofac; using Volo.Abp.EntityFrameworkCore; using Volo.Abp.Identity.EntityFrameworkCore; diff --git a/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/IdentityTestPermissionDefinitionProvider.cs b/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/IdentityTestPermissionDefinitionProvider.cs index 4d01084557..518e083891 100644 --- a/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/IdentityTestPermissionDefinitionProvider.cs +++ b/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/IdentityTestPermissionDefinitionProvider.cs @@ -1,4 +1,5 @@ -using Volo.Abp.Permissions; +using Volo.Abp.Authorization.Permissions; +using Volo.Abp.Permissions; namespace Volo.Abp.Identity { diff --git a/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/PermissionManager_Tests.cs b/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/PermissionManager_Tests.cs index 29a5e9280b..fb782aea56 100644 --- a/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/PermissionManager_Tests.cs +++ b/test/Volo.Abp.Identity.Tests/Volo/Abp/Identity/PermissionManager_Tests.cs @@ -40,6 +40,22 @@ namespace Volo.Abp.Identity ShouldNotHavePermission(grantInfos, TestPermissionNames.MyPermission2_ChildPermission1); } + [Fact] + public async Task Should_Grant_Permission_To_Role() + { + (await _permissionManager.GetForRoleAsync("supporter", TestPermissionNames.MyPermission2)).IsGranted.ShouldBeFalse(); + await _permissionManager.SetForRoleAsync("supporter", TestPermissionNames.MyPermission2, true); + (await _permissionManager.GetForRoleAsync("supporter", TestPermissionNames.MyPermission2)).IsGranted.ShouldBeTrue(); + } + + [Fact] + public async Task Should_Revoke_Permission_From_Role() + { + (await _permissionManager.GetForRoleAsync("moderator", TestPermissionNames.MyPermission1)).IsGranted.ShouldBeTrue(); + await _permissionManager.SetForRoleAsync("moderator", TestPermissionNames.MyPermission1, false); + (await _permissionManager.GetForRoleAsync("moderator", TestPermissionNames.MyPermission1)).IsGranted.ShouldBeFalse(); + } + [Fact] public async Task Users_Should_Have_Configured_Values() { diff --git a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/AbpPermissionTestModule.cs b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/AbpPermissionTestModule.cs index 05225cb57b..ea77e715b4 100644 --- a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/AbpPermissionTestModule.cs +++ b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/AbpPermissionTestModule.cs @@ -1,6 +1,7 @@ using System; using Microsoft.EntityFrameworkCore; using Microsoft.Extensions.DependencyInjection; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.Autofac; using Volo.Abp.EntityFrameworkCore; using Volo.Abp.Modularity; diff --git a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionChecker_User_Tests.cs b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionChecker_User_Tests.cs index 2b8d3a5688..20b220db39 100644 --- a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionChecker_User_Tests.cs +++ b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionChecker_User_Tests.cs @@ -3,6 +3,7 @@ using System.Threading.Tasks; using Microsoft.Extensions.DependencyInjection; using NSubstitute; using Shouldly; +using Volo.Abp.Authorization.Permissions; using Volo.Abp.Session; using Xunit; diff --git a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionManager_Basic_Tests.cs b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionManager_Basic_Tests.cs index 836c510c23..07856c9933 100644 --- a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionManager_Basic_Tests.cs +++ b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/PermissionManager_Basic_Tests.cs @@ -1,5 +1,6 @@ using System.Threading.Tasks; using Shouldly; +using Volo.Abp.Authorization.Permissions; using Xunit; namespace Volo.Abp.Permissions diff --git a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/TestPermissionDefinitionProvider.cs b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/TestPermissionDefinitionProvider.cs index 66de8e80f3..c978d71dc1 100644 --- a/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/TestPermissionDefinitionProvider.cs +++ b/test/Volo.Abp.Permissions.Tests/Volo/Abp/Permissions/TestPermissionDefinitionProvider.cs @@ -1,4 +1,6 @@ -namespace Volo.Abp.Permissions +using Volo.Abp.Authorization.Permissions; + +namespace Volo.Abp.Permissions { public class TestPermissionDefinitionProvider : PermissionDefinitionProvider {