예제 #1
0
파일: eip.py 프로젝트: rohit9211/scripts-1
#!/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'):
예제 #2
0
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,
예제 #3
0
#转载请保留出处

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
예제 #4
0
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'],
예제 #5
0
#!/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


예제 #6
0
#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')
예제 #7
0
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)
예제 #8
0
#!/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)
예제 #9
0
 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
예제 #10
0
 def __init__(self):
     self.clt = client.AcsClient(settings.ALIYUN_ACCESSKEY, settings.ALIYUN_ACCESSSECRET, 'cn-hangzhou')
예제 #11
0
#!/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)


# 查询
예제 #12
0
#!/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
예제 #13
0
#!/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
예제 #14
0
 def __init__(self, access_key, access_secret, region):
     self.clt = client.AcsClient(str(access_key), str(access_secret),
                                 str(region))
예제 #15
0
파일: cms.py 프로젝트: worksk/DevOps
 def __init__(self):
     self.clt = client.AcsClient(settings.ALIYUN_ACCESSKEY, settings.ALIYUN_ACCESSSECRET, 'cn-hangzhou')
     self.request = QueryMetricDataRequest.QueryMetricDataRequest()
     AliyunCMSTool.request_to_json(self)
예제 #16
0
파일: api.py 프로젝트: zeus911/POW
 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)
예제 #17
0
 def __init__(self):
     self.config = ('LTAIYj7b9Fm1rrH2', '6rWkgQX8yiIDrOY70vcy19EUuHvjW2',
                    'cn-beijing')
     self.alt = client.AcsClient(self.config[0], self.config[1],
                                 self.config[2])
예제 #18
0
def get_client():
    return client.AcsClient(ACCESS_KEY, SECRET_KEY, REGION)
예제 #19
0
    )
    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()
예제 #20
0
 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
예제 #21
0
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
예제 #24
0
 def __init__(self):
     self.clt = client.AcsClient(ALICONF.accessKeyId,ALICONF.accessSecret,'cn-hangzhou')
     self.request = None
예제 #25
0
#!/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
예제 #26
0
 def __init__(self):
     self.clt = client.AcsClient(settings.ALIYUN_ACCESSKEY,
                                 settings.ALIYUN_ACCESSSECRET,
                                 'cn-hangzhou')
     self.pagecount = self.get_page_number()
예제 #27
0
    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)
예제 #28
0
파일: test.py 프로젝트: winterQia/monitor
#!/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)
예제 #29
0
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)
예제 #30
0
 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)