2900 Commits

Author SHA1 Message Date
Andrew Gaul 554418e58a Add EU_CENTRAL_2, EU_SOUTH_1, and EU_SOUTH_2 (#219) 2025-04-28 10:12:40 +02:00
Max Smiley 1f181bf00c Fix NPE on failure to parse AWSError when determing whether to retry request 2025-04-12 02:46:23 +09:00
Andrew Gaul 0e1eee0457 Bump to 2.7.1-SNAPSHOT 2025-02-12 21:26:14 -08:00
Andrew Gaul 9ced58af5a Set version to 2.7.0-SNAPSHOT 2025-01-21 20:53:24 -08:00
Andrew Gaul 26338e30d7 JCLOUDS-1644: Create AWS S3 buckets with ownership and public access block
AWS changed the defaults when creating buckets to prevent public-read
and other canned ACLs.  Background:
https://stackoverflow.com/a/76102067/2800111
2025-01-21 20:13:01 -08:00
Andrew Gaul dd6cb51454 JCLOUDS-1644: Create AWS S3 buckets with ownership and public access block
AWS changed the defaults when creating buckets to prevent public-read
and other canned ACLs.  Background:
https://stackoverflow.com/a/76102067/2800111
2025-01-21 14:01:12 +09:00
Andrew Gaul a87b66a17c Upgrade to snakeyaml 2.3 2025-01-19 12:51:47 -08:00
Andrew Gaul 6316641557 Parse Cache-Control header from BlobMetadataParser
Previously this set a null value.  Found via S3Proxy s3-tests with
Minio.
2024-12-23 17:09:02 -05:00
Andrew Gaul 94b42fb7b9 Improve parsing of missing S3 bucket errors
Confusingly AWSError is not always parsed so retain the existing
logic.  Found via S3Proxy s3-tests with Minio.
2024-12-23 12:22:42 -05:00
Andrew Gaul 07a4ed72cc JCLOUDS-1640: Use raw query to sign S3 V2 request
This prevents errors when listing objects with % in the key names.
Found via S3Proxy AwsSdkTest.testSpecialCharacters.
2024-12-22 22:11:16 -05:00
Andrew Gaul 176d3d44a8 Allow null S3 grantee ID
Minio does not return a grantee so reversing the comparison avoids a
NullPointerException.
2024-12-22 15:29:59 -05:00
Andrew Gaul 0b2420d21c Allow empty S3 storage class when listing
Minio returns an empty element.
2024-12-22 15:22:47 -05:00
Gary Teichrow b979e15529 Added allocationId to PublicIpInstanceIdPair so that IP addresses can be tracked by that AWS concept.
Added a releaseAddressInRegionByAllocationId so that an IP address can be released by that addresses AllocationId
Modified the DescribeAddressesResponseHandler so that it can optionally take allocationId into account on a Describe
Added a use case to test allocationId
2024-10-31 08:06:55 +09:00
John Calcote ddfb2ea77f Modify S3 endpoint regex pattern to support VPC endpoints. 2024-07-27 15:09:32 +09:00
Andrew Gaul 4928a1e3bc Suppress Modernizer violation 2024-05-12 13:57:58 +09:00
jixinchi 6670c556d7 add unit test for Filesystem BlobKey and ContainerName validator 2024-05-06 22:37:53 +09:00
jixinchi 03aeccffdf fix grammar error in sentence from contains to contain 2024-05-06 22:37:53 +09:00
jixinchi b0819e0ef5 more validation for containerName and blobKey to avoid access escape 2024-05-06 22:37:53 +09:00
Andrew Gaul d733401ce7 Set version to 2.6.1-SNAPSHOT 2024-04-24 20:29:39 +09:00
Andrew Gaul da1bc06f9e JCLOUDS-1635: Add COOL and COLD to Tier
The former replaces INFREQUENT.  References gaul/s3proxy#625.
2024-04-20 17:31:52 +09:00
Maksim_Hadalau 0688553087 JCLOUDS-1631: fix AWSRequestAuthorizeSignatureV4 when prefix contains special chars 2024-04-14 17:37:51 +09:00
Andrew Gaul 107741f786 JCLOUDS-1629: Upgrade to Guice 7.0.0
This also changes from javax to jakarta annotations.
2024-02-26 15:27:29 +09:00
Andrew Gaul b5e4e1d0fd JCLOUDS-1627: Upgrade to Jakarta packages
This resolves an issue with newer Guice versions.
2024-02-23 18:04:48 +09:00
Mickael LANOE 6455fd8518 Parse out of order ListBucket response elements
Currently, jclouds assumes that the <ID> must occur before the
<DisplayName> tag. If the XML body does not adhere to this order, the
parser throws a NullPointerException.

Scaleway is a cloud provider that does not adhere to this order and
returns the <DisplayName> tag before the <ID> tag. The patch changes the
parser to not depend on the order of the tags.

See commit 04feb8f848 for a similar fix
2023-12-10 00:21:47 +09:00
Valentin 47e3022519 FilesystemStorageStrategyImpl.getBlob() for a folder return blob as type Blob (#187)
Co-authored-by: Valentin Popov <popov@mailarchiva.ru>
2023-11-11 16:37:00 -05:00
jixinchi eb1181daf5 check file exists in getContainerAccess (#185) 2023-10-12 18:18:30 +02:00
Edo Demirbilek 611b4c4a11 Adding access key auth support for openstack V3 (#183)
* Adding access key auth support for openstack V3 from an earlier commit + adding test

* added new line at the end to fix checkstyle warning
2023-09-04 23:49:45 +02:00
Andrew Gaul db69360b5f Revert "Revert "Upgrade to snakeyaml 2.0""
This reverts commit cf4a926afe.  The
current CI failure is unrelated to this dependency.
2023-06-14 20:16:28 -07:00
Andrew Gaul cf4a926afe Revert "Upgrade to snakeyaml 2.0"
This reverts commit f82e94c337.  This
break CI due to an unexpected Java version mismatch.
2023-05-10 21:30:27 +09:00
Andrew Gaul f82e94c337 Upgrade to snakeyaml 2.0
This has some API changes.  Closes #169.
2023-04-16 16:43:36 +09:00
Andrew Gaul 12de6ef74d Atomically replace objects in filesystem putBlob
Fixes gaul/s3proxy#490.  This fixes a regression from
41ce90ec36.  Continue to support
Windows logic although it is unclear if this is necessary.
2023-01-24 14:44:53 +09:00
Andrew Gaul 62632c9db6 JCLOUDS-1371: Optimize filesystem delimiter
populateBlobKeysInContainer will no longer recurse when the delimiter
matches "/".  This makes listing deep hierarchies with a delimiter
faster.  Note that the general LocalBlobStore handling is still
required for the general cases.  This requires removing a bogus test
case.  References gaul/s3proxy#473.
2023-01-24 14:44:34 +09:00
Andrew Gaul e478dd5452 JCLOUDS-1371: JCLOUDS-1488: optimize fs prefix
This reduces the number of stat calls required when prefix is deep in the
filesystem hierarchy.  Further optimizations to delimiter are possible.
References gaul/s3proxy#473.
2023-01-22 18:31:09 +09:00
dependabot[bot] b754e177fe Bump snakeyaml from 1.31 to 1.32 in /apis/byon
---
updated-dependencies:
- dependency-name: org.yaml:snakeyaml
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>
2022-12-15 12:40:10 +09:00
Jonathan Leitschuh b282b5cbfe vuln-fix: Temporary File Information Disclosure
This fixes temporary file information disclosure vulnerability due to the use
of the vulnerable `File.createTempFile()` method. The vulnerability is fixed by
using the `Files.createTempFile()` method which sets the correct posix permissions.

Weakness: CWE-377: Insecure Temporary File
Severity: Medium
CVSSS: 5.5
Detection: CodeQL & OpenRewrite (https://public.moderne.io/recipes/org.openrewrite.java.security.SecureTempFileCreation)

Reported-by: Jonathan Leitschuh <Jonathan.Leitschuh@gmail.com>
Signed-off-by: Jonathan Leitschuh <Jonathan.Leitschuh@gmail.com>

Bug-tracker: https://github.com/JLLeitschuh/security-research/issues/18


Co-authored-by: Moderne <team@moderne.io>
2022-11-20 21:31:45 +09:00
dependabot[bot] b098cceaf9 Bump snakeyaml from 1.26 to 1.31 in /apis/byon (#154)
Bumps [snakeyaml](https://bitbucket.org/snakeyaml/snakeyaml) from 1.26 to 1.31.
- [Commits](https://bitbucket.org/snakeyaml/snakeyaml/branches/compare/snakeyaml-1.31..snakeyaml-1.26)

---
updated-dependencies:
- dependency-name: org.yaml:snakeyaml
  dependency-type: direct:production
...

Signed-off-by: dependabot[bot] <support@github.com>

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2022-09-15 13:16:09 +02:00
Andrew Gaul 5111923566 Specify missing DataProviders
Uncovered by newer versions of testng.
2022-08-03 21:24:12 +09:00
Andrew Gaul 2b217fb2bb Annotate public non-test methods
Newer versions of TestNG try to run these.
2022-08-03 21:24:12 +09:00
Andrew Gaul 65e16c97f5 Annotate test methods as singleThreaded
Newer versions of testng deprecate sequential.
2022-08-03 21:24:12 +09:00
Andrew Gaul 16926b0bb7 Upgrade to assertj 3.23.1
Enabled by requiring Java 8.  Also fix some minor API breakage.
2022-07-31 17:19:05 +09:00
Andrew Gaul 36f351cd18 Next development version 2.6.0-SNAPSHOT 2022-03-26 18:30:06 +09:00
ramahin 5fad7fa895 JCLOUDS-1599 - Add support for GLACIER_IR storage class 2022-03-09 09:06:13 +09:00
Andrew Gaul 468b126dd8 JCLOUDS-1594: Allow overriding S3 signer
Previously s3 always used v2 and aws-s3 always used v4.  Now s3
defaults to v2 and can override to v4.  Note that this does not change
BlobRequestSigner.
2022-01-12 22:24:45 +09:00
SATYANAN-ANAND c95ddff020 JCLOUDS-1591: Fix NPE in ClientCredentialsClaims 2021-12-27 16:26:28 +09:00
Andrew Gaul 3bbb0b446a JCLOUDS-1590: Promote glacier to core 2021-12-18 00:11:40 +09:00
Andrew Gaul afa92c7478 Merge remote-tracking branch 'jclouds-labs-aws-local/promote-glacier-moved' into promoted-glacier 2021-12-17 13:55:10 +09:00
Andrew Gaul 66ef18c6ae JCLOUDS-1589: Upgrade to log4j 2.16.0
This addresses a critical CVE:

https://logging.apache.org/log4j/2.x/security.html
2021-12-17 13:33:38 +09:00
Andrew Gaul dbd8eb1dab JCLOUDS-1589: Upgrade to log4j 2.16.0
This addresses a critical CVE:

https://logging.apache.org/log4j/2.x/security.html
2021-12-16 23:56:09 +09:00
Andrew Gaul b0592c5afa Next development version 2.5.0-SNAPSHOT 2021-09-19 08:59:59 +09:00
Andrew Gaul e8e78689e6 Next development version 2.4.0-SNAPSHOT 2021-09-19 08:58:25 +09:00