Skip to content

Commit 9a49951

Browse files
committed
Remove useless global setting
1 parent a413b9d commit 9a49951

7 files changed

Lines changed: 14 additions & 33 deletions

File tree

api/src/main/java/org/apache/cloudstack/query/QueryService.java

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -98,9 +98,6 @@ public interface QueryService {
9898
"user.vm.denied.details", "rootdisksize, cpuOvercommitRatio, memoryOvercommitRatio, Message.ReservedCapacityFreed.Flag",
9999
"Determines whether users can view certain VM settings. When set to empty, default value used is: rootdisksize, cpuOvercommitRatio, memoryOvercommitRatio, Message.ReservedCapacityFreed.Flag.", true);
100100

101-
static final ConfigKey<String> DomainAdminAllowListedConfigurations = new ConfigKey<String>("Advanced", String.class,
102-
"domain.admin.allowlisted.config", "", "Determines which domain and account level configurations the domain admin is able to change", true);
103-
104101
static final ConfigKey<String> UserVMReadOnlyDetails = new ConfigKey<String>("Advanced", String.class,
105102
"user.vm.readonly.details", "dataDiskController, rootDiskController",
106103
"List of read-only VM settings/details as comma separated string", true);

server/src/main/java/com/cloud/api/query/QueryManagerImpl.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4260,6 +4260,6 @@ public String getConfigComponentName() {
42604260

42614261
@Override
42624262
public ConfigKey<?>[] getConfigKeys() {
4263-
return new ConfigKey<?>[] {AllowUserViewDestroyedVM, UserVMDeniedDetails, UserVMReadOnlyDetails, SortKeyAscending, AllowUserViewAllDomainAccounts, DomainAdminAllowListedConfigurations};
4263+
return new ConfigKey<?>[] {AllowUserViewDestroyedVM, UserVMDeniedDetails, UserVMReadOnlyDetails, SortKeyAscending, AllowUserViewAllDomainAccounts};
42644264
}
42654265
}

server/src/main/java/com/cloud/configuration/ConfigurationManagerImpl.java

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -802,23 +802,16 @@ public Configuration updateConfiguration(final UpdateCfgCmd cmd) throws InvalidP
802802
final Long storagepoolId = cmd.getStoragepoolId();
803803
final Long accountId = cmd.getAccountId();
804804
final Long imageStoreId = cmd.getImageStoreId();
805-
final Long domainId = cmd.getDomainId();
805+
Long domainId = cmd.getDomainId();
806806
CallContext.current().setEventDetails(" Name: " + name + " New Value: " + (name.toLowerCase().contains("password") ? "*****" : value == null ? "" : value));
807807
// check if config value exists
808808
final ConfigurationVO config = _configDao.findByName(name);
809809
String catergory = null;
810810

