Browse Source

Created PermissionPermissions

pull/216/head
Halil İbrahim Kalkan 9 years ago
parent
commit
97c2cba926
  1. 1
      src/Volo.Abp.Permissions.Application.Contracts/Volo.Abp.Permissions.Application.Contracts.csproj
  2. 8
      src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/AbpPermissionsApplicationContractsModule.cs
  3. 13
      src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/IdentityPermissions.cs
  4. 15
      src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/PermissionsPermissionDefinitionProvider.cs
  5. 3
      src/Volo.Abp.Permissions.Application/Volo/Abp/Permissions/PermissionAppService.cs

1
src/Volo.Abp.Permissions.Application.Contracts/Volo.Abp.Permissions.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.Permissions.Domain.Shared\Volo.Abp.Permissions.Domain.Shared.csproj" />
</ItemGroup>

8
src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/AbpPermissionsDomainSharedModule.cs → src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/AbpPermissionsApplicationContractsModule.cs

@ -1,4 +1,5 @@
using Microsoft.Extensions.DependencyInjection;
using Volo.Abp.Authorization.Permissions;
using Volo.Abp.Modularity;
namespace Volo.Abp.Permissions
@ -9,7 +10,12 @@ namespace Volo.Abp.Permissions
{
public override void ConfigureServices(IServiceCollection services)
{
services.AddAssemblyOf<AbpPermissionsDomainSharedModule>();
services.Configure<PermissionOptions>(options =>
{
options.DefinitionProviders.Add<PermissionsPermissionDefinitionProvider>();
});
services.AddAssemblyOf<AbpPermissionsApplicationContractsModule>();
}
}
}

13
src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/IdentityPermissions.cs

@ -0,0 +1,13 @@
namespace Volo.Abp.Permissions
{
public static class PermissionPermissions
{
public const string GroupName = "AbpPermissions";
public static class Permissions
{
public const string Default = GroupName + ".Permissions";
public const string Update = Default + ".Update";
}
}
}

15
src/Volo.Abp.Permissions.Application.Contracts/Volo/Abp/Permissions/PermissionsPermissionDefinitionProvider.cs

@ -0,0 +1,15 @@
using Volo.Abp.Authorization.Permissions;
namespace Volo.Abp.Permissions
{
public class PermissionsPermissionDefinitionProvider : PermissionDefinitionProvider
{
public override void Define(IPermissionDefinitionContext context)
{
var group = context.AddGroup(PermissionPermissions.GroupName);
var permissions = group.AddPermission(PermissionPermissions.Permissions.Default);
permissions.AddChild(PermissionPermissions.Permissions.Update);
}
}
}

3
src/Volo.Abp.Permissions.Application/Volo/Abp/Permissions/PermissionAppService.cs

@ -1,10 +1,12 @@
using System.Collections.Generic;
using System.Threading.Tasks;
using Microsoft.AspNetCore.Authorization;
using Volo.Abp.Application.Services;
using Volo.Abp.Authorization.Permissions;
namespace Volo.Abp.Permissions
{
[Authorize(PermissionPermissions.Permissions.Default)]
public class PermissionAppService : ApplicationService, IPermissionAppService
{
private readonly IPermissionManager _permissionManager;
@ -66,6 +68,7 @@ namespace Volo.Abp.Permissions
return result;
}
[Authorize(PermissionPermissions.Permissions.Update)]
public async Task UpdateAsync(string providerName, string providerKey, UpdatePermissionsDto input)
{
foreach (var permission in input.Permissions)

Loading…
Cancel
Save