#!/usr/bin/env python #coding:utf-8 import json import sys from config import access_id, access_key_secret from aliyunsdkcore import client from aliyunsdkecs.request.v20140526 import AllocateEipAddressRequest,ReleaseEipAddressRequest,AssociateEipAddressRequest, \ UnassociateEipAddressRequest,DescribeEipAddressesRequest clt = client.AcsClient(access_id, access_key_secret, 'cn-hongkong') def create_eip_address(regionid='cn-hongkong', chargetype='PayByBandwidth', bandwidth=1, fmt='json'): request = AllocateEipAddressRequest.AllocateEipAddressRequest() request.set_accept_format(fmt) request.set_Bandwidth(bandwidth) request.add_query_param('RegionId', regionid) request.add_query_param('InternetChargeType', chargetype) try: result = clt.do_action(request) r_dict = json.loads(result) except: print("Create EIP Address Failed.") sys.exit() if r_dict.has_key('EipAddress'):
import logging import time from aliyunsdkcore import client from aliyunsdkecs.request.v20140526.CreateInstanceRequest import CreateInstanceRequest from aliyunsdkecs.request.v20140526.DescribeInstancesRequest import DescribeInstancesRequest from aliyunsdkecs.request.v20140526.StartInstanceRequest import StartInstanceRequest # configuration the log output formatter, if you want to save the output to file, # append ",filename='ecs_invoke.log'" after datefmt. logging.basicConfig( level=logging.INFO, format= '%(asctime)s %(filename)s[line:%(lineno)d] %(levelname)s %(message)s', datefmt='%a, %d %b %Y %H:%M:%S') clt = client.AcsClient("LTAIxK1dvmGDFYJW", "mNiK40Ax5I6A2jK3wF1KO2dExtE8v0", "eu-central-1") IMAGE_ID = 'centos_7_7_x64_20G_alibase_20200329.vhd' INSTANCE_TYPE = 'ecs.ic5.large' # 2c2g generation 1 SECURITY_GROUP_ID = 'sg-gw8bx81hi315bdl62nj9' vswitchid = 'vsw-gw8bq3e90fho9fooo9z5o' INSTANCE_RUNNING = 'Running' ''' This part provide functions to create instance of ECS services. Required parameters. Original api in: https://www.alibabacloud.com/help/doc-detail/92990.htm?spm=a2c63.p38356.b99.815.1af1498c1ptEPn ''' def create_instance_action(): instance_id = create_after_pay_instance( image_id=IMAGE_ID,
#转载请保留出处 from aliyunsdkcore import client from aliyunsdkalidns.request.v20150109 import DescribeDomainsRequest, DescribeDomainRecordsRequest, UpdateDomainRecordRequest, AddDomainRecordRequest import json, urllib, re #替换以下参数 ID = "1" Secret = "1" RegionId = "cn-hangzhou" DomainName = "xxx.site" #想要自动修改的主机名和域名类型 HostNameList = ['www', '@'] Types = "A" clt = client.AcsClient(ID, Secret, RegionId) #获取公网ip def GetLocalIP(): IPInfo = urllib.urlopen("http://ip.chinaz.com/getip.aspx").read() IP = re.findall(r"ip:'(.*?)',", IPInfo)[0] return IP #获取域名列表(暂时无用) def GetDomainList(): DomainList = DescribeDomainsRequest.DescribeDomainsRequest() DomainList.set_accept_format('json') DNSListJson = json.loads(clt.do_action_with_exception(DomainList)) print DNSListJson
from aliyunsdkcore import client from aliyunsdksts.request.v20150401 import AssumeRoleRequest import json import oss2 from itertools import islice endpoint = 'oss-cn-beijing.aliyuncs.com' bucket_name = 'mooc-feng' # 子账号AccessKeyId access_key_id = 'LTAIdCYLSKnUsb37' # 子账号AccessKeySecret access_key_secret = '65TpH3XXEdJSdHJuruQyZoaplqeK4q' # 角色的资源描述符 只拥有只读权限的角色 role_arn = 'acs:ram::1363311981980278:role/moocfengappreadonly' clt = client.AcsClient(access_key_id, access_key_secret, 'cn-beijing') req = AssumeRoleRequest.AssumeRoleRequest() # 为了简化讨论,这里没有设置Duration、Policy等,更多细节请参考RAM、STS的相关文档。 req.set_accept_format('json') # 设置返回值格式为JSON req.set_RoleArn(role_arn) req.set_RoleSessionName('session-name') req.set_DurationSeconds(1800) # 半小时过期时间 body = clt.do_action_with_exception(req) # 为了简化讨论,没有做出错检查 token = json.loads(body) # ---------将token给客户端----------------- # 初始化StsAuth实例 auth = oss2.StsAuth(token['Credentials']['AccessKeyId'], token['Credentials']['AccessKeySecret'],
#!/usr/bin/python from aliyunsdkcore import client from aliyunsdkalidns.request.v20150109 import DescribeDomainRecordsRequest from aliyunsdkalidns.request.v20150109 import UpdateDomainRecordRequest from aliyunsdkalidns.request.v20150109 import AddDomainRecordRequest from aliyunsdkalidns.request.v20150109 import DeleteDomainRecordRequest from aliyunsdkalidns.request.v20150109 import SetDomainRecordStatusRequest AccessKeyID = "xxx" AccessKeySecret = "xxx" import json import sys clt = client.AcsClient(AccessKeyID, AccessKeySecret, 'cn-hangzhou') setRequest = SetDomainRecordStatusRequest.SetDomainRecordStatusRequest() setRequest.set_RecordId(sys.argv[1]) setRequest.set_Status(sys.argv[2]) setResult = clt.do_action(setRequest) #setResult2 = json.loads(setResult) print setResult
#coding=utf-8 #先安装slb的sdk:pip install aliyun-python-sdk-slb from aliyunsdkcore import client from aliyunsdkslb.request.v20140515 import AddBackendServersRequest from aliyunsdkslb.request.v20140515 import CreateLoadBalancerTCPListenerRequest from aliyunsdkslb.request.v20140515 import StartLoadBalancerListenerRequest print("本脚本是用来给杭州区的SLB添加TCP监听和后端服务器的!") ak = raw_input("请输入ak:") sk = raw_input("请输入sk:") SLBid = raw_input("请输入负载均衡的ID号:") Fport = raw_input("请输入前端端口:") Bport = raw_input("请输入后端端口:") # 鉴权 clt = client.AcsClient(ak, sk, 'cn-hangzhou') # 添加监听 def slbaddtcplisten(): request = CreateLoadBalancerTCPListenerRequest.CreateLoadBalancerTCPListenerRequest( ) request.set_accept_format('json') # SLB的地域和ID号 request.add_query_param('RegionId', 'cn-hangzhou') request.add_query_param('Bandwidth', 5000) request.add_query_param('LoadBalancerId', SLBid) request.add_query_param('ListenerPort', Fport) request.add_query_param('BackendServerPort', Bport) request.add_query_param('Scheduler', 'wlc') request.add_query_param('HealthCheckType', 'tcp')
def initVodClient(): regionId = 'cn-shanghai' # 点播服务所在的Region,国内请填cn-shanghai,不要填写别的区域 connectTimeout = 10 # 连接超时,单位:秒。连接失败默认会自动重试,且最多重试3次 return client.AcsClient(GVar.gAppId, GVar.gAppKey, regionId, auto_retry=True, max_retry_time=3, timeout=connectTimeout)
#!/usr/bin/env python #coding=utf-8 import time import json from aliyunsdkcore import client from aliyunsdkrds.request.v20140815 import DescribeSlowLogRecordsRequest clt = client.AcsClient('LTAIhW7ZgLwPtjCS', 'zHIYQ8cTLswCWLyekQI53Z4Hrjcs54', 'cn-hangzhou') dblist = [ 'rr-2zeyvcbluukv1qiwn', 'rm-2zek28989p9k1179v', 'rr-2zeo3es975ai399y', 'rr-2ze0s71v12o8qdtuh', 'rr-2ze9wz8bb610cx7', 'rr-2ze6hc62pa61dx0p4', 'rr-2zela73o7mh0s2p8o', 'rr-2ze6t3cl58ad3w62', 'rr-2ze1t8s3l254v9qqv', 'rr-2ze66z8t4fpd0x51h', 'rm-2zeg270l9534v1a5m', 'rm-2ze6239209hgvuvgq', 'rm-2zey971kf9t3ublde', 'rm-2ze15vy3vb88cp426', 'rm-2zezohz4xdu54263k', 'rm-2ze85u60ll2iw7x46', 'rm-2ze29k1wb187v1796', 'rm-2ze2yq4xg2mz3a5p', 'rr-2ze5ufm1idmn4bn01', 'rr-2ze4ka78ef56b70fq', 'rr-2ze79e35ia84d2dpq', 'rm-2ze509kn6k6177uf5' ] starttime = time.strftime('%Y-%m-%d') + "T00:00Z" endtime = time.strftime('%Y-%m-%dT%H:%m') + 'Z' request = DescribeSlowLogRecordsRequest.DescribeSlowLogRecordsRequest() request.set_accept_format('json') def exc_sql(db): request.add_query_param('DBInstanceId', db) request.add_query_param('StartTime', starttime)
def get_clt(self): client.region_provider.modify_point('Mts', self.mts_region, self.mts_endpoint) clt = client.AcsClient(self.access_key_id, self.access_key_secret, self.mts_region) return clt
def __init__(self): self.clt = client.AcsClient(settings.ALIYUN_ACCESSKEY, settings.ALIYUN_ACCESSSECRET, 'cn-hangzhou')
#!/usr/bin/env python #coding=utf-8 import sys import json from aliyunsdkcore import client from aliyunsdkslb.request.v20140515 import AddAccessControlListEntryRequest from aliyunsdkslb.request.v20140515 import DescribeAccessControlListAttributeRequest clt = client.AcsClient('AccessKeyId','secret','cn-beijing') AclEntryIP = [{u'entry': u'', u'comment': u''}] AclEntryIP[0]["entry"] = sys.argv[1]+'/32' AclEntryIP = json.dumps(AclEntryIP) request = AddAccessControlListEntryRequest.AddAccessControlListEntryRequest() request.set_accept_format('json') request.add_query_param('RegionId', 'cn-beijing') request.add_query_param('AclEntrys', AclEntryIP) request.add_query_param('AclId', 'acl-fdsafdsafdsafdsaf') ## 发起请求 response = clt.do_action_with_exception(request) # 查询
#!/usr/bin/env python #coding=utf-8 from aliyunsdkcore import client from aliyunsdkrds.request.v20140815 import CreateBackupRequest clt = client.AcsClient('id','key','cn-hangzhou') # 设置参数 request = CreateBackupRequest.CreateBackupRequest() request.set_accept_format('json') request.add_query_param('DBInstanceId', 'rm-2ze00tnh50cxx6387') request.add_query_param('DBName', 'cepingdb') request.add_query_param('BackupRetentionPeriod', '7') # 发起请求 response = clt.do_action(request) # 输出结果 print response
#!/usr/bin/env python #coding=utf-8 from aliyunsdkcore import client from aliyunsdkrds.request.v20140815 import DescribeBackupPolicyRequest clt = client.AcsClient('<accessKeyId>', '<accessSecret>', 'cn-hangzhou') # 设置参数 request = DescribeBackupPolicyRequest.DescribeBackupPolicyRequest() request.set_accept_format('json') request.add_query_param('DBInstanceId', 'rm-2ze00tnh50cxx6387') # 发起请求 response = clt.do_action(request) # 输出结果 print response
def __init__(self, access_key, access_secret, region): self.clt = client.AcsClient(str(access_key), str(access_secret), str(region))
def __init__(self): self.clt = client.AcsClient(settings.ALIYUN_ACCESSKEY, settings.ALIYUN_ACCESSSECRET, 'cn-hangzhou') self.request = QueryMetricDataRequest.QueryMetricDataRequest() AliyunCMSTool.request_to_json(self)
def __init__(self, accesskey, access_secret, region): self.accesskey = accesskey self.access_secret = access_secret self.region = region self.clt = client.AcsClient(self.accesskey, self.access_secret, self.region)
def __init__(self): self.config = ('LTAIYj7b9Fm1rrH2', '6rWkgQX8yiIDrOY70vcy19EUuHvjW2', 'cn-beijing') self.alt = client.AcsClient(self.config[0], self.config[1], self.config[2])
def get_client(): return client.AcsClient(ACCESS_KEY, SECRET_KEY, REGION)
) ap.add_argument( 'channel_layer', help='ASGI channel layer instance' ) args = ap.parse_args() channel_layer = get_channel_layer(args.channel_layer) Config.DEBUG = args.debug Config.LOG_FILEPATH = args.log Config.TEST_MODE = args.test Config.read_env(args.settings) Config.load_data_from_db() Config.aliyun_client = client.AcsClient( Config.ALIYUN_ACCESS_KEY_ID, Config.ALIYUN_ACCESS_KEY_SECRET, 'cn-hangzhou' ) Config.aliyun_request = PushRequest.PushRequest() Config.aliyun_request.set_AppKey(Config.ALIYUN_MOBILE_PUSH_APP_KEY) Config.aliyun_request.set_Target('ALL') Config.aliyun_request.set_DeviceType('ANDROID') Config.aliyun_request.set_PushType('NOTICE') asgi_client = ASGIMQTTClient( Config.HOST, Config.PORT, Config.CLIENT_ID, Config.USERNAME, Config.PASSWORD, Config.TOPIC, Config.QOS, channel_layer ) asgi_client.run()
def __repuest__(self, request): self.client = client.AcsClient(access_key_id, access_key_secret, region_id) result = self.client.do_action_with_exception(request) return result
from aliyunsdkpush.request.v20160801 import PushRequest from aliyunsdkcore import client from django.conf import settings aliyun_client = client.AcsClient(settings.ALIYUN_ACCESS_KEY_ID, settings.ALIYUN_ACCESS_KEY_SECRET, 'cn-hangzhou') aliyun_request = PushRequest.PushRequest() aliyun_request.set_AppKey(settings.ALIYUN_MOBILE_PUSH_APP_KEY) aliyun_request.set_Target('ALL') aliyun_request.set_DeviceType('ANDROID') aliyun_request.set_PushType('NOTICE')
if __name__ == '__main__': if len(sys.argv) != 4: print 'Usage: python ', sys.argv[0], ' instansid host threshold' exit(1) instance_id = sys.argv[1] host = sys.argv[2] node = sys.argv[3] password = redis_pwd_dic.get(instance_id) r = redis.StrictRedis(host=host, port=6379, password=password) info = r.execute_command("iinfo", str(node)) #print(info) info_res = parse_info(info) maxmemory = info_res.get('maxmemory') if not maxmemory: client = client.AcsClient('ali-key', 'ali-secret', 'region') request = CommonRequest() request.set_accept_format('json') request.set_domain('r-kvstore.aliyuncs.com') request.set_method('POST') request.set_protocol_type('https') # https | http request.set_version('2015-01-01') request.set_action_name('DescribeInstanceAttribute') request.add_query_param('RegionId', 'region') request.add_query_param('InstanceId', instance_id) response = client.do_action(request) json_result = json.loads(response) instance_class = json_result.get('Instances').get( 'DBInstanceAttribute')[0].get('InstanceClass')
topicName = '' queueName = '' # Ali RDS server DB_HOST = "" DB_USERNAME = "" DB_PASSWORD = "" DB_DATABASE = "" # Read the basic configurations from sample.cfg # WARNING: Please do not hard code your accessId and accesskey in next line. # (more information: https://yq.aliyun.com/articles/55947) accessKeyId, accesskeySecret, endpoint, token = MNSSampleCommon.LoadConfig() # create the connect for IoT Kit clt = client.AcsClient(accessKeyId, accesskeySecret, 'cn-shanghai') # Init my_account, my_queue my_account = Account(endpoint, accessKeyId, accesskeySecret, token) queue_name = sys.argv[1] if len(sys.argv) > 1 else queueName boolbase64 = False if len( sys.argv) > 2 and sys.argv[2].lower() == "false" else True my_queue = my_account.get_queue(queue_name) my_queue.set_encoding(boolbase64) # get the connection to Aliyun RDS iot-dev db = MySQLdb.connect(DB_HOST, DB_USERNAME, DB_PASSWORD, DB_DATABASE) cursor = db.cursor() cursor.execute("SELECT VERSION()") data = cursor.fetchone() print "Database version : %s " % data
def __init__(self): self.clt = client.AcsClient(ALICONF.accessKeyId,ALICONF.accessSecret,'cn-hangzhou') self.request = None
#!/usr/bin/python #coding=utf-8 import properties from aliyunsdkpush.request.v20160801 import QueryDeviceInfoRequest from aliyunsdkcore import client clt = client.AcsClient(properties.accessKeyId, properties.accessKeySecret, properties.regionId) request = QueryDeviceInfoRequest.QueryDeviceInfoRequest() request.set_AppKey(properties.appKey) request.set_DeviceId(properties.deviceId) result = clt.do_action(request) print result
def __init__(self): self.clt = client.AcsClient(settings.ALIYUN_ACCESSKEY, settings.ALIYUN_ACCESSSECRET, 'cn-hangzhou') self.pagecount = self.get_page_number()
def _push(self, devicetype, target, targetvalue, title, content, urlscheme): clt = client.AcsClient(self.accessKeyId, self.accessKeySecret, self.regionId) title = title[:20] xm_title = title[:15] xm_content = content[:127] request = PushRequest.PushRequest() request.set_AppKey(self.appKey) # 推送目标: DEVICE:按设备推送 ALIAS : 按别名推送 ACCOUNT:按帐号推送 TAG:按标签推送; ALL: 广播推送 request.set_Target(target) # 根据Target来设定,如Target=DEVICE, 则对应的值为 设备id1,设备id2. 多个值使用逗号分隔.(帐号与设备有一次最多100个的限制) request.set_TargetValue(targetvalue) # 设备类型 ANDROID iOS ALL request.set_DeviceType(devicetype) # 消息类型 MESSAGE NOTICE request.set_PushType("NOTICE") extra_dict = {'urlscheme': urlscheme} # 消息的标题 request.set_Title(title.encode('utf-8')) # 消息的内容 request.set_Body(content.encode('utf-8')) # iOS配置 request.set_iOSBadge(1) # 开启静默通知 request.set_iOSSilentNotification(False) # iOS通知声音 request.set_iOSMusic("default") # iOS的通知是通过APNs中心来发送的,需要填写对应的环境信息。"DEV" : 表示开发环境 "PRODUCT" : 表示生产环境 request.set_iOSApnsEnv("PRODUCT") # 消息推送时设备不在线(既与移动推送的服务端的长连接通道不通),则这条推送会做为通知,通过苹果的APNs通道送达一次。注意:离线消息转通知仅适用于生产环境 request.set_iOSRemind(True) # iOS消息转通知时使用的iOS通知内容,仅当iOSApnsEnv=PRODUCT && iOSRemind为true时有效 request.set_iOSRemindBody("iOSRemindBody") # 自定义的kv结构,开发者扩展用 针对iOS设备 request.set_iOSExtParameters(json.dumps(extra_dict)) # android配置 # 指定notificaitonchannel id request.set_AndroidNotificationChannel("1") # 通知的提醒方式 "VIBRATE" : 震动 "SOUND" : 声音 "BOTH" : 声音和震动 NONE : 静音 request.set_AndroidNotifyType("SOUND") # 通知栏自定义样式1-100 request.set_AndroidNotificationBarType(1) # 点击通知后动作 "APPLICATION" : 打开应用 "ACTIVITY" : 打开AndroidActivity "URL" : 打开URL "NONE" : 无跳转 request.set_AndroidOpenType("ACTIVITY") # Android收到推送后打开对应的url,仅当AndroidOpenType="URL"有效 # request.set_AndroidOpenUrl("www.aliyun.com") # 设定通知打开的activity,仅当AndroidOpenType="Activity"有效 request.set_AndroidActivity("com.blockcashflow.app.main.MainActivity") # Android通知声音 request.set_AndroidMusic("default") # 设置该参数后启动小米托管弹窗功能, 此处指定通知点击后跳转的Activity(托管弹窗的前提条件:1. 集成小米辅助通道;2. StoreOffline参数设为true) request.set_AndroidXiaoMiActivity( "com.blockcashflow.app.main.MainActivity") # 设定通知的扩展属性。(注意 : 该参数要以 json map 的格式传入,否则会解析出错) request.set_AndroidExtParameters(json.dumps(extra_dict)) request.set_AndroidXiaoMiNotifyTitle(xm_title.encode('utf-8')) request.set_AndroidXiaoMiNotifyBody(xm_content.encode('utf-8')) request.set_StoreOffline(True) try: debug('aliyun_push_data', ', '.join([target, targetvalue, title, content, urlscheme])) result = clt.do_action_with_exception(request) result = json.loads(result) debug('aliyun_push', result) return True, result.get('MessageId') except Exception as e: debug('aliyun_push_error', e, True) return False, str(e)
#!/usr/bin/python # -*- coding: utf-8 -*- # auther: qianxd # date: 2019/3/114:55 from aliyunsdkcore import client from aliyunsdkrds.request.v20140815 import DescribeResourceUsageRequest, DescribeDBInstancePerformanceRequest import json, sys, datetime AcesskeyID = 'LTAIk1fHVSSahLxN' AcesskeySecret = 'usd1W47lTFXhhTIR5Cq5WTw9M3qACg' regionid = 'cn-hangzhou' clt = client.AcsClient(AcesskeyID, AcesskeySecret, regionid) # Type = sys.argv[1] # DBInstanceId = sys.argv[2] Key = sys.argv[1] # 阿里云返回的数据为UTC时间,因此要转换为东八区时间。其他时区同理。 UTC_End = datetime.datetime.today() - datetime.timedelta(hours=8) UTC_Start = UTC_End - datetime.timedelta(minutes=25) StartTime = datetime.datetime.strftime(UTC_Start, '%Y-%m-%dT%H:%MZ') EndTime = datetime.datetime.strftime(UTC_End, '%Y-%m-%dT%H:%MZ') def GetPerformance(MasterKey, IndexNum, StartTime, EndTime): Performance = DescribeDBInstancePerformanceRequest.DescribeDBInstancePerformanceRequest( ) Performance.set_accept_format('json') Performance.set_DBInstanceId('rm-bp18144qkyj20731o') Performance.set_Key(MasterKey)
from Crypto.Cipher import AES import base64 def aes256unpad(s): return s[:-ord(s[len(s) - 1:])] if __name__ == '__main__': Config = configparser.ConfigParser() Config.read("./userinfo.txt") accesskeyid = Config.get("UserInfo", "UserKey") accesssecret = Config.get("UserInfo", "UserSec") regionid = Config.get("UserInfo", "RegionId") clt = client.AcsClient(accesskeyid, accesssecret, regionid) with open('cipherkey', 'r') as fp: cipherdatakey = fp.read() # get the content of file: cipherkey decrequest = DecryptRequest.DecryptRequest() decrequest.set_CiphertextBlob(cipherdatakey) decrequest.set_accept_format("json") decrequest.set_protocol_type("https") decresp = clt.do_action_with_exception(decrequest) plaintext = json.loads(decresp) datakey = base64.b64decode( plaintext["Plaintext"]) # get plaintext datakey back with open('cipherfile.txt', 'r') as cipher: ciphercontent = cipher.read() cipherfile = base64.b64decode(ciphercontent) print("cipher file content:") print(ciphercontent)
def __init__(self): self.access_key = 'ha33EKzYxQlm1OGg' self.access_secret = 'cPj7Q06bT04dKqxOiDnvLOIWTCno2t' self.region_id = 'cn-hangzhou' self.client = client.AcsClient(self.access_key, self.access_secret, self.region_id)