in SecurityGroups/config/code/index.py [0:0]
def currentEgressRule(sg):
sg_response = client.describe_security_groups(GroupIds=[sg])
print (sg_response)
current_egress_rule_list = []
for permission_set in sg_response['SecurityGroups'][0]['IpPermissionsEgress']:
protocol = permission_set["IpProtocol"]
from_port = permission_set.get("FromPort")
to_port = permission_set.get("ToPort")
cidrs = tuple(
ip_range["CidrIp"]
for ip_range in permission_set.get("IpRanges", [])
)
ipv6_cidrs = tuple(
ip_range["CidrIpv6"]
for ip_range in permission_set.get("Ipv6Ranges", [])
)
other_security_groups = tuple(
extract_other_security_group(group)
for group in permission_set.get("UserIdGroupPairs", [])
)
prefix_list_id = tuple(
extract_prefix_list_id(group)
for group in permission_set.get("PrefixListIds", [])
)
current_egress_rule_list.append(
SgRuleIngress(
cidrs,
ipv6_cidrs,
from_port,
to_port,
protocol,
other_security_groups,
list(prefix_list_id)
)
)
return (current_egress_rule_list)