Skip to content

Commit ba5eca3

Browse files
This change enhances integrity protections for new SDK requests to S3. S3 SDKs now support the CRC64NVME checksum algorithm, full object checksums for multipart S3 objects, and new default integrity protections for S3 requests.
1 parent e7328bf commit ba5eca3

File tree

100 files changed

+3933
-1935
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

100 files changed

+3933
-1935
lines changed

generator/ServiceModels/s3/s3-2006-03-01.api.json

Lines changed: 104 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -643,6 +643,7 @@
643643
"httpChecksum":{
644644
"requestValidationModeMember":"ChecksumMode",
645645
"responseAlgorithms":[
646+
"CRC64NVME",
646647
"CRC32",
647648
"CRC32C",
648649
"SHA256",
@@ -1749,8 +1750,10 @@
17491750
"members":{
17501751
"ChecksumCRC32":{"shape":"ChecksumCRC32"},
17511752
"ChecksumCRC32C":{"shape":"ChecksumCRC32C"},
1753+
"ChecksumCRC64NVME":{"shape":"ChecksumCRC64NVME"},
17521754
"ChecksumSHA1":{"shape":"ChecksumSHA1"},
1753-
"ChecksumSHA256":{"shape":"ChecksumSHA256"}
1755+
"ChecksumSHA256":{"shape":"ChecksumSHA256"},
1756+
"ChecksumType":{"shape":"ChecksumType"}
17541757
}
17551758
},
17561759
"ChecksumAlgorithm":{
@@ -1759,7 +1762,8 @@
17591762
"CRC32",
17601763
"CRC32C",
17611764
"SHA1",
1762-
"SHA256"
1765+
"SHA256",
1766+
"CRC64NVME"
17631767
]
17641768
},
17651769
"ChecksumAlgorithmList":{
@@ -1769,12 +1773,20 @@
17691773
},
17701774
"ChecksumCRC32":{"type":"string"},
17711775
"ChecksumCRC32C":{"type":"string"},
1776+
"ChecksumCRC64NVME":{"type":"string"},
17721777
"ChecksumMode":{
17731778
"type":"string",
17741779
"enum":["ENABLED"]
17751780
},
17761781
"ChecksumSHA1":{"type":"string"},
17771782
"ChecksumSHA256":{"type":"string"},
1783+
"ChecksumType":{
1784+
"type":"string",
1785+
"enum":[
1786+
"COMPOSITE",
1787+
"FULL_OBJECT"
1788+
]
1789+
},
17781790
"CloudFunction":{"type":"string"},
17791791
"CloudFunctionConfiguration":{
17801792
"type":"structure",
@@ -1820,8 +1832,10 @@
18201832
"ETag":{"shape":"ETag"},
18211833
"ChecksumCRC32":{"shape":"ChecksumCRC32"},
18221834
"ChecksumCRC32C":{"shape":"ChecksumCRC32C"},
1835+
"ChecksumCRC64NVME":{"shape":"ChecksumCRC64NVME"},
18231836
"ChecksumSHA1":{"shape":"ChecksumSHA1"},
18241837
"ChecksumSHA256":{"shape":"ChecksumSHA256"},
1838+
"ChecksumType":{"shape":"ChecksumType"},
18251839
"ServerSideEncryption":{
18261840
"shape":"ServerSideEncryption",
18271841
"location":"header",
@@ -1889,6 +1903,11 @@
18891903
"location":"header",
18901904
"locationName":"x-amz-checksum-crc32c"
18911905
},
1906+
"ChecksumCRC64NVME":{
1907+
"shape":"ChecksumCRC64NVME",
1908+
"location":"header",
1909+
"locationName":"x-amz-checksum-crc64nvme"
1910+
},
18921911
"ChecksumSHA1":{
18931912
"shape":"ChecksumSHA1",
18941913
"location":"header",
@@ -1899,6 +1918,16 @@
18991918
"location":"header",
19001919
"locationName":"x-amz-checksum-sha256"
19011920
},
1921+
"ChecksumType":{
1922+
"shape":"ChecksumType",
1923+
"location":"header",
1924+
"locationName":"x-amz-checksum-type"
1925+
},
1926+
"MpuObjectSize":{
1927+
"shape":"MpuObjectSize",
1928+
"location":"header",
1929+
"locationName":"x-amz-mp-object-size"
1930+
},
19021931
"RequestPayer":{
19031932
"shape":"RequestPayer",
19041933
"location":"header",
@@ -1952,6 +1981,7 @@
19521981
"ETag":{"shape":"ETag"},
19531982
"ChecksumCRC32":{"shape":"ChecksumCRC32"},
19541983
"ChecksumCRC32C":{"shape":"ChecksumCRC32C"},
1984+
"ChecksumCRC64NVME":{"shape":"ChecksumCRC64NVME"},
19551985
"ChecksumSHA1":{"shape":"ChecksumSHA1"},
19561986
"ChecksumSHA256":{"shape":"ChecksumSHA256"},
19571987
"PartNumber":{"shape":"PartNumber"}
@@ -2274,8 +2304,10 @@
22742304
"members":{
22752305
"ETag":{"shape":"ETag"},
22762306
"LastModified":{"shape":"LastModified"},
2307+
"ChecksumType":{"shape":"ChecksumType"},
22772308
"ChecksumCRC32":{"shape":"ChecksumCRC32"},
22782309
"ChecksumCRC32C":{"shape":"ChecksumCRC32C"},
2310+
"ChecksumCRC64NVME":{"shape":"ChecksumCRC64NVME"},
22792311
"ChecksumSHA1":{"shape":"ChecksumSHA1"},
22802312
"ChecksumSHA256":{"shape":"ChecksumSHA256"}
22812313
}
@@ -2287,6 +2319,7 @@
22872319
"LastModified":{"shape":"LastModified"},
22882320
"ChecksumCRC32":{"shape":"ChecksumCRC32"},
22892321
"ChecksumCRC32C":{"shape":"ChecksumCRC32C"},
2322+
"ChecksumCRC64NVME":{"shape":"ChecksumCRC64NVME"},
22902323
"ChecksumSHA1":{"shape":"ChecksumSHA1"},
22912324
"ChecksumSHA256":{"shape":"ChecksumSHA256"}
22922325
}
@@ -2477,6 +2510,11 @@
24772510
"shape":"ChecksumAlgorithm",
24782511
"location":"header",
24792512
"locationName":"x-amz-checksum-algorithm"
2513+
},
2514+
"ChecksumType":{
2515+
"shape":"ChecksumType",
2516+
"location":"header",
2517+
"locationName":"x-amz-checksum-type"
24802518
}
24812519
}
24822520
},
@@ -2638,6 +2676,11 @@
26382676
"shape":"ChecksumAlgorithm",
26392677
"location":"header",
26402678
"locationName":"x-amz-checksum-algorithm"
2679+
},
2680+
"ChecksumType":{
2681+
"shape":"ChecksumType",
2682+
"location":"header",
2683+
"locationName":"x-amz-checksum-type"
26412684
}
26422685
}
26432686
},
@@ -4331,6 +4374,11 @@
43314374
"location":"header",
43324375
"locationName":"x-amz-checksum-crc32c"
43334376
},
4377+
"ChecksumCRC64NVME":{
4378+
"shape":"ChecksumCRC64NVME",
4379+
"location":"header",
4380+
"locationName":"x-amz-checksum-crc64nvme"
4381+
},
43344382
"ChecksumSHA1":{
43354383
"shape":"ChecksumSHA1",
43364384
"location":"header",
@@ -4341,6 +4389,11 @@
43414389
"location":"header",
43424390
"locationName":"x-amz-checksum-sha256"
43434391
},
4392+
"ChecksumType":{
4393+
"shape":"ChecksumType",
4394+
"location":"header",
4395+
"locationName":"x-amz-checksum-type"
4396+
},
43444397
"MissingMeta":{
43454398
"shape":"MissingMeta",
43464399
"location":"header",
@@ -4880,6 +4933,11 @@
48804933
"location":"header",
48814934
"locationName":"x-amz-checksum-crc32c"
48824935
},
4936+
"ChecksumCRC64NVME":{
4937+
"shape":"ChecksumCRC64NVME",
4938+
"location":"header",
4939+
"locationName":"x-amz-checksum-crc64nvme"
4940+
},
48834941
"ChecksumSHA1":{
48844942
"shape":"ChecksumSHA1",
48854943
"location":"header",
@@ -4890,6 +4948,11 @@
48904948
"location":"header",
48914949
"locationName":"x-amz-checksum-sha256"
48924950
},
4951+
"ChecksumType":{
4952+
"shape":"ChecksumType",
4953+
"location":"header",
4954+
"locationName":"x-amz-checksum-type"
4955+
},
48934956
"ETag":{
48944957
"shape":"ETag",
48954958
"location":"header",
@@ -6057,7 +6120,8 @@
60576120
"location":"header",
60586121
"locationName":"x-amz-request-charged"
60596122
},
6060-
"ChecksumAlgorithm":{"shape":"ChecksumAlgorithm"}
6123+
"ChecksumAlgorithm":{"shape":"ChecksumAlgorithm"},
6124+
"ChecksumType":{"shape":"ChecksumType"}
60616125
}
60626126
},
60636127
"ListPartsRequest":{
@@ -6279,6 +6343,7 @@
62796343
"box":true
62806344
},
62816345
"MissingMeta":{"type":"integer"},
6346+
"MpuObjectSize":{"type":"integer"},
62826347
"MultipartUpload":{
62836348
"type":"structure",
62846349
"members":{
@@ -6288,7 +6353,8 @@
62886353
"StorageClass":{"shape":"StorageClass"},
62896354
"Owner":{"shape":"Owner"},
62906355
"Initiator":{"shape":"Initiator"},
6291-
"ChecksumAlgorithm":{"shape":"ChecksumAlgorithm"}
6356+
"ChecksumAlgorithm":{"shape":"ChecksumAlgorithm"},
6357+
"ChecksumType":{"shape":"ChecksumType"}
62926358
}
62936359
},
62946360
"MultipartUploadId":{"type":"string"},
@@ -6390,6 +6456,7 @@
63906456
"LastModified":{"shape":"LastModified"},
63916457
"ETag":{"shape":"ETag"},
63926458
"ChecksumAlgorithm":{"shape":"ChecksumAlgorithmList"},
6459+
"ChecksumType":{"shape":"ChecksumType"},
63936460
"Size":{"shape":"Size"},
63946461
"StorageClass":{"shape":"ObjectStorageClass"},
63956462
"Owner":{"shape":"Owner"},
@@ -6536,6 +6603,7 @@
65366603
"Size":{"shape":"Size"},
65376604
"ChecksumCRC32":{"shape":"ChecksumCRC32"},
65386605
"ChecksumCRC32C":{"shape":"ChecksumCRC32C"},
6606+
"ChecksumCRC64NVME":{"shape":"ChecksumCRC64NVME"},
65396607
"ChecksumSHA1":{"shape":"ChecksumSHA1"},
65406608
"ChecksumSHA256":{"shape":"ChecksumSHA256"}
65416609
}
@@ -6573,6 +6641,7 @@
65736641
"members":{
65746642
"ETag":{"shape":"ETag"},
65756643
"ChecksumAlgorithm":{"shape":"ChecksumAlgorithmList"},
6644+
"ChecksumType":{"shape":"ChecksumType"},
65766645
"Size":{"shape":"Size"},
65776646
"StorageClass":{"shape":"ObjectVersionStorageClass"},
65786647
"Key":{"shape":"ObjectKey"},
@@ -6661,6 +6730,7 @@
66616730
"Size":{"shape":"Size"},
66626731
"ChecksumCRC32":{"shape":"ChecksumCRC32"},
66636732
"ChecksumCRC32C":{"shape":"ChecksumCRC32C"},
6733+
"ChecksumCRC64NVME":{"shape":"ChecksumCRC64NVME"},
66646734
"ChecksumSHA1":{"shape":"ChecksumSHA1"},
66656735
"ChecksumSHA256":{"shape":"ChecksumSHA256"}
66666736
}
@@ -7728,6 +7798,11 @@
77287798
"location":"header",
77297799
"locationName":"x-amz-checksum-crc32c"
77307800
},
7801+
"ChecksumCRC64NVME":{
7802+
"shape":"ChecksumCRC64NVME",
7803+
"location":"header",
7804+
"locationName":"x-amz-checksum-crc64nvme"
7805+
},
77317806
"ChecksumSHA1":{
77327807
"shape":"ChecksumSHA1",
77337808
"location":"header",
@@ -7738,6 +7813,11 @@
77387813
"location":"header",
77397814
"locationName":"x-amz-checksum-sha256"
77407815
},
7816+
"ChecksumType":{
7817+
"shape":"ChecksumType",
7818+
"location":"header",
7819+
"locationName":"x-amz-checksum-type"
7820+
},
77417821
"ServerSideEncryption":{
77427822
"shape":"ServerSideEncryption",
77437823
"location":"header",
@@ -7857,6 +7937,11 @@
78577937
"location":"header",
78587938
"locationName":"x-amz-checksum-crc32c"
78597939
},
7940+
"ChecksumCRC64NVME":{
7941+
"shape":"ChecksumCRC64NVME",
7942+
"location":"header",
7943+
"locationName":"x-amz-checksum-crc64nvme"
7944+
},
78607945
"ChecksumSHA1":{
78617946
"shape":"ChecksumSHA1",
78627947
"location":"header",
@@ -9225,6 +9310,11 @@
92259310
"location":"header",
92269311
"locationName":"x-amz-checksum-crc32c"
92279312
},
9313+
"ChecksumCRC64NVME":{
9314+
"shape":"ChecksumCRC64NVME",
9315+
"location":"header",
9316+
"locationName":"x-amz-checksum-crc64nvme"
9317+
},
92289318
"ChecksumSHA1":{
92299319
"shape":"ChecksumSHA1",
92309320
"location":"header",
@@ -9306,6 +9396,11 @@
93069396
"location":"header",
93079397
"locationName":"x-amz-checksum-crc32c"
93089398
},
9399+
"ChecksumCRC64NVME":{
9400+
"shape":"ChecksumCRC64NVME",
9401+
"location":"header",
9402+
"locationName":"x-amz-checksum-crc64nvme"
9403+
},
93099404
"ChecksumSHA1":{
93109405
"shape":"ChecksumSHA1",
93119406
"location":"header",
@@ -9480,6 +9575,11 @@
94809575
"location":"header",
94819576
"locationName":"x-amz-fwd-header-x-amz-checksum-crc32c"
94829577
},
9578+
"ChecksumCRC64NVME":{
9579+
"shape":"ChecksumCRC64NVME",
9580+
"location":"header",
9581+
"locationName":"x-amz-fwd-header-x-amz-checksum-crc64nvme"
9582+
},
94839583
"ChecksumSHA1":{
94849584
"shape":"ChecksumSHA1",
94859585
"location":"header",

0 commit comments

Comments
 (0)