Struct google_api_proto::google::storagetransfer::v1::AwsS3Data
source · pub struct AwsS3Data {
pub bucket_name: String,
pub aws_access_key: Option<AwsAccessKey>,
pub path: String,
pub role_arn: String,
pub cloudfront_domain: String,
pub credentials_secret: String,
pub private_network: Option<PrivateNetwork>,
}
Expand description
An AwsS3Data resource can be a data source, but not a data sink. In an AwsS3Data resource, an object’s name is the S3 object’s key name.
Fields§
§bucket_name: String
Required. S3 Bucket name (see Creating a bucket).
aws_access_key: Option<AwsAccessKey>
Input only. AWS access key used to sign the API requests to the AWS S3 bucket. Permissions on the bucket must be granted to the access ID of the AWS access key.
For information on our data retention policy for user credentials, see User credentials.
path: String
Root path to transfer objects.
Must be an empty string or full path name that ends with a ‘/’. This field is treated as an object prefix. As such, it should generally not begin with a ‘/’.
role_arn: String
The Amazon Resource Name (ARN) of the role to support temporary
credentials via AssumeRoleWithWebIdentity
. For more information about
ARNs, see IAM
ARNs.
When a role ARN is provided, Transfer Service fetches temporary
credentials for the session using a AssumeRoleWithWebIdentity
call for
the provided role using the
[GoogleServiceAccount][google.storagetransfer.v1.GoogleServiceAccount] for
this project.
cloudfront_domain: String
Optional. The CloudFront distribution domain name pointing to this bucket, to use when fetching.
See Transfer from S3 via CloudFront for more information.
Format: <https://{id}.cloudfront.net
> or any valid custom domain. Must
begin with <https://
.>
credentials_secret: String
Optional. The Resource name of a secret in Secret Manager.
AWS credentials must be stored in Secret Manager in JSON format:
{ “access_key_id”: “ACCESS_KEY_ID”, “secret_access_key”: “SECRET_ACCESS_KEY” }
[GoogleServiceAccount][google.storagetransfer.v1.GoogleServiceAccount] must
be granted roles/secretmanager.secretAccessor
for the resource.
See [Configure access to a source: Amazon S3] (https://cloud.google.com/storage-transfer/docs/source-amazon-s3#secret_manager) for more information.
If credentials_secret
is specified, do not specify
[role_arn][google.storagetransfer.v1.AwsS3Data.role_arn] or
[aws_access_key][google.storagetransfer.v1.AwsS3Data.aws_access_key].
Format: projects/{project_number}/secrets/{secret_name}
private_network: Option<PrivateNetwork>
Trait Implementations§
source§impl Message for AwsS3Data
impl Message for AwsS3Data
source§fn encoded_len(&self) -> usize
fn encoded_len(&self) -> usize
source§fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
fn encode(&self, buf: &mut impl BufMut) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
fn encode_length_delimited(
&self,
buf: &mut impl BufMut,
) -> Result<(), EncodeError>where
Self: Sized,
source§fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
fn encode_length_delimited_to_vec(&self) -> Vec<u8>where
Self: Sized,
source§fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
fn decode_length_delimited(buf: impl Buf) -> Result<Self, DecodeError>where
Self: Default,
source§fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
. Read moresource§fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
fn merge_length_delimited(&mut self, buf: impl Buf) -> Result<(), DecodeError>where
Self: Sized,
self
.source§impl PartialEq for AwsS3Data
impl PartialEq for AwsS3Data
impl StructuralPartialEq for AwsS3Data
Auto Trait Implementations§
impl Freeze for AwsS3Data
impl RefUnwindSafe for AwsS3Data
impl Send for AwsS3Data
impl Sync for AwsS3Data
impl Unpin for AwsS3Data
impl UnwindSafe for AwsS3Data
Blanket Implementations§
source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
§impl<T> Instrument for T
impl<T> Instrument for T
§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
source§impl<T> IntoRequest<T> for T
impl<T> IntoRequest<T> for T
source§fn into_request(self) -> Request<T>
fn into_request(self) -> Request<T>
T
in a tonic::Request