创建本地 AWS 凭证文件

  1. 登录 AWS 管理控制台 并通过以下网址打开 IAM 控制台 https://console.amazonaws.cn/iam/

  2. 创建一个新用户,其权限仅限于您希望您的代码有权访问的服务和操作。有关创建新 IAM 用户的更多信息,请参阅创建 IAM 用户 (控制台),并按照步骤 8 中的说明进行操作。

  3. 选择 Download .csv 以保存 AWS 凭证的本地副本。

  4. 在您的计算机上,导航至主目录,并创建 .aws 目录。在基于 Unix 的系统 (例如 Linux 或 OS X) 上,它在以下位置:

    ~/.aws
     

    在 Windows 上,它在以下位置:

    %HOMEPATH%\.aws
     
  5. .aws 目录中,创建名为 credentials 的新文件。

  6. 打开您从 IAM 控制台中下载的凭证 .csv 文件,并使用以下格式将其内容复制到 credentials 文件:

    [default]
    aws_access_key_id = your_access_key_id
    aws_secret_access_key = your_secret_access_key
  7. 保存 credentials 文件,并删除在步骤 3 中下载的 .csv 文件。

您的共享凭证文件现在已在本地计算机上配置完毕,可以与 AWS 开发工具包一起使用。

Python 访问示例:

import boto3

#初始化glacier client。
glacier = boto3.client("glacier") #查看指定文件库的基本信息。
vaultresult = glacier.describe_vault(vaultName='testvault') print(vaultresult) #读取文档并上传到文件库。请替换文件名和路径。请保存方法返回信息中的archiveID等信息。该方法指针对文件大小不超过4GB.
file = open("path/filesname", "rb") response = glacier.upload_archive(vaultName='testvault',body=file) print(response) #当文档大小超过4GB,需要使用分段上传。partsize 必须在 1048576 和 4294967296之间,且为2的倍数。
initiateResult = glacier.initiate_multipart_upload(vaultName='testvault',partSize='') uploadID = initiateResult["uploadId"]
print("uploadID:", uploadID) #文档分成几部分,就需要执行以下命令几次。
partresult = glacier.upload_multipart_part(
body=file,
range='bytes 0-1048575/*',
uploadId=uploadID,
vaultName='testvault',
) #在上传完所有部分之后,提交complete请求。
completeresult = glacier.complete_multipart_upload(
vaultName='testvault',
uploadId=uploadID
) #如果想查看文件库中的所有文档基本信息,或检索某个文档,需要提交job。
#如果需要整个文件库中的文档清单,Type使用“inventory-retrieval”,检索恢复某个文档,使用“archive-retrieval”,如果是对某个文档执行select操作,请使用“select”。
response = glacier.initiate_job(
vaultName='testvault',
jobParameters={
'Description': 'My inventory job',
'Type': 'inventory-retrieval',
},
) #检索当前存在的job。
jobresult = glacier.list_jobs(vaultName='testvault') #获取某个任务检索出的数据,可以是清单或文档。如果是检索某个文档中的一部分,请添加range参数。 响应中的body为数据。
output = glacier.get_job_output(
vaultName='testvault',
jobId='string'
)

最新文章

  1. the beginner's guide to idapython
  2. C++程序设计——知识点总结
  3. table表单中的td内容两端对齐
  4. 关于localstorage的几个测试
  5. Node.js初探之hello world
  6. c# winform TreeView NODE(节点) 重命名或获取节点修改后的值
  7. hdu 4647 - Another Graph Game(思路题)
  8. 万能脚本助Web执行底层Linux命令
  9. .NET多线程同步方法详解
  10. sass教程
  11. Java 引用数据类型
  12. 测试工具之badboy
  13. css清楚浮动的class
  14. 关于C# 怎么调用webapi来获取到json数据
  15. 集合List
  16. SDL 2.0 API by Category
  17. dd命令测试硬盘IO
  18. javascript-对象搜索算法挑战
  19. 20145226夏艺华 《Java程序设计》实验报告五
  20. 国内外三个领域巨头告诉你Redis怎么用

热门文章

  1. Django:序列化的几种方法
  2. AWS 架构最佳实践(十二)
  3. golang中sync.RWMutex和sync.Mutex区别
  4. gcr 镜像无法下载问题
  5. 微信小程序填坑,wx.request() 内调用setData()方法错误的解决办法
  6. js获取下拉框的值
  7. java23种设计模式之十:责任链模式
  8. QT 创建一个线程播放监控视频
  9. hyperledger fabric超级账本java sdk样例e2e代码流程分析
  10. HCIA SWITCHING&ROUTTING 笔记——第一章 TCP/IP基础知识(1)