Я пытаюсь создать группу безопасности в AWS, используя boto3, в которой источник трафика c поступает из существующей группы безопасности. Вот как я это делаю:
res = client.authorize_security_group_ingress(
GroupId=sg_id, <---- sg I want to modify
IpPermissions=[{
'IpProtocol': 'tcp',
'FromPort': 80,
'ToPort': 80,
'IpRanges': [{'CidrIp': 'sg-xxxxxxx'] <--- sg I want to be the source
}]
)
Но я получаю: An error occurred (InvalidParameterValue) when calling the AuthorizeSecurityGroupIngress operation: CIDR block sg-0ae9ec592f6d43219 is malformed
, что, честно говоря, довольно очевидно, потому что поле в IpRanges - CidrIp, а не что-то вроде groupId
, что я и ожидал написать. Но согласно документации :
CidrIp (строка) - диапазон CIDR IPv4. Вы можете указать диапазон CIDR или исходную группу безопасности, но не оба. Чтобы указать один IPv4-адрес, используйте длину префикса / 32.
В действительности это не говорит «идентификатор группы безопасности источника», я просто предположил, что это будет идентификатор. Я попробовал имя, и оно также не работает (при указании имени будет пытаться посмотреть SG с именем в VP по умолчанию C)