mirror of
https://git.proxmox.com/git/pve-manager
synced 2025-04-28 16:36:30 +00:00
fix wrong permissions for subscription info
workaround to keep the subscription popup on login even without 'Sys.Audit' permissions but remove the subscription details in the GUI for unauthorized users.
This commit is contained in:
parent
3e1d7320d0
commit
2d2ed7ab53
@ -91,9 +91,6 @@ __PACKAGE__->register_method ({
|
||||
name => 'get',
|
||||
path => '',
|
||||
method => 'GET',
|
||||
permissions => {
|
||||
check => ['perm', '/nodes/{node}', [ 'Sys.Audit' ]],
|
||||
},
|
||||
description => "Read subscription info.",
|
||||
proxyto => 'node',
|
||||
permissions => { user => 'all' },
|
||||
@ -110,12 +107,25 @@ __PACKAGE__->register_method ({
|
||||
my $server_id = PVE::API2Tools::get_hwaddress();
|
||||
my $url = "http://www.proxmox.com/products/proxmox-ve/subscription-service-plans";
|
||||
|
||||
my $rpcenv = PVE::RPCEnvironment::get();
|
||||
my $authuser = $rpcenv->get_user();
|
||||
my $has_permission = PVE::AccessControl::check_permissions($authuser, '/nodes/{node}', 'Sys.Audit');
|
||||
|
||||
my $info = PVE::INotify::read_file('subscription');
|
||||
if (!$info) {
|
||||
return {
|
||||
my $no_subscription_info = {
|
||||
status => "NotFound",
|
||||
message => "There is no subscription key",
|
||||
serverid => $server_id,
|
||||
url => $url,
|
||||
};
|
||||
$no_subscription_info->{serverid} = $server_id if $has_permission;
|
||||
return $no_subscription_info;
|
||||
}
|
||||
|
||||
if (!$has_permission) {
|
||||
return {
|
||||
status => $info->{status},
|
||||
message => $info->{message},
|
||||
url => $url,
|
||||
}
|
||||
}
|
||||
|
Loading…
Reference in New Issue
Block a user