Skip to content

Commit 54888c5

Browse files
MB-29093: MB-28417: change permissions for index service in UI
Change-Id: Icda137f374cf25c10f7840abcbbd14b6e74197d2 Reviewed-on: http://review.couchbase.org/92172 Well-Formed: Build Bot <[email protected]> Tested-by: Pavel Blagodov <[email protected]> Reviewed-by: Pavel Blagodov <[email protected]> Reviewed-by: Mike Wiederhold <[email protected]>
1 parent 732ce10 commit 54888c5

File tree

10 files changed

+28
-25
lines changed

10 files changed

+28
-25
lines changed

priv/public/ui/app/components/directives/mn_auto_compaction_form/mn_auto_compaction_form.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -26,7 +26,7 @@
2626
$scope.maybeDisableTimeInterval = maybeDisableTimeInterval;
2727
$scope.props = {};
2828

29-
if (mnPoolDefault.export.compat.atLeast40 && $scope.rbac.cluster.indexes.read) {
29+
if (mnPoolDefault.export.compat.atLeast40 && $scope.rbac.cluster.settings.indexes.read) {
3030
mnPromiseHelper($scope, mnSettingsClusterService.getIndexSettings())
3131
.applyToScope("indexSettings");
3232
}

priv/public/ui/app/components/directives/mn_storage_mode/mn_storage_mode.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@
77
id="storage_mode_forestdb"
88
ng-model="mnModel.storageMode"
99
ng-disabled="(mnServices && !mnServicesModel.index) ||
10-
(mnPermissions && !mnPermissions.cluster.indexes.write) ||
10+
(mnPermissions && !mnPermissions.cluster.settings.indexes.write) ||
1111
(mnInitial && mnInitial.storageMode === 'forestdb')">
1212
<label for="storage_mode_forestdb" class="checkbox">
1313
{{:: mnIsEnterprise ? 'Legacy' : 'Standard'}} Global Secondary
@@ -22,7 +22,7 @@
2222
ng-model="mnModel.storageMode"
2323
ng-disabled="!mnIsEnterprise ||
2424
(mnServicesModel && !mnServicesModel.index) ||
25-
(mnPermissions && !mnPermissions.cluster.indexes.write)">
25+
(mnPermissions && !mnPermissions.cluster.settings.indexes.write)">
2626
<label for="storage_plasma_indexes" class="checkbox">
2727
Standard Global Secondary
2828
</label>
@@ -35,7 +35,7 @@
3535
ng-model="mnModel.storageMode"
3636
ng-disabled="!mnIsEnterprise ||
3737
(mnServices && !mnServicesModel.index) ||
38-
(mnPermissions && !mnPermissions.cluster.indexes.write)">
38+
(mnPermissions && !mnPermissions.cluster.settings.indexes.write)">
3939
<label for="storage_memory_optimized" class="checkbox margin-right-zero">
4040
Memory-Optimized
4141
</label>

priv/public/ui/app/components/mn_permissions.js

Lines changed: 6 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,10 @@
2424
"cluster.bucket[" + name + "].xdcr!read",
2525
"cluster.bucket[" + name + "].xdcr!write",
2626
"cluster.bucket[" + name + "].xdcr!execute",
27-
"cluster.bucket[" + name + "].n1ql.select!execute"
27+
"cluster.bucket[" + name + "].n1ql.select!execute",
28+
"cluster.bucket[" + name + "].n1ql.index!read",
29+
"cluster.bucket[" + name + "].n1ql.index!write"
30+
2831
];
2932
if (name === "." || buckets.byName[name].isMembase) {
3033
basePermissions = basePermissions.concat([
@@ -55,7 +58,7 @@
5558
"cluster.settings!write",
5659
"cluster.stats!read",
5760
"cluster.tasks!read",
58-
"cluster.indexes!read",
61+
"cluster.settings.indexes!read",
5962
"cluster.admin.internal!all",
6063
"cluster.xdcr.settings!read",
6164
"cluster.xdcr.settings!write",
@@ -67,7 +70,7 @@
6770
"cluster.admin.settings!write",
6871
"cluster.logs!read",
6972
"cluster.pools!write",
70-
"cluster.indexes!write",
73+
"cluster.settings.indexes!write",
7174
"cluster.admin.security!write",
7275
"cluster.samples!read",
7376
"cluster.nodes!read"

priv/public/ui/app/mn_admin/mn_admin.html

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -195,15 +195,15 @@ <h1>
195195
<a
196196
mn-tab="indexes"
197197
ng-class="{currentnav: ('app.admin.indexes' | includedByState)}"
198-
ng-show="rbac.cluster.bucket['.'].views.read || rbac.cluster.indexes.read"
198+
ng-show="rbac.cluster.bucket['.'].views.read || rbac.cluster.bucket['.'].n1ql.index.read"
199199
ui-sref="app.admin.indexes.gsi"
200200
class="resp-hide-sml">
201201
<span
202202
ui-sref="app.admin.indexes.gsi"
203-
ng-show="rbac.cluster.indexes.read">Indexes</span>
203+
ng-show="rbac.cluster.bucket['.'].n1ql.index.read">Indexes</span>
204204
<span
205205
ui-sref="app.admin.indexes.views.list"
206-
ng-show="rbac.cluster.indexes.read === false">Indexes</span>
206+
ng-show="rbac.cluster.bucket['.'].n1ql.index.read === false">Indexes</span>
207207
</a>
208208
</nav>
209209

priv/public/ui/app/mn_admin/mn_indexes/mn_indexes.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@
44
mn-pluggable-ui-tabs
55
mn-tab-bar-name="indexesTab">
66
<a
7-
ng-show="rbac.cluster.indexes.read"
7+
ng-show="rbac.cluster.bucket['.'].n1ql.index.read"
88
ui-sref="app.admin.indexes.gsi"
99
ui-sref-active="selected">Global Indexes</a>
1010
<a

priv/public/ui/app/mn_admin/mn_indexes/mn_indexes_config.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -31,7 +31,7 @@
3131
}
3232
},
3333
data: {
34-
permissions: "cluster.indexes.read"
34+
permissions: "cluster.bucket['.'].n1ql.index.read"
3535
},
3636
controller: "mnGsiController as gsiCtl",
3737
templateUrl: "app/mn_admin/mn_indexes/mn_gsi/mn_gsi.html"

priv/public/ui/app/mn_admin/mn_servers/list/item/mn_servers_list_item_controller.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -120,7 +120,7 @@
120120
if (mnPoolDefault.export.isEnterprise) {
121121
warnings.isLastCBAS = mnMemoryQuotaService.isOnlyOneNodeWithService(nodes.allNodes, node.services, 'cbas', true);
122122
}
123-
return mnPoolDefault.export.compat.atLeast40 && mnPermissions.export.cluster.indexes.read ? mnGsiService.getIndexesState().then(function (indexStatus) {
123+
return mnPoolDefault.export.compat.atLeast40 && mnPermissions.export.cluster.bucket['.'].n1ql.index.read ? mnGsiService.getIndexesState().then(function (indexStatus) {
124124
warnings.isThereIndex = !!_.find(indexStatus.indexes, function (index) {
125125
return _.indexOf(index.hosts, node.hostname) > -1;
126126
});

priv/public/ui/app/mn_admin/mn_settings/cluster/mn_settings_cluster.html

Lines changed: 7 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
<div
2-
mn-spinner="settingsClusterCtl.clusterName === undefined || !settingsClusterCtl.memoryQuotaConfig || (rbac.cluster.indexes.read && poolDefault.compat.atLeast40 && !settingsClusterCtl.indexSettings) || (poolDefault.value.isEnterprise && !settingsClusterCtl.certificate)">
2+
mn-spinner="settingsClusterCtl.clusterName === undefined || !settingsClusterCtl.memoryQuotaConfig || (rbac.cluster.settings.indexes.read && poolDefault.compat.atLeast40 && !settingsClusterCtl.indexSettings) || (poolDefault.value.isEnterprise && !settingsClusterCtl.certificate)">
33
<form
44
ng-submit="settingsClusterCtl.saveVisualInternalSettings()"
55
class="forms">
@@ -38,10 +38,10 @@
3838

3939
<div class="fix-width-6">
4040

41-
<label ng-show="poolDefault.compat.atLeast40 && rbac.cluster.indexes.read" class="margin-top-half">
41+
<label ng-show="poolDefault.compat.atLeast40 && rbac.cluster.settings.indexes.read" class="margin-top-half">
4242
Index Storage Mode
4343
</label>
44-
<div ng-show="poolDefault.compat.atLeast40 && rbac.cluster.indexes.read">
44+
<div ng-show="poolDefault.compat.atLeast40 && rbac.cluster.settings.indexes.read">
4545
<div class="formrow">
4646
<mn-storage-mode
4747
mn-is-enterprise="adminCtl.poolDefault.isEnterprise"
@@ -73,7 +73,7 @@
7373
<input
7474
type="number"
7575
ng-model="settingsClusterCtl.indexSettings.indexerThreads"
76-
ng-disabled="settingsClusterCtl.indexSettings.storageMode === '' || !rbac.cluster.indexes.write"
76+
ng-disabled="settingsClusterCtl.indexSettings.storageMode === '' || !rbac.cluster.settings.indexes.write"
7777
id="index_settings_thread">
7878
<div
7979
class="error error-field"
@@ -96,7 +96,7 @@
9696
<input
9797
type="text"
9898
ng-model="settingsClusterCtl.indexSettings.maxRollbackPoints"
99-
ng-disabled="settingsClusterCtl.indexSettings.storageMode === '' || !rbac.cluster.indexes.write"
99+
ng-disabled="settingsClusterCtl.indexSettings.storageMode === '' || !rbac.cluster.settings.indexes.write"
100100
id="in_memory_snapshot">
101101
<div
102102
class="error error-field"
@@ -112,7 +112,7 @@
112112
<select
113113
ng-model="settingsClusterCtl.indexSettings.logLevel"
114114
name="logLevel"
115-
ng-disabled="settingsClusterCtl.indexSettings.storageMode === '' || !rbac.cluster.indexes.write"
115+
ng-disabled="settingsClusterCtl.indexSettings.storageMode === '' || !rbac.cluster.settings.indexes.write"
116116
id="indexer_log_level">
117117
<option value="silent">Silent</option>
118118
<option value="fatal">Fatal</option>
@@ -269,7 +269,7 @@
269269
<div class="margin-top-1-5">
270270
<button
271271
type="submit"
272-
ng-show="rbac.cluster.pools.write || rbac.cluster.indexes.write"
272+
ng-show="rbac.cluster.pools.write || rbac.cluster.settings.indexes.write"
273273
ng-disabled="!!settingsClusterCtl.indexSettingsErrors || !!settingsClusterCtl.memoryQuotaErrors">
274274
Save
275275
</button>

priv/public/ui/app/mn_admin/mn_settings/cluster/mn_settings_cluster_controller.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@
3030

3131
if (mnPoolDefault.export.compat.atLeast40) {
3232
$scope.$watch('settingsClusterCtl.indexSettings', _.debounce(function (indexSettings, prevIndexSettings) {
33-
if (!indexSettings || !$scope.rbac.cluster.indexes.write || !(prevIndexSettings && !_.isEqual(indexSettings, prevIndexSettings))) {
33+
if (!indexSettings || !$scope.rbac.cluster.settings.indexes.write || !(prevIndexSettings && !_.isEqual(indexSettings, prevIndexSettings))) {
3434
return;
3535
}
3636
var promise = mnSettingsClusterService.postIndexSettings(vm.indexSettings, true);
@@ -53,7 +53,7 @@
5353

5454
queries.push(promise1);
5555

56-
if (!_.isEqual(vm.indexSettings, vm.initialIndexSettings) && mnPoolDefault.export.compat.atLeast40 && $scope.rbac.cluster.indexes.write) {
56+
if (!_.isEqual(vm.indexSettings, vm.initialIndexSettings) && mnPoolDefault.export.compat.atLeast40 && $scope.rbac.cluster.settings.indexes.write) {
5757
promise2 = mnPromiseHelper(vm, mnSettingsClusterService.postIndexSettings(vm.indexSettings))
5858
.catchErrors("indexSettingsErrors")
5959
.applyToScope("initialIndexSettings")
@@ -135,7 +135,7 @@
135135
vm.memoryQuotaConfig = resp;
136136
});
137137

138-
if (mnPoolDefault.export.compat.atLeast40 && $scope.rbac.cluster.indexes.read) {
138+
if (mnPoolDefault.export.compat.atLeast40 && $scope.rbac.cluster.settings.indexes.read) {
139139
mnPromiseHelper(vm, mnSettingsClusterService.getIndexSettings())
140140
.applyToScope(function (indexSettings) {
141141
vm.indexSettings = indexSettings;

priv/public/ui/app/mn_admin/mn_settings/notifications/mn_settings_notifications_service.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,13 +297,13 @@ angular.module('mnSettingsNotificationsService', [
297297
$q.when(poolDefault)
298298
];
299299

300-
if (mnPoolDefault.export.compat.atLeast40 && mnPermissions.export.cluster.indexes.read) {
300+
if (mnPoolDefault.export.compat.atLeast40 && mnPermissions.export.cluster.bucket['.'].n1ql.index.read) {
301301
queries[4] = mnGsiService.getIndexesState(mnHttpParams);
302302
}
303303
if (mnPools.export.isEnterprise && mnPermissions.export.cluster.admin.security.read && mnPoolDefault.export.compat.atLeast40) {
304304
queries[5] = mnAuditService.getAuditSettings();
305305
}
306-
if (mnPoolDefault.export.compat.atLeast40 && mnPermissions.export.cluster.indexes.read) {
306+
if (mnPoolDefault.export.compat.atLeast40 && mnPermissions.export.cluster.settings.indexes.read) {
307307
queries[6] = mnSettingsClusterService.getIndexSettings();
308308
}
309309
if (mnPermissions.export.cluster.settings.read) {

0 commit comments

Comments
 (0)