auth: read (and admin) implies get

hide redundant get permission in webui

Closes #1483
This commit is contained in:
AppleTheGolden 2026-05-15 23:06:02 +02:00
parent 3b53a228b0
commit 514b246478
No known key found for this signature in database
GPG key ID: F6AC8A62154C42AA
3 changed files with 14 additions and 4 deletions

View file

@ -1663,7 +1663,8 @@ class AuthSrv(object):
for alias, mapping in [
("h", "gh"),
("G", "gG"),
("A", "rwmda.A"),
("r", "g"),
("A", "rgwmda.A"),
]:
expanded = ""
for ch in mapping:

View file

@ -6443,6 +6443,7 @@ class HttpCli(object):
s_wr = "write" in req["perms"]
s_get = "get" in req["perms"]
s_dot = "dot" in req["perms"]
# will_read, will_write, will_move, will_del, will_get
s_axs = [s_rd, s_wr, False, False, s_get]
s_axsd = s_axs + [s_dot]

View file

@ -8032,13 +8032,22 @@ function apply_perms(res) {
a.style.display = '';
tt.att(QS('#ops'));
// read implies get, no need to show it
var displayed_perms = perms.slice(0);
var have_read = has(displayed_perms, 'read')
if (have_read) {
var get_index = displayed_perms.indexOf('get');
if (get_index > -1) {
displayed_perms.splice(get_index, 1);
}
}
for (var a = 0; a < chk.length; a++)
if (has(perms, chk[a]))
if (has(displayed_perms, chk[a]))
axs.push(chk[a].slice(0, 1).toUpperCase() + chk[a].slice(1));
axs = axs.join('-');
if (perms.length == 1) {
if (displayed_perms.length == 1) {
aclass = ' class="warn">';
axs += '-Only';
}
@ -8080,7 +8089,6 @@ function apply_perms(res) {
document.body.setAttribute('perms', perms.join(' '));
var have_write = has(perms, "write"),
have_read = has(perms, "read"),
de = document.documentElement,
tds = QSA('#u2conf td');