美文网首页我爱编程
使用SDK登录与操作阿里云账号资源

使用SDK登录与操作阿里云账号资源

作者: 小谷先生 | 来源:发表于2018-04-15 22:08 被阅读180次

    coding=utf-8

    https://api.aliyun.com/

    使用SDK登录和操作阿里云账号及资源

    pip install aliyun-python-sdk-core

    pip install aliyun-python-sdk-ram

    from aliyunsdkcore import client
    from aliyunsdkram.request.v20150501 import CreateUserRequest
    from aliyunsdkram.request.v20150501 import CreateAccessKeyRequest
    from aliyunsdkram.request.v20150501 import DeleteUserRequest
    from aliyunsdkram.request.v20150501 import ListUsersRequest
    from aliyunsdkram.request.v20150501 import ListAccessKeysRequest

    import json

    import time
    import datetime

    class RAM:
    def init(self,accessKeyId,accessSecret,reginId='cn-hangzhou'):
    self.accessKeyId = accessKeyId
    self.accessSecret = accessSecret
    self.reginId = reginId

    def createUsename(self,username):
    
        clt = client.AcsClient(self.accessKeyId, self.accessSecret, self.reginId)
    
        request = CreateUserRequest.CreateUserRequest()
        request.set_accept_format('json')
    
        request.add_query_param('UserName', username)
    
        response = clt.do_action(request)
        return response
    
    
    def createAccessKey(self,username):
    
        clt = client.AcsClient(self.accessKeyId, self.accessSecret, self.reginId)
    
        # 设置参数
        request = CreateAccessKeyRequest.CreateAccessKeyRequest()
        request.set_accept_format('json')
    
        request.add_query_param('UserName', username)
    
        # 发起请求
        response = clt.do_action(request)
        return response
    
    def listAccessKeys(self,username):
        clt = client.AcsClient(self.accessKeyId, self.accessSecret, self.reginId)
        request = ListAccessKeysRequest.ListAccessKeysRequest()
        request.set_accept_format('json')
    
        request.add_query_param('UserName', username)
    
    
        response = clt.do_action(request)
        return response
    
    def listUsers(self):
    
        clt = client.AcsClient(self.accessKeyId, self.accessSecret, self.reginId)
        request = ListUsersRequest.ListUsersRequest()
        request.set_accept_format('json')
    
        # 发起请求
        response = clt.do_action(request)
        return response
    
    def deleteAccessKey(self,UserName,UserAccessKeyId):
    
        clt = client.AcsClient(self.accessKeyId, self.accessSecret, self.reginId)
    
    
        request = DeleteAccessKeyRequest.DeleteAccessKeyRequest()
        request.set_accept_format('json')
    
        request.add_query_param('UserName', UserName)
        request.add_query_param('UserAccessKeyId', UserAccessKeyId)
    
        # 发起请求
        try:
            response = clt.do_action(request)
            return  True
        except:
    
            return False
    

    if name == 'main':

    accessKeyId = '改成你的'
    accessSecret = '改成你的'
    my = RAM(accessKeyId,accessSecret)
    
    usernames_response = json.loads(my.listUsers())
    
    try:
        userlists = usernames_response['Users']['User']
        for user in userlists:
            username = user['UserName']
            clt = client.AcsClient(accessKeyId, accessSecret,'cn-hangzhou')
    
            ak = json.loads(my.listAccessKeys(username))
    
            print(username ,ak['AccessKeys']['AccessKey'][0]['AccessKeyId'])
    except:
        print('error!')

    相关文章

      网友评论

        本文标题:使用SDK登录与操作阿里云账号资源

        本文链接:https://www.haomeiwen.com/subject/txvjkftx.html