创建本地 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'
)

python访问aws-S3服务的更多相关文章

  1. AWS S3服务使用

    AWS S3是亚马逊的一种文件存储服务使用方便. 一.配置服务 public static class AWS_S3ClientInfo { private static readonly strin ...

  2. python操作s3服务中的文件

    亚马逊云aws提供了s3服务.国内一些云厂商也用了s3技术.要操作s3服务器中的文件需要用到boto这个python包.下面的代码是一个简单例子. #! /usr/bin/python # -*-co ...

  3. AWS s3 python sdk code examples

    Yet another easy-to-understand, easy-to-use aws s3 python sdk code examples. github地址:https://github ...

  4. Python使用boto3操作AWS S3中踩过的坑

    最近在AWS上开发部署应用. 看了这篇关于AWS中国区填坑的文章,结合自己使用AWS的经历,补充两个我自己填的坑. http://www.jianshu.com/p/0d0fd39a40c9?utm_ ...

  5. Swift是一个提供RESTful HTTP接口的对象存储系统,目的是为了提供一个和AWS S3竞争的服务

    Swift是一个提供RESTful HTTP接口的对象存储系统,最初起源于Rackspace的Cloud Files,目的是为了提供一个和AWS S3竞争的服务. Swift于2010年开源,是Ope ...

  6. AWS S3 对象存储服务

    虽然亚马逊云非常牛逼,虽然亚马逊云财大气粗,虽然亚马逊用的人也非常多,可是这个文档我简直无法接受,特别是客服,令人发指的回复速度,瞬间让人无语,可是毕竟牛逼.忍了,躺一次坑而已 1.图片上传 1.1 ...

  7. [转帖]通俗解释 AWS 云服务每个组件的作用

    你有听说过 ContainerCache,ElastiCast 和 QR72 这些 AWS 的新服务吗? 没有就对了,这些都是我编的:) 不过,AWS 有 50 多个服务,从名称也不能看出这些服务是做 ...

  8. 利用 AWS 无服务架构之语音合成

    目录 一.架构图 二.服务部署 2.1.创建 DynamoDB 表 2.2.创建 S3 2.2.1 静态网页存储桶 2.2.2.音频存储桶 2.3.创建 SNS Topic 2.4.为 Lambda ...

  9. AWS专线服务总结和疑问

    1.AWS专线服务的入口, 从介绍页上可以看到,有如下功能: (1)专线可以连接AWS云主机和传统的数据中心或者分支机构. (2)专线可以连接AWS云主机和托管区的主机. 连接要素: (1)需要使用V ...

随机推荐

  1. unix系统简明教程 命令

    who                                 显示电脑用户信息 liu :0 Oct 6 13:17 (:0)liu pts/2 Oct 6 13:22 (:0) who a ...

  2. Netty学习笔记(四)——实现dubbo的rpc

    1.rpc基本介绍 RPC ( Remote Procedure Call) -远程过程调用,是一个计算机通信协议.该协议允许运行于一台计算机的程序调用另一台计算机的子程序,两个或多个应用程序分布不同 ...

  3. idea创建自定义代码块

    1.File——>settings 2.找到Editor——>live Templates,点击加号+ 3.创建group或直接创建,我这里创建了一个user组,然后在user组里面添加l ...

  4. json与javabean、list、map之间的转化

    一.java普通对象和json字符串的互转 java对象---->json 首先创建一个java对象: public class Student { //姓名 private String na ...

  5. pytorch1.0神经网络保存、提取、加载

    pytorch1.0网络保存.提取.加载 import torch import torch.nn.functional as F # 包含激励函数 import matplotlib.pyplot ...

  6. 分布式 ID

    [参考文章] Leaf——美团点评分布式ID生成系统 分布式全局唯一ID生成策略 从一次 Snowflake 异常说起 [雪花算法问题] 微服务架构下 机器码如何生成? 如何处理时钟回调问题?

  7. django使用pyecharts(4)----django加入echarts_增量更新

    四.Django 前后端分离_定时增量更新图表 1.安装 djangorestframework linux pip3 install djangorestframework windows pip ...

  8. HTML5 Notification

    H5的Notification特性 Web桌面通知 Notification API的通知接口用于向用户配置和显示桌面通知. 生产环境仅支持https下使用:否则会被默认禁止.开发环境可以在local ...

  9. Android去评分,分享

    去评分: 跳到手机中已安装的市场评分页面 Uri uri = Uri.parse("market://details?id="+getPackageName()); Intent ...

  10. Shiro授权及注解式开发

    目的: shiro授权 shiro注解式开发 Shiro授权 首先设计shiro权限表: 从图中我们也清晰的看出五张表之间的关系 ShiroUserMapper Set<String> g ...