我正在尝试更新安全组以从其他安全组添加端口
例如:sg.authorize('tcp', 22, 22, sg-123456)
但我收到以下错误
sg.authorize('sg-abcdef', 'tcp', 22, 22, 'sg-123456')
File "/usr/local/lib/python2.7/site-packages/boto/ec2/securitygroup.py", line 187, in authorize
src_group_owner_id = src_group.owner_id
AttributeError: 'str' object has no attribute 'owner_id'
答案 0 :(得分:3)
如果要使用authorize
对象的SecurityGroup
方法,则必须传入代表源安全组的另一个SecurityGroup
对象。您似乎在传递包含安全组ID的字符串。
您还可以使用authorize_security_group
对象的EC2Connection
方法。这确实接受源安全组的字符串值:
ec2.authorize_security_group(group_id='sg-abcdef', ip_protocol='tcp', from_port=22, to_port=22, src_security_group_group_id='sg-123456', src_security_group_owner_id='123456789012')