]> git.proxmox.com Git - pve-network.git/commitdiff
add permissions
authorAlexandre Derumier <aderumier@odiso.com>
Tue, 26 Nov 2019 09:00:26 +0000 (10:00 +0100)
committerThomas Lamprecht <t.lamprecht@proxmox.com>
Tue, 26 Nov 2019 11:33:40 +0000 (12:33 +0100)
Signed-off-by: Alexandre Derumier <aderumier@odiso.com>
PVE/API2/Network/SDN.pm
PVE/API2/Network/SDN/Controllers.pm
PVE/API2/Network/SDN/Vnets.pm
PVE/API2/Network/SDN/Zones.pm
PVE/API2/Network/SDN/Zones/Content.pm
PVE/API2/Network/SDN/Zones/Status.pm

index 66856c52b31cc123acd147cb1219498482316bca..2d76b2edfd1a99364ab1ed6424645ebfab1a3c06 100644 (file)
@@ -37,7 +37,7 @@ __PACKAGE__->register_method({
     method => 'GET',
     description => "Directory index.",
     permissions => {
-       check => ['perm', '/', [ 'Sys.Audit' ]],
+       check => ['perm', '/', [ 'SDN.Audit' ]],
     },
     parameters => {
        additionalProperties => 0,
@@ -82,9 +82,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'PUT',
     description => "Apply sdn controller changes && reload.",
-#    permissions => {
-#       check => ['perm', '/cluster/sdn/controllers', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn', ['SDN.Allocate']],
+    },
     parameters => {
         additionalProperties => 0,
     },
index a740dbdd12ac366aa0ebf1ed6155adf68aae4cf1..70ecd60de9f21c17532ea1cdda5316be8230625c 100644 (file)
@@ -38,7 +38,7 @@ __PACKAGE__->register_method ({
     method => 'GET',
     description => "SDN controllers index.",
     permissions => {
-       description => "Only list entries where you have 'SDN.Audit' or 'SDN.Allocate' permissions on '/cluster/sdn/controllers/<controller>'",
+       description => "Only list entries where you have 'SDN.Audit' or 'SDN.Allocate' permissions on '/sdn/controllers/<controller>'",
        user => 'all',
     },
     parameters => {
@@ -74,8 +74,8 @@ __PACKAGE__->register_method ({
        my @sids = PVE::Network::SDN::Controllers::sdn_controllers_ids($cfg);
        my $res = [];
        foreach my $id (@sids) {
-#          my $privs = [ 'SDN.Audit', 'SDN.Allocate' ];
-#          next if !$rpcenv->check_any($authuser, "/cluster/sdn/controllers/$id", $privs, 1);
+           my $privs = [ 'SDN.Audit', 'SDN.Allocate' ];
+           next if !$rpcenv->check_any($authuser, "/sdn/controllers/$id", $privs, 1);
 
            my $scfg = &$api_sdn_controllers_config($cfg, $id);
            next if $param->{type} && $param->{type} ne $scfg->{type};
@@ -93,9 +93,9 @@ __PACKAGE__->register_method ({
     path => '{controller}',
     method => 'GET',
     description => "Read sdn controller configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/controllers/{controller}', ['SDN.Allocate']],
-#   },
+    permissions => {
+       check => ['perm', '/sdn/controllers/{controller}', ['SDN.Allocate']],
+   },
 
     parameters => {
        additionalProperties => 0,
@@ -118,9 +118,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'POST',
     description => "Create a new sdn controller object.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/controllers', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/controllers', ['SDN.Allocate']],
+    },
     parameters => PVE::Network::SDN::Controllers::Plugin->createSchema(),
     returns => { type => 'null' },
     code => sub {
@@ -158,9 +158,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'DELETE',
     description => "Revert sdn controller changes.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/controllers', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/controllers', ['SDN.Allocate']],
+    },
     parameters => {
        additionalProperties => 0,
     },
@@ -180,9 +180,9 @@ __PACKAGE__->register_method ({
     path => '{controller}',
     method => 'PUT',
     description => "Update sdn controller object configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/controllers', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/controllers', ['SDN.Allocate']],
+    },
     parameters => PVE::Network::SDN::Controllers::Plugin->updateSchema(),
     returns => { type => 'null' },
     code => sub {
@@ -222,9 +222,9 @@ __PACKAGE__->register_method ({
     path => '{controller}',
     method => 'DELETE',
     description => "Delete sdn controller object configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/controllers', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/controllers', ['SDN.Allocate']],
+    },
     parameters => {
        additionalProperties => 0,
        properties => {
index bb3415f3b718b64207c108ed728ae9aa47f00768..d66cd1473ae7ecc3dcc099e789425a810cb71641 100644 (file)
@@ -33,7 +33,7 @@ __PACKAGE__->register_method ({
     method => 'GET',
     description => "SDN vnets index.",
     permissions => {
-       description => "Only list entries where you have 'SDN.Audit' or 'SDN.Allocate' permissions on '/cluster/sdn/vnets/<vnet>'",
+       description => "Only list entries where you have 'SDN.Audit' or 'SDN.Allocate' permissions on '/sdn/vnets/<vnet>'",
        user => 'all',
     },
     parameters => {
@@ -59,8 +59,8 @@ __PACKAGE__->register_method ({
        my @sids = PVE::Network::SDN::Vnets::sdn_vnets_ids($cfg);
        my $res = [];
        foreach my $id (@sids) {
-#          my $privs = [ 'SDN.Audit', 'SDN.Allocate' ];
-#          next if !$rpcenv->check_any($authuser, "/cluster/sdn/vnets/$id", $privs, 1);
+           my $privs = [ 'SDN.Audit', 'SDN.Allocate' ];
+           next if !$rpcenv->check_any($authuser, "/sdn/vnets/$id", $privs, 1);
 
            my $scfg = &$api_sdn_vnets_config($cfg, $id);
            push @$res, $scfg;
@@ -74,9 +74,9 @@ __PACKAGE__->register_method ({
     path => '{vnet}',
     method => 'GET',
     description => "Read sdn vnet configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/vnets/{vnet}', ['SDN.Allocate']],
-#   },
+    permissions => {
+       check => ['perm', '/sdn/vnets/{vnet}', ['SDN.Allocate']],
+   },
 
     parameters => {
         additionalProperties => 0,
@@ -101,9 +101,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'POST',
     description => "Create a new sdn vnet object.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/vnets', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/vnets', ['SDN.Allocate']],
+    },
     parameters => PVE::Network::SDN::VnetPlugin->createSchema(),
     returns => { type => 'null' },
     code => sub {
@@ -139,9 +139,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'DELETE',
     description => "Revert sdn vnet changes.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/vnets', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/vnets', ['SDN.Allocate']],
+    },
     parameters => {
        additionalProperties => 0,
     },
@@ -161,9 +161,9 @@ __PACKAGE__->register_method ({
     path => '{vnet}',
     method => 'PUT',
     description => "Update sdn vnet object configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/vnets', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/vnets', ['SDN.Allocate']],
+    },
     parameters => PVE::Network::SDN::VnetPlugin->updateSchema(),
     returns => { type => 'null' },
     code => sub {
@@ -201,9 +201,9 @@ __PACKAGE__->register_method ({
     path => '{vnet}',
     method => 'DELETE',
     description => "Delete sdn vnet object configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/vnets', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/vnets', ['SDN.Allocate']],
+    },
     parameters => {
        additionalProperties => 0,
        properties => {
index 00380dc5cb567b8a9be94788221f56d36ee0e60d..d1492902425226fd2f166e2e754c4cbd3ab3d956 100644 (file)
@@ -45,7 +45,7 @@ __PACKAGE__->register_method ({
     method => 'GET',
     description => "SDN zones index.",
     permissions => {
-       description => "Only list entries where you have 'SDN.Audit' or 'SDN.Allocate' permissions on '/cluster/sdn/zones/<zone>'",
+       description => "Only list entries where you have 'SDN.Audit' or 'SDN.Allocate' permissions on '/sdn/zones/<zone>'",
        user => 'all',
     },
     parameters => {
@@ -81,8 +81,8 @@ __PACKAGE__->register_method ({
        my @sids = PVE::Network::SDN::Zones::sdn_zones_ids($cfg);
        my $res = [];
        foreach my $id (@sids) {
-#          my $privs = [ 'SDN.Audit', 'SDN.Allocate' ];
-#          next if !$rpcenv->check_any($authuser, "/cluster/sdn/zones/$id", $privs, 1);
+           my $privs = [ 'SDN.Audit', 'SDN.Allocate' ];
+           next if !$rpcenv->check_any($authuser, "/sdn/zones/$id", $privs, 1);
 
            my $scfg = &$api_sdn_zones_config($cfg, $id);
            next if $param->{type} && $param->{type} ne $scfg->{type};
@@ -100,9 +100,9 @@ __PACKAGE__->register_method ({
     path => '{zone}',
     method => 'GET',
     description => "Read sdn zone configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/zones/{zone}', ['SDN.Allocate']],
-#   },
+    permissions => {
+       check => ['perm', '/sdn/zones/{zone}', ['SDN.Allocate']],
+   },
 
     parameters => {
        additionalProperties => 0,
@@ -125,9 +125,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'POST',
     description => "Create a new sdn zone object.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/zones', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/zones', ['SDN.Allocate']],
+    },
     parameters => PVE::Network::SDN::Zones::Plugin->createSchema(),
     returns => { type => 'null' },
     code => sub {
@@ -166,9 +166,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'DELETE',
     description => "Revert sdn zone changes.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/zones', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/zones', ['SDN.Allocate']],
+    },
     parameters => {
        additionalProperties => 0,
     },
@@ -188,9 +188,9 @@ __PACKAGE__->register_method ({
     path => '{zone}',
     method => 'PUT',
     description => "Update sdn zone object configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/zones', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/zones', ['SDN.Allocate']],
+    },
     parameters => PVE::Network::SDN::Zones::Plugin->updateSchema(),
     returns => { type => 'null' },
     code => sub {
@@ -231,9 +231,9 @@ __PACKAGE__->register_method ({
     path => '{zone}',
     method => 'DELETE',
     description => "Delete sdn zone object configuration.",
-#    permissions => {
-#      check => ['perm', '/cluster/sdn/zones', ['SDN.Allocate']],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/zones', ['SDN.Allocate']],
+    },
     parameters => {
        additionalProperties => 0,
        properties => {
index 94536fbcf5f1e389bf10612442f16f72fea196e2..f3912018e613c4d8c2e60ea865c542a7c0d07f67 100644 (file)
@@ -21,9 +21,9 @@ __PACKAGE__->register_method ({
     path => '',
     method => 'GET',
     description => "List zone content.",
-#    permissions => {
-#      check => ['perm', '/sdn/{sdn}', ['SDN.Audit'], any => 1],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/zones/{zone}', ['SDN.Audit'], any => 1],
+    },
     protected => 1,
     proxyto => 'node',
     parameters => {
index ee44f18d57e7d586feb16890aafaa3610e2143de..b543a176dda7ce3c9e5d344c02233cdb75f7b76b 100644 (file)
@@ -78,9 +78,9 @@ __PACKAGE__->register_method ({
     path => '{zone}',
     method => 'GET',
     description => "",
-#    permissions => {
-#      check => ['perm', '/sdn/{sdn}', ['SDN.Audit'], any => 1],
-#    },
+    permissions => {
+       check => ['perm', '/sdn/zones/{zone}', ['SDN.Audit'], any => 1],
+    },
     parameters => {
        additionalProperties => 0,
        properties => {