osssigput.py 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455
  1. #!/usr/bin/env python3
  2. # -*- coding: utf-8 -*-
  3. """
  4. @Copyright (C) ansjer cop Video Technology Co.,Ltd.All rights reserved.
  5. @AUTHOR: ASJRD018
  6. @NAME: AnsjerFormal
  7. @software: PyCharm
  8. @DATE: 2018/11/8 9:23
  9. @Version: python3.6
  10. @MODIFY DECORD:ansjer dev
  11. @file: oss_sts.py
  12. @Contact: chanjunkai@163.com
  13. """
  14. # -*- coding: utf-8 -*-
  15. '''
  16. 生成sts上传授权
  17. '''
  18. from aliyunsdkcore import client
  19. from aliyunsdksts.request.v20150401 import AssumeRoleRequest
  20. import json
  21. import oss2
  22. endpoint = 'oss-cn-shenzhen.aliyuncs.com'
  23. bucket_name = 'testrtmp'
  24. tokenss={
  25. "AccessKeyId": "STS.NJkdiiu9PMUdGaXFiSnS83WRM",
  26. "AccessKeySecret": "HvrWLseaz257Nz37PYCAioVEYEKNaf8JZXYW855VNcnC",
  27. "SecurityToken": "CAIS1AJ1q6Ft5B2yfSjIr4neL9PdmOZx+pePRUfpomkGYtwU3JL5rzz2IHxLf3RuAe8dvvw+nGBV7vsdlqN4S5ZDR1HCbsJxtjm5Bbo6J9ivgde8yJBZolnMewHKedCSvqL7Z+H+U6mMGJOEYEzFkSle2KbzcS7YMXWuLZyOj+wuDLEQRRLqVSdaI91UKwB+yrcdLmCDGfupPwLnpWDSAUF0wFYe71ly8qOi2MaRxwPDhVnhsI8vqp/2P4KvYrscXul2WMzn2/dtJOiTknxM5gNW7rtzlOsGg3Ol3/CFKlVd+RidKJCw+9Z0fjR+e7IxFo9c3oGe8qQi4qqJzNuxkksSe7gFDwanHdj6nJGfR7jzbY1iLe2gYk6giI7fasPH1Co/em8eOQ9wfN4sF2R9ExRESEuBdvD8pQ6SPVzzE/ndgPxujMVvr1Dh7dOGIlmJU0Y3c+Dtox9VGoABY3pOaapVaGXulEwkKgzcs1uHjyWuydn19BNRh4/VGrMUJnaUziXMDBN/3ui8trV3/UqSqlo65BZ5LEr7KawatcwC+qdbTY4DfwhUkBfDW/WSuCQGyMPjhpIjXTG5rek3YGp7+ocqB5e2truXo6aBdsD/g8xICFwLA9vAP5AuCLE=",
  28. "Expiration": "2018-11-22T06:41:34Z",
  29. "expire": 3600,
  30. "endpoint": "oss-cn-shenzhen.aliyuncs.com",
  31. "bucket_name": "testrtmp",
  32. "arn": "acs:ram::1024237323330331:role/maxadmin/chanjunkai"
  33. }
  34. # 使用RAM账号的AccessKeyId和AccessKeySecret向STS申请临时token。
  35. # 使用临时token中的认证信息初始化StsAuth实例。
  36. auth = oss2.StsAuth(tokenss['AccessKeyId'],
  37. tokenss['AccessKeySecret'],
  38. tokenss['SecurityToken'])
  39. print(auth)
  40. # exit()
  41. # 使用StsAuth实例初始化存储空间。
  42. bucket = oss2.Bucket(auth, endpoint, bucket_name)
  43. # 上传一个字符串。
  44. bucket.delete_object('a-3.txt')
  45. exit()
  46. bucket.put_object('a-3.txt', b'hello world')
  47. exit()
  48. res =bucket.get_object('object-name.txt')
  49. print(res.read())