811811
final Account caller = CallContext.current().getCallingAccount();
812812
if (_accountMgr.isDomainAdmin(caller.getId())) {
813-
if (domainId == null) {
814-
throw new PermissionDeniedException("Domain admins can change only domain level configurations");
815-
}
816-
817-
final List<String> domainAdminWhitelistConfigs = Stream.of(QueryService.DomainAdminAllowListedConfigurations.value().split(","))
818-
.map(item -> (item).trim())
819-
.collect(Collectors.toList());
820-
if (!domainAdminWhitelistConfigs.contains(name)) {
821-
throw new PermissionDeniedException("Domain admins can not change this configuration");
813+
if (accountId == null && domainId == null) {
814+
domainId = caller.getDomainId();
822815
}
823816
}
824817

server/src/main/java/com/cloud/server/ManagementServerImpl.java

Lines changed: 7 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -1975,15 +1975,17 @@ public Pair<List<? extends Configuration>, Integer> searchForConfigurations(fina
19751975
final Long clusterId = cmd.getClusterId();
19761976
final Long storagepoolId = cmd.getStoragepoolId();
19771977
final Long accountId = cmd.getAccountId();
1978-
final Long domainId = cmd.getDomainId();
19791978
final Long imageStoreId = cmd.getImageStoreId();
1979+
Long domainId = cmd.getDomainId();
19801980
String scope = null;
19811981
Long id = null;
19821982
int paramCountCheck = 0;
19831983

19841984
final Account caller = CallContext.current().getCallingAccount();
1985-
if (_accountMgr.isDomainAdmin(caller.getId()) && domainId == null) {
1986-
throw new PermissionDeniedException("Domain admins can view only domain level configurations");
1985+
if (_accountMgr.isDomainAdmin(caller.getId())) {
1986+
if (accountId == null && domainId == null) {
1987+
domainId = caller.getDomainId();
1988+
}
19871989
}
19881990

19891991
if (zoneId != null) {
@@ -2054,21 +2056,10 @@ public Pair<List<? extends Configuration>, Integer> searchForConfigurations(fina
20542056

20552057
final Pair<List<ConfigurationVO>, Integer> result = _configDao.searchAndCount(sc, searchFilter);
20562058

2057-
List<ConfigurationVO> configs = result.first();
2058-
2059-
if (_accountMgr.isDomainAdmin(caller.getId())) {
2060-
final List<String> domainAdminWhitelistConfigs = Stream.of(QueryService.DomainAdminAllowListedConfigurations.value().split(","))
2061-
.map(item -> (item).trim())
2062-
.collect(Collectors.toList());
2063-
configs = configs.stream()
2064-
.filter(item -> domainAdminWhitelistConfigs.contains(item.getName()))
2065-
.collect(Collectors.toList());
2066-
}
2067-
20682059
if (scope != null && !scope.isEmpty()) {
20692060
// Populate values corresponding the resource id
20702061
final List<ConfigurationVO> configVOList = new ArrayList<ConfigurationVO>();
2071-
for (final ConfigurationVO param : configs) {
2062+
for (final ConfigurationVO param : result.first()) {
20722063
final ConfigurationVO configVo = _configDao.findByName(param.getName());
20732064
if (configVo != null) {
20742065
final ConfigKey<?> key = _configDepot.get(param.getName());
@@ -2086,7 +2077,7 @@ public Pair<List<? extends Configuration>, Integer> searchForConfigurations(fina
20862077
return new Pair<List<? extends Configuration>, Integer>(configVOList, configVOList.size());
20872078
}
20882079

2089-
return new Pair<List<? extends Configuration>, Integer>(configs, result.second());
2080+
return new Pair<List<? extends Configuration>, Integer>(result.first(), result.second());
20902081
}
20912082

20922083
@Override

ui/src/config/section/account.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -49,7 +49,7 @@ export default {
4949
{
5050
name: 'settings',
5151
component: () => import('@/components/view/SettingsTab.vue'),
52-
show: (record, route, user) => { return ['Admin'].includes(user.roletype) }
52+
show: (record, route, user) => { return ['Admin', 'DomainAdmin'].includes(user.roletype) }
5353
}
5454
],
5555
actions: [

ui/src/config/section/config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -19,7 +19,7 @@ export default {
1919
name: 'config',
2020
title: 'label.configuration',
2121
icon: 'setting',
22-
permission: ['listConfigurations'],
22+
permission: ['listConfigurations', 'listInfrastructure'],
2323
children: [
2424
{
2525
name: 'globalsetting',

ui/src/config/section/domain.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ export default {
5353
{
5454
name: 'settings',
5555
component: () => import('@/components/view/SettingsTab.vue'),
56-
show: (record, route, user) => { return ['Admin'].includes(user.roletype) }
56+
show: (record, route, user) => { return ['Admin', 'DomainAdmin'].includes(user.roletype) }
5757
}, {
5858
name: 'comments',
5959
component: () => import('@/components/view/AnnotationsTab.vue')

0 commit comments

Comments
 (0)