AmazonS3 RESTパケット解析(Upload)

AmazonS3 RESTパケット解析 S3


https://www.simulationroom999.com/blog/amazons3-rest-packet-analysis/

はじめに

今回は、AmazonS3へのUpload。
FTP のPUT相当
AWSのPUT object仕様になる。

aws s3 cp ./command.txt s3://XXXXXXXXXXXXXXX/folder/command.txt

POSTメソッド かと思いきやPUTメソッド らしい。
CRUD で言うところのCreateとUpdateに違いが無い様子。

リクエストパケット

PUT /XXXXXXXXXXXXXXX/folder/command.txt HTTP/1.1
Host: 192.168.5.128
Accept-Encoding: identity
X-Amz-Content-SHA256: da6c8bee606331951a57aff1438df7ed396985b0f47e0bf54637512c0a598a08
Content-Length: 528
Content-MD5: Gp4fmJqZ4PFCcXGHulS42Q==
Expect: 100-continue
X-Amz-Date: 20200310T073623Z
User-Agent: aws-cli/1.16.51 Python/2.7.15 Windows/10 botocore/1.12.41
Content-Type: text/plain
Authorization: AWS4-HMAC-SHA256 Credential=AAAAAAAAAAAAAAAAAAAA/20100310/ap-northeast-1/s3/aws4_request, SignedHeaders=content-md5;content-type;host;x-amz-content-sha256;x-amz-date, Signature=b5995fe89ffb64fb264966d563396a828e40ab580beef6cb9cd12455410ceb3c
<!-- HTTP_BODY -->

実際のファイルのデータが入る。今回はContent-Type: text/plainなのでテキストがそのまま入る。
テキトーなバイナリデータの場合はapplication/octet-streamを指定する。

レスポンスパケット

HTTP/1.1 200 OK
Accept-Ranges: bytes
Content-Security-Policy: block-all-mixed-content
Etag: "1a9e1f989a99e0f142717187ba54b8d9" 
Vary: Origin
X-Amz-Bucket-Region: ap-northeast-1
X-Amz-Request-Id: 156DAE3385D77AA8
X-Xss-Protection: 1; mode=block
Date: Tue, 10 Mar 2020 07:36:23 GMT
Content-Length: 0

コメント

タイトルとURLをコピーしました