Browse Source

AbpTenantManagement permisson improvements

pull/1020/head
Yunus Emre Kalkan 7 years ago
parent
commit
381140c32e
  1. 1
      modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/AbpTenantManagementPermissionDefinitionProvider.cs
  2. 1
      modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/Localization/ApplicationContracts/en.json
  3. 1
      modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/Localization/ApplicationContracts/tr.json
  4. 4
      modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/TenantManagementPermissions.cs
  5. 3
      modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo/Abp/TenantManagement/TenantAppService.cs
  6. 1
      modules/tenant-management/src/Volo.Abp.TenantManagement.Web/AbpTenantManagementWebModule.cs
  7. 12
      modules/tenant-management/src/Volo.Abp.TenantManagement.Web/Pages/TenantManagement/Tenants/Index.js

1
modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/AbpTenantManagementPermissionDefinitionProvider.cs

@ -16,6 +16,7 @@ namespace Volo.Abp.TenantManagement
tenantsPermission.AddChild(TenantManagementPermissions.Tenants.Update, L("Permission:Edit"), multiTenancySide: MultiTenancySides.Host);
tenantsPermission.AddChild(TenantManagementPermissions.Tenants.Delete, L("Permission:Delete"), multiTenancySide: MultiTenancySides.Host);
tenantsPermission.AddChild(TenantManagementPermissions.Tenants.ManageFeatures, L("Permission:ManageFeatures"), multiTenancySide: MultiTenancySides.Host);
tenantsPermission.AddChild(TenantManagementPermissions.Tenants.ManageConnectionStrings, L("Permission:ManageConnectionStrings"), multiTenancySide: MultiTenancySides.Host);
}
private static LocalizableString L(string name)

1
modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/Localization/ApplicationContracts/en.json

@ -5,6 +5,7 @@
"Permission:Create": "Create",
"Permission:Edit": "Edit",
"Permission:Delete": "Delete",
"Permission:ManageConnectionStrings": "Manage connection strings",
"Permission:ManageFeatures": "Manage features"
}
}

1
modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/Localization/ApplicationContracts/tr.json

@ -5,6 +5,7 @@
"Permission:Create": "Oluşturma",
"Permission:Edit": "Düzenleme",
"Permission:Delete": "Silme",
"Permission:ManageConnectionStrings": "Bağlantı cümlelerini yönet",
"Permission:ManageFeatures": "Özellikleri yönet"
}
}

4
modules/tenant-management/src/Volo.Abp.TenantManagement.Application.Contracts/Volo/Abp/TenantManagement/TenantManagementPermissions.cs

@ -11,6 +11,7 @@
public const string Update = Default + ".Update";
public const string Delete = Default + ".Delete";
public const string ManageFeatures = Default + ".ManageFeatures";
public const string ManageConnectionStrings = Default + ".ManageConnectionStrings";
}
public static string[] GetAll()
@ -22,7 +23,8 @@
Tenants.Create,
Tenants.Update,
Tenants.Delete,
Tenants.ManageFeatures
Tenants.ManageFeatures,
Tenants.ManageConnectionStrings
};
}
}

3
modules/tenant-management/src/Volo.Abp.TenantManagement.Application/Volo/Abp/TenantManagement/TenantAppService.cs

@ -80,12 +80,14 @@ namespace Volo.Abp.TenantManagement
await TenantRepository.DeleteAsync(tenant);
}
[Authorize(TenantManagementPermissions.Tenants.ManageConnectionStrings)]
public async Task<string> GetDefaultConnectionStringAsync(Guid id)
{
var tenant = await TenantRepository.GetAsync(id);
return tenant?.FindDefaultConnectionString();
}
[Authorize(TenantManagementPermissions.Tenants.ManageConnectionStrings)]
public async Task UpdateDefaultConnectionStringAsync(Guid id, string defaultConnectionString)
{
var tenant = await TenantRepository.GetAsync(id);
@ -93,6 +95,7 @@ namespace Volo.Abp.TenantManagement
await TenantRepository.UpdateAsync(tenant);
}
[Authorize(TenantManagementPermissions.Tenants.ManageConnectionStrings)]
public async Task DeleteDefaultConnectionStringAsync(Guid id)
{
var tenant = await TenantRepository.GetAsync(id);

1
modules/tenant-management/src/Volo.Abp.TenantManagement.Web/AbpTenantManagementWebModule.cs

@ -61,6 +61,7 @@ namespace Volo.Abp.TenantManagement.Web
options.Conventions.AuthorizePage("/TenantManagement/Tenants/Index", TenantManagementPermissions.Tenants.Default);
options.Conventions.AuthorizePage("/TenantManagement/Tenants/CreateModal", TenantManagementPermissions.Tenants.Create);
options.Conventions.AuthorizePage("/TenantManagement/Tenants/EditModal", TenantManagementPermissions.Tenants.Update);
options.Conventions.AuthorizePage("/TenantManagement/Tenants/ConnectionStrings", TenantManagementPermissions.Tenants.ManageConnectionStrings);
});
}
}

12
modules/tenant-management/src/Volo.Abp.TenantManagement.Web/Pages/TenantManagement/Tenants/Index.js

@ -25,7 +25,7 @@
[
{
text: l('Edit'),
visible: function () { return true; }, //TODO: Check permission
visible: abp.auth.isGranted('AbpTenantManagement.Tenants.Update'),
action: function (data) {
_editModal.open({
id: data.record.id
@ -34,9 +34,7 @@
},
{
text: l('ConnectionStrings'),
visible: function () {
return true; //TODO: Check permission
},
visible: abp.auth.isGranted('AbpTenantManagement.Tenants.ManageConnectionStrings'),
action: function (data) {
_connectionStringsModal.open({
id: data.record.id
@ -45,9 +43,7 @@
},
{
text: l('Features'),
visible: function () {
return true; //TODO: Check permission
},
visible: abp.auth.isGranted('AbpTenantManagement.Tenants.ManageFeatures'),
action: function (data) {
_featuresModal.open({
providerName: 'Tenant',
@ -57,7 +53,7 @@
},
{
text: l('Delete'),
visible: function () { return true; }, //TODO: Check permission
visible: abp.auth.isGranted('AbpTenantManagement.Tenants.Delete'),
confirmMessage: function (data) { return l('TenantDeletionConfirmationMessage', data.record.name)},
action: function (data) {
_tenantAppService

Loading…
Cancel
Save