前言 最开始想法是随时控制 ECS 的出入规则,就是快速的开启端口,关闭端口等,每次登陆网页修改太麻烦了,所有就找到了API,然后开始用 JAVA 写,写完了怎么运行都不对,说签名不完整。即将崩溃的时候发现了 SDK,正高兴呢,发现没有 jar 包,而是 maven 的,我又不会,然后就搞了 Python 的 SDK,就酱紫。
示例代码 首先需要安装SDK
1 pip install aliyun-python-sdk-ecs
SDK列表和帮助见此处阿里云Python SDK 代码如下:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 from aliyunsdkcore import clientfrom aliyunsdkecs.request.v20140526 import DescribeSecurityGroupAttributeRequestfrom aliyunsdkecs.request.v20140526 import RevokeSecurityGroupRequestfrom aliyunsdkecs.request.v20140526 import AuthorizeSecurityGroupRequestdef describeSecurityGroupAttributeRequest (): """查询安全组规则 """ request = DescribeSecurityGroupAttributeRequest.DescribeSecurityGroupAttributeRequest() request.set_SecurityGroupId('sg-2872p4xdv' ) request.set_accept_format('json' ) return request def revokeSecurityGroupRequest (): """撤销安全组规则 """ request = RevokeSecurityGroupRequest.RevokeSecurityGroupRequest() request.set_SecurityGroupId('sg-2872p4xdv' ) request.set_IpProtocol('all' ) request.set_PortRange('-1/-1' ) request.set_SourceCidrIp('0.0.0.0/0' ) request.set_Policy('accept' ) request.set_accept_format('json' ) return request def authorizeSecurityGroupRequest (): """授权安全组规则 """ request = AuthorizeSecurityGroupRequest.AuthorizeSecurityGroupRequest() request.set_SecurityGroupId('sg-2872p4xdv' ) request.set_IpProtocol('all' ) request.set_PortRange('-1/-1' ) request.set_SourceCidrIp('0.0.0.0/0' ) request.set_Policy('accept' ) request.set_accept_format('json' ) return request if __name__ == '__main__' : clt = client.AcsClient('AccessKeyId' ,'AccessKeySecret' ,'cn-qingdao' ) request = revokeSecurityGroupRequest() result = clt.do_action(request) print (result)
相关链接 云服务器 ECS > API 文档 > 简介 aliyun-openapi-python-sdk 阿里云Python SDK