[Server query] Use "serverlist" command as non serveradmin user over multiple virtual servers

Hello,

is it possible to use the server query command “serverlist” as non serveradmin user without selecting the virtual server before?

Example:

I only have one virtual server running

login serveradmin <password>
error id=0 msg=ok
serverlist
virtualserver_id=1 virtualserver_port=9987 virtualserver_status=online ...
error id=0 msg=ok

Works even without selecting my virtual server with id 1.
So far so good.

Now I create an account / an identity “ts3exporter” for my teamspeak prometheus exporter on my TeamSpeak server and give the account server query credentials.
I also give the user / it’s group the permission b_serverinstance_virtualserver_list (id 3).

Now I try the same:

login ts3exporter <password>
error id=0 msg=ok
serverlist
error id=2568 msg=insufficient\sclient\spermissions failed_permid=3
use 1
error id=0 msg=ok
serverlist
virtualserver_id=1 virtualserver_port=9987 virtualserver_status=online ...

The user has the necessary permission (on my virtual server with id 1) to run the command.
Since the account needs to list “all” servers it should be allowed to do so.

Is it possible to give my user the permissions for that?

This is only possible for the 2 global ServerQuery accounts.
All other accounts are bound to the permissions they got on that one virtual server.

We can’t suggest to also enable it for the Query guest account. This would allow everyone to perform this commat.

1 Like