From 94f55f572e45457a35079f839bd78429138cef5c Mon Sep 17 00:00:00 2001 From: Marko Grujic Date: Wed, 4 Dec 2024 13:40:17 +0100 Subject: [PATCH] Expose opendal S3 options for anonymous access --- crates/iceberg/src/io/storage_s3.rs | 18 +++++++++++++++++- 1 file changed, 17 insertions(+), 1 deletion(-) diff --git a/crates/iceberg/src/io/storage_s3.rs b/crates/iceberg/src/io/storage_s3.rs index 60e97ab457..969903b5d7 100644 --- a/crates/iceberg/src/io/storage_s3.rs +++ b/crates/iceberg/src/io/storage_s3.rs @@ -58,6 +58,11 @@ pub const S3_ASSUME_ROLE_ARN: &str = "client.assume-role.arn"; pub const S3_ASSUME_ROLE_EXTERNAL_ID: &str = "client.assume-role.external-id"; /// Optional session name used to assume an IAM role. pub const S3_ASSUME_ROLE_SESSION_NAME: &str = "client.assume-role.session-name"; +/// Option to skip signing request (e.g. for public buckets/folders) +pub const S3_ALLOW_ANONYMOUS: &str = "s3.allow-anonymous"; +/// Option to skip loading the credential from EC2 metadata (typically used in conjunction with +/// `S3_ALLOW_ANONYMOUS`) +pub const S3_DISABLE_EC2_METADATA: &str = "s3.disable-ec2-metadata"; /// Parse iceberg props to s3 config. pub(crate) fn s3_config_parse(mut m: HashMap) -> Result { @@ -81,7 +86,7 @@ pub(crate) fn s3_config_parse(mut m: HashMap) -> Result) -> Result