diff --git a/lib/NGCP/Panel/Role/API/Admins.pm b/lib/NGCP/Panel/Role/API/Admins.pm index cc2e7ee32e..ad5094a849 100644 --- a/lib/NGCP/Panel/Role/API/Admins.pm +++ b/lib/NGCP/Panel/Role/API/Admins.pm @@ -140,6 +140,12 @@ sub update_item { resource => $resource, ); + if($item->id == $c->user->id) { + # don't allow to take away own master rights/write permission, otherwise he'll not be + # able to manage any more admins + delete $resource->{$_} for qw(is_master is_active read_only); + } + my $pass = $resource->{password}; delete $resource->{password}; if(defined $pass && $pass ne $old_resource->{saltedpass}) {