2
我一直在閱讀Pyboto documentation,雖然我知道如何添加基於IP的規則到安全組,我一直沒能找到一個方法刪除一個基於IP的規則。安全組對象上的remove_rule方法不會更新ec2實例上的安全組,因此我不確定這會對我有幫助。Pyboto:刪除基於IP的規則從安全組
以前有沒有人做過這個?
我一直在閱讀Pyboto documentation,雖然我知道如何添加基於IP的規則到安全組,我一直沒能找到一個方法刪除一個基於IP的規則。安全組對象上的remove_rule方法不會更新ec2實例上的安全組,因此我不確定這會對我有幫助。Pyboto:刪除基於IP的規則從安全組
以前有沒有人做過這個?
a SecurityGroup
boto中的對象有兩個重要的方法; authorize
和revoke
。向組添加和刪除規則的最簡單方法是使用這些方法。因此,添加基於IP的規則:
import boto.ec2
conn = boto.ec2.connect_to_region('us-west-2') # or whatever region you want
sg = conn.get_all_security_groups('my_security_group')[0]
sg.authorize('tcp', 22, 22, cidr_ip='0.0.0.0/0')
這將爲所有主機授權端口22。撤銷該規則(您應該!):
sg.revoke('tcp', 22, 22, cidr_ip='0.0.0.0/0')
它的參數相同。
謝謝 - 我如何返回一個安全組的基於IP的規則列表? – user1658296
您無法獲取僅基於IP的規則列表,但您可以使用SecurityGroup對象的rules屬性獲取安全組的所有規則列表。此列表中的每個對象都會有一個「授予」屬性,該屬性是與該規則關聯的顯式授權列表。如果該對象對於屬性「cidr_ip」具有非非值,則它是基於IP的規則。 – garnaat