CLOUDSTACK-6330 [Automation] createRemoteAccessVpn call fails with access permission error
- Correcting the EntityType for PublicIpAddress entity - Adding the EntityType in the @APICommand for *IPAddrCmds Project: http://git-wip-us.apache.org/repos/asf/cloudstack/repo Commit: http://git-wip-us.apache.org/repos/asf/cloudstack/commit/8ddf0a42 Tree: http://git-wip-us.apache.org/repos/asf/cloudstack/tree/8ddf0a42 Diff: http://git-wip-us.apache.org/repos/asf/cloudstack/diff/8ddf0a42 Branch: refs/heads/4.4 Commit: 8ddf0a42b70e2c1ec569a12364b8640758b80518 Parents: f2ab2c1 Author: Prachi Damle <[email protected]> Authored: Thu Apr 3 14:54:07 2014 -0700 Committer: Prachi Damle <[email protected]> Committed: Thu Apr 3 23:07:10 2014 -0700 ---------------------------------------------------------------------- .../api/command/user/address/DisassociateIPAddrCmd.java | 2 +- .../api/command/user/address/ListPublicIpAddressesCmd.java | 2 +- .../cloudstack/api/command/user/address/UpdateIPAddrCmd.java | 2 +- engine/components-api/src/com/cloud/network/addr/PublicIp.java | 3 ++- .../plugin/src/org/apache/cloudstack/iam/IAMApiServiceImpl.java | 1 - .../src/org/apache/cloudstack/iam/RoleBasedAPIAccessChecker.java | 1 - 6 files changed, 5 insertions(+), 6 deletions(-) ---------------------------------------------------------------------- http://git-wip-us.apache.org/repos/asf/cloudstack/blob/8ddf0a42/api/src/org/apache/cloudstack/api/command/user/address/DisassociateIPAddrCmd.java ---------------------------------------------------------------------- diff --git a/api/src/org/apache/cloudstack/api/command/user/address/DisassociateIPAddrCmd.java b/api/src/org/apache/cloudstack/api/command/user/address/DisassociateIPAddrCmd.java index 269fcb5..ba41844 100644 --- a/api/src/org/apache/cloudstack/api/command/user/address/DisassociateIPAddrCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/address/DisassociateIPAddrCmd.java @@ -37,7 +37,7 @@ import com.cloud.network.IpAddress; import com.cloud.user.Account; @APICommand(name = "disassociateIpAddress", description = "Disassociates an ip address from the account.", responseObject = SuccessResponse.class, - requestHasSensitiveInfo = false, responseHasSensitiveInfo = false) + requestHasSensitiveInfo = false, responseHasSensitiveInfo = false, entityType = { IpAddress.class }) public class DisassociateIPAddrCmd extends BaseAsyncCmd { public static final Logger s_logger = Logger.getLogger(DisassociateIPAddrCmd.class.getName()); http://git-wip-us.apache.org/repos/asf/cloudstack/blob/8ddf0a42/api/src/org/apache/cloudstack/api/command/user/address/ListPublicIpAddressesCmd.java ---------------------------------------------------------------------- diff --git a/api/src/org/apache/cloudstack/api/command/user/address/ListPublicIpAddressesCmd.java b/api/src/org/apache/cloudstack/api/command/user/address/ListPublicIpAddressesCmd.java index 3218713..07ccfe9 100644 --- a/api/src/org/apache/cloudstack/api/command/user/address/ListPublicIpAddressesCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/address/ListPublicIpAddressesCmd.java @@ -40,7 +40,7 @@ import com.cloud.network.IpAddress; import com.cloud.utils.Pair; @APICommand(name = "listPublicIpAddresses", description = "Lists all public ip addresses", responseObject = IPAddressResponse.class, responseView = ResponseView.Restricted, - requestHasSensitiveInfo = false, responseHasSensitiveInfo = false) + requestHasSensitiveInfo = false, responseHasSensitiveInfo = false, entityType = { IpAddress.class }) public class ListPublicIpAddressesCmd extends BaseListTaggedResourcesCmd { public static final Logger s_logger = Logger.getLogger(ListPublicIpAddressesCmd.class.getName()); http://git-wip-us.apache.org/repos/asf/cloudstack/blob/8ddf0a42/api/src/org/apache/cloudstack/api/command/user/address/UpdateIPAddrCmd.java ---------------------------------------------------------------------- diff --git a/api/src/org/apache/cloudstack/api/command/user/address/UpdateIPAddrCmd.java b/api/src/org/apache/cloudstack/api/command/user/address/UpdateIPAddrCmd.java index cc736d0..99bb1af 100644 --- a/api/src/org/apache/cloudstack/api/command/user/address/UpdateIPAddrCmd.java +++ b/api/src/org/apache/cloudstack/api/command/user/address/UpdateIPAddrCmd.java @@ -39,7 +39,7 @@ import com.cloud.network.IpAddress; import com.cloud.user.Account; @APICommand(name = "updatePublicIpAddress", description = "Updates an ip address", responseObject = IPAddressResponse.class, - requestHasSensitiveInfo = false, responseHasSensitiveInfo = false) + requestHasSensitiveInfo = false, responseHasSensitiveInfo = false, entityType = { IpAddress.class }) public class UpdateIPAddrCmd extends BaseAsyncCustomIdCmd { public static final Logger s_logger = Logger.getLogger(UpdateIPAddrCmd.class.getName()); private static final String s_name = "updateipaddressresponse"; http://git-wip-us.apache.org/repos/asf/cloudstack/blob/8ddf0a42/engine/components-api/src/com/cloud/network/addr/PublicIp.java ---------------------------------------------------------------------- diff --git a/engine/components-api/src/com/cloud/network/addr/PublicIp.java b/engine/components-api/src/com/cloud/network/addr/PublicIp.java index ec4a9ee..a20e345 100644 --- a/engine/components-api/src/com/cloud/network/addr/PublicIp.java +++ b/engine/components-api/src/com/cloud/network/addr/PublicIp.java @@ -19,6 +19,7 @@ package com.cloud.network.addr; import java.util.Date; import com.cloud.dc.VlanVO; +import com.cloud.network.IpAddress; import com.cloud.network.PublicIpAddress; import com.cloud.network.dao.IPAddressVO; import com.cloud.utils.net.Ip; @@ -239,6 +240,6 @@ public class PublicIp implements PublicIpAddress { @Override public Class<?> getEntityType() { - return PublicIpAddress.class; + return IpAddress.class; } } http://git-wip-us.apache.org/repos/asf/cloudstack/blob/8ddf0a42/services/iam/plugin/src/org/apache/cloudstack/iam/IAMApiServiceImpl.java ---------------------------------------------------------------------- diff --git a/services/iam/plugin/src/org/apache/cloudstack/iam/IAMApiServiceImpl.java b/services/iam/plugin/src/org/apache/cloudstack/iam/IAMApiServiceImpl.java index 3c17f68..8b454e0 100644 --- a/services/iam/plugin/src/org/apache/cloudstack/iam/IAMApiServiceImpl.java +++ b/services/iam/plugin/src/org/apache/cloudstack/iam/IAMApiServiceImpl.java @@ -40,7 +40,6 @@ import org.apache.cloudstack.acl.PermissionScope; import org.apache.cloudstack.acl.SecurityChecker.AccessType; import org.apache.cloudstack.affinity.AffinityGroup; import org.apache.cloudstack.api.ApiConstants; -import org.apache.cloudstack.api.BaseAsyncCreateCmd; import org.apache.cloudstack.api.BaseListCmd; import org.apache.cloudstack.api.InternalIdentity; import org.apache.cloudstack.api.command.iam.AddAccountToIAMGroupCmd; http://git-wip-us.apache.org/repos/asf/cloudstack/blob/8ddf0a42/services/iam/plugin/src/org/apache/cloudstack/iam/RoleBasedAPIAccessChecker.java ---------------------------------------------------------------------- diff --git a/services/iam/plugin/src/org/apache/cloudstack/iam/RoleBasedAPIAccessChecker.java b/services/iam/plugin/src/org/apache/cloudstack/iam/RoleBasedAPIAccessChecker.java index c5e84d1..fe71912 100644 --- a/services/iam/plugin/src/org/apache/cloudstack/iam/RoleBasedAPIAccessChecker.java +++ b/services/iam/plugin/src/org/apache/cloudstack/iam/RoleBasedAPIAccessChecker.java @@ -33,7 +33,6 @@ import org.apache.cloudstack.acl.PermissionScope; import org.apache.cloudstack.acl.RoleType; import org.apache.cloudstack.acl.SecurityChecker.AccessType; import org.apache.cloudstack.api.APICommand; -import org.apache.cloudstack.api.BaseAsyncCreateCmd; import org.apache.cloudstack.api.BaseCmd; import org.apache.cloudstack.api.BaseListCmd; import org.apache.cloudstack.iam.api.IAMPolicy;
