From de85c4d555e7d8de2e6dd7fd888003f6bf289e71 Mon Sep 17 00:00:00 2001 From: Murali Reddy Date: Fri, 18 Jul 2014 17:51:02 +0530 Subject: [PATCH] CLOUDSTACK-7129: Non-admin user can use deleteNetwork with shared networks fix ensures only admin users can delete shared network (cherry picked from commit 2f293f42d567b1218cb083250707eeffc5324dc3) --- server/src/com/cloud/network/NetworkServiceImpl.java | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/server/src/com/cloud/network/NetworkServiceImpl.java b/server/src/com/cloud/network/NetworkServiceImpl.java index 6c6fd611290..520ed988554 100755 --- a/server/src/com/cloud/network/NetworkServiceImpl.java +++ b/server/src/com/cloud/network/NetworkServiceImpl.java @@ -1837,6 +1837,11 @@ public class NetworkServiceImpl extends ManagerBase implements NetworkService { Account owner = _accountMgr.getAccount(network.getAccountId()); + // Only Admin can delete Shared networks + if (network.getGuestType() == GuestType.Shared && !_accountMgr.isAdmin(caller.getId())) { + throw new InvalidParameterValueException("Only Admins can delete network with guest type " + GuestType.Shared); + } + // Perform permission check _accountMgr.checkAccess(caller, null, true, network);