[pve-devel] [PATCH novnc] don't show error messages for users without VM.Audit privileges

Dominik Csapak d.csapak at proxmox.com
Fri Oct 7 10:44:58 CEST 2022


we now query the guest status before starting, but that requires VM.Audit
privileges, which are not necessary since only VM.Console is actually
required to connect to the console.

In that case, skip the error message and continue connecting

reported in the forum:
https://forum.proxmox.com/threads/vm-console-require-vm-audit.116176/

Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
---
 ...ow-start-button-on-not-running-vm-ct.patch | 26 ++++++++++++++-----
 1 file changed, 20 insertions(+), 6 deletions(-)

diff --git a/debian/patches/0018-show-start-button-on-not-running-vm-ct.patch b/debian/patches/0018-show-start-button-on-not-running-vm-ct.patch
index 162acc4..4e1b99d 100644
--- a/debian/patches/0018-show-start-button-on-not-running-vm-ct.patch
+++ b/debian/patches/0018-show-start-button-on-not-running-vm-ct.patch
@@ -13,15 +13,24 @@ colors were adapted
 
 Signed-off-by: Dominik Csapak <d.csapak at proxmox.com>
 ---
- app/pve.js         | 38 ++++++++++++++++++++++++++----
+ app/pve.js         | 45 +++++++++++++++++++++++++++++++----
  app/styles/pve.css | 58 ++++++++++++++++++++++++++++++++++++++++++++++
  vnc.html           |  9 +++++++
- 3 files changed, 101 insertions(+), 4 deletions(-)
+ 3 files changed, 107 insertions(+), 5 deletions(-)
 
 diff --git a/app/pve.js b/app/pve.js
-index 583a406..3eeaa47 100644
+index 583a406..287615f 100644
 --- a/app/pve.js
 +++ b/app/pve.js
+@@ -117,7 +117,7 @@ PVEUI.prototype = {
+ 
+ 	    if (errmsg !== undefined) {
+ 		if (reqOpts.failure) {
+-		    reqOpts.failure.call(scope, errmsg);
++		    reqOpts.failure.call(scope, errmsg, xhr.status);
+ 		}
+ 	    } else {
+ 		if (reqOpts.success) {
 @@ -231,7 +231,7 @@ PVEUI.prototype = {
  
      },
@@ -63,7 +72,7 @@ index 583a406..3eeaa47 100644
  	me.API2Request({
  	    url: me.url,
  	    method: 'POST',
-@@ -391,6 +396,31 @@ PVEUI.prototype = {
+@@ -391,6 +396,36 @@ PVEUI.prototype = {
  	});
      },
  
@@ -83,8 +92,13 @@ index 583a406..3eeaa47 100644
 +			    .classList.add("noVNC_open");
 +		    }
 +		},
-+		failure: function(msg) {
-+		    me.UI.showStatus(msg, 'error');
++		failure: function(msg, code) {
++		    if (code === 403) {
++			// connect anyway for users with VM.Console but without VM.Audit
++			me.initConnection(callback);
++		    } else {
++			me.UI.showStatus(msg, 'error');
++		    }
 +		}
 +	    });
 +	} else {
-- 
2.30.2






More information about the pve-devel mailing list