J'essaie d'obtenir le groupe de sécurité par ID de groupe.Boto: comment obtenir le groupe de sécurité par ID?
Voici le code:
#!/usr/bin/env python2.7
import boto.ec2
import argparse
parser = argparse.ArgumentParser(description="")
parser.add_argument('sec_group_id', help='Security group id')
parser.add_argument('region_name', help='Region name')
args = parser.parse_args()
sec_group_id = args.sec_group_id
region_name = args.region_name
conn = boto.ec2.connect_to_region(region_name);
GivenSecGroup=conn.get_all_security_groups(sec_group_id)
Quand j'exécute ceci:
./sec_groups.py sg-45b9a12c eu-central-1
Je reçois la sortie:
Traceback (most recent call last):
File "./sec_groups.py", line 22, in <module>
GivenSecGroup=conn.get_all_security_groups(sec_group_id)
File "/usr/lib/python2.7/dist-packages/boto/ec2/connection.py", line 2969, in get_all_security_groups
[('item', SecurityGroup)], verb='POST')
File "/usr/lib/python2.7/dist-packages/boto/connection.py", line 1182, in get_list
raise self.ResponseError(response.status, response.reason, body)
boto.exception.EC2ResponseError: EC2ResponseError: 400 Bad Request
<?xml version="1.0" encoding="UTF-8"?>
<Response><Errors><Error><Code>InvalidGroup.NotFound</Code><Message>The security group 'sg-45b9a12c' does not exist in default VPC 'vpc-d289c0bb'</Message></Error></Errors><RequestID>edf2afd0-f552-4bdf-938e-1bccef798145</RequestID></Response>
Donc, fondamentalement, il dit: « Le groupe de sécurité « sg -45b9a12c 'n'existe pas par défaut VPC' vpc-d289c0bb '"
Mais ce groupe de sécurité existe dans VPC par défaut! Voici la preuve: AWS console screenshot
Comment puis-je faire ce travail?
Je vous serais reconnaissant de votre réponse.
Merci beaucoup, Vor! C'est ce dont j'avais besoin! – Ivan