You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
2.9 KiB
2.9 KiB
LINGYUN.Abp.PermissionManagement.Application
权限管理应用服务模块,提供权限管理的应用层实现。
功能特性
- 权限组定义管理
- 创建、更新、删除权限组定义
- 支持权限组的启用/禁用
- 支持权限组的静态/动态配置
- 权限定义管理
- 创建、更新、删除权限定义
- 支持权限的启用/禁用
- 支持权限的静态/动态配置
- 支持权限的父子层级关系
- 多租户支持
- 支持Host和Tenant两种多租户模式
- 支持权限的多租户侧配置
模块引用
[DependsOn(
typeof(AbpPermissionManagementApplicationContractsModule),
typeof(VoloAbpPermissionManagementApplicationModule))]
public class YouProjectModule : AbpModule
{
// other
}
基本用法
- 权限组定义管理
public class YourService
{
private readonly IPermissionGroupDefinitionAppService _groupDefinitionAppService;
public YourService(IPermissionGroupDefinitionAppService groupDefinitionAppService)
{
_groupDefinitionAppService = groupDefinitionAppService;
}
public async Task ManageGroupDefinitionAsync()
{
// 创建权限组
await _groupDefinitionAppService.CreateAsync(new PermissionGroupDefinitionCreateDto
{
Name = "MyPermissionGroup",
DisplayName = "My Permission Group"
});
// 更新权限组
await _groupDefinitionAppService.UpdateAsync("MyPermissionGroup",
new PermissionGroupDefinitionUpdateDto
{
DisplayName = "Updated Permission Group"
});
}
}
- 权限定义管理
public class YourService
{
private readonly IPermissionDefinitionAppService _permissionDefinitionAppService;
public YourService(IPermissionDefinitionAppService permissionDefinitionAppService)
{
_permissionDefinitionAppService = permissionDefinitionAppService;
}
public async Task ManagePermissionDefinitionAsync()
{
// 创建权限
await _permissionDefinitionAppService.CreateAsync(new PermissionDefinitionCreateDto
{
GroupName = "MyPermissionGroup",
Name = "MyPermission",
DisplayName = "My Permission",
Providers = new[] { "Role", "User" }
});
// 更新权限
await _permissionDefinitionAppService.UpdateAsync("MyPermission",
new PermissionDefinitionUpdateDto
{
DisplayName = "Updated Permission"
});
}
}