Python 在另一个VPC中更新安全组会引发InvalidPermission.NotFound错误
因此,我正在编写脚本,该脚本将删除Python 在另一个VPC中更新安全组会引发InvalidPermission.NotFound错误,python,amazon-web-services,amazon-ec2,boto,boto3,Python,Amazon Web Services,Amazon Ec2,Boto,Boto3,因此,我正在编写脚本,该脚本将删除0.0.0.0/0和::/0上的端口22,现在下面的脚本在默认vpc上运行良好,但当我更改vpc时,它会给出无效权限未找到错误。我无法理解为什么它在另一个VPC中提供errrr,但在默认VPC中工作良好 def update_port(fromport, toport, groupid, vpcid): response = client.revoke_security_group_ingress( G
0.0.0.0/0和::/0上的端口22
,现在下面的脚本在默认vpc上运行良好,但当我更改vpc时,它会给出无效权限未找到错误。我无法理解为什么它在另一个VPC中提供errrr,但在默认VPC中工作良好
def update_port(fromport, toport, groupid, vpcid):
response = client.revoke_security_group_ingress(
GroupId=groupid,
IpPermissions=[
{
'FromPort': fromport,
'IpProtocol': 'tcp',
'IpRanges': [
{
'CidrIp': '0.0.0.0/0'
},
],
'Ipv6Ranges': [
{
'CidrIpv6': '::/0'
},
],
'ToPort': toport,
'UserIdGroupPairs': [
{
'GroupId': groupid,
'VpcId': vpcid,
},
],
},
],
)
执行:
update_port(22,22,'sg-groupid','vpc-vpcid')
错误:
botocore.exceptions.ClientError: An error occurred (InvalidPermission.NotFound) when calling the RevokeSecurityGroupIngress operation: The specified rule does not exist in this security group.
错误是不言自明的
指定的规则在此安全组中不存在。
请检查规则是否存在。规则存在如果您能正确阅读我的问题,我说明该功能在默认vpc上运行完美,但问题出现在另一个vpc sg中。如果4条规则(如控制台上所示)作为一条规则返回,且具有多个IP范围,如何仅删除其中一个IP范围的规则?(我接受了我获取的规则,只保留了要删除的规则的范围,然后仍然发生此错误)