Amazon web services 撤销所有安全组入口规则(使用源安全组)

Amazon web services 撤销所有安全组入口规则(使用源安全组),amazon-web-services,go,amazon-ec2,Amazon Web Services,Go,Amazon Ec2,我有一个ec2.SecurityGroup,我想从中删除所有规则。我在删除组的默认入口规则时遇到问题,其中源是安全组的ID: 我使用Go SDK这样做: for _, perm := sg.IpPermissions { for _, pair := range perm.UserIdGroupPairs { service.RevokeSecurityGroupIngress(&ec2.RevokeSecurityGroupIngressInput{ Source

我有一个ec2.SecurityGroup,我想从中删除所有规则。我在删除组的默认入口规则时遇到问题,其中源是安全组的ID:

我使用Go SDK这样做:

for _, perm := sg.IpPermissions {
  for _, pair := range perm.UserIdGroupPairs {
    service.RevokeSecurityGroupIngress(&ec2.RevokeSecurityGroupIngressInput{
    SourceSecurityGroupName: pair.GroupId,
    IpProtocol: perm.IpProtocol,
    SourceSecurityGroupOwnerId: pair.UserId,
        GroupId: sg.GroupId,
    });
  }
}
但是,这会产生一个错误:“VPCIdNotSpecified:没有此用户的默认VPC”。

我该如何撤销这条规则和其他所有规则?在回答中,围棋是首选,但如果能用任何语言实现这一点,我们将不胜感激。

我不是围棋爱好者,但这里有一些等效的Python代码:

导入boto3
ec2_client=boto3.client('ec2')
响应=ec2_客户端。描述_安全性_组(GroupId=['sg-xxx'])
对于响应中的组['SecurityGroups']:
ec2_client.revoke_security_group_入口(GroupId=group['GroupId'],IpPermissions=group['IpPermissions'])

请注意,从
description\u security\u groups()
返回的
IpPermissions
对象可以直接传递到
revoke\u security\u groups\u ingres()
。希望你能在围棋中做同样的事情。

我不是围棋爱好者,但这里有一些等价的Python代码:

导入boto3
ec2_client=boto3.client('ec2')
响应=ec2_客户端。描述_安全性_组(GroupId=['sg-xxx'])
对于响应中的组['SecurityGroups']:
ec2_client.revoke_security_group_入口(GroupId=group['GroupId'],IpPermissions=group['IpPermissions'])
请注意,从
description\u security\u groups()
返回的
IpPermissions
对象可以直接传递到
revoke\u security\u groups\u ingres()
。希望你能在围棋中做同样的事情