Class: Google::Apis::StoragetransferV1::AwsS3Data
- Inherits:
-
Object
- Object
- Google::Apis::StoragetransferV1::AwsS3Data
- Includes:
- Core::Hashable, Core::JsonObjectSupport
- Defined in:
- lib/google/apis/storagetransfer_v1/classes.rb,
lib/google/apis/storagetransfer_v1/representations.rb,
lib/google/apis/storagetransfer_v1/representations.rb
Overview
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.
Instance Attribute Summary collapse
-
#aws_access_key ⇒ Google::Apis::StoragetransferV1::AwsAccessKey
AWS access key (see AWS Security Credentials).
-
#bucket_name ⇒ String
Required.
-
#cloudfront_domain ⇒ String
Optional.
-
#credentials_secret ⇒ String
Optional.
-
#managed_private_network ⇒ Boolean
(also: #managed_private_network?)
Egress bytes over a Google-managed private network.
-
#path ⇒ String
Root path to transfer objects.
-
#private_network_service ⇒ String
Service Directory Service to be used as the endpoint for transfers from a custom VPC.
-
#role_arn ⇒ String
The Amazon Resource Name (ARN) of the role to support temporary credentials via
AssumeRoleWithWebIdentity.
Instance Method Summary collapse
-
#initialize(**args) ⇒ AwsS3Data
constructor
A new instance of AwsS3Data.
-
#update!(**args) ⇒ Object
Update properties of this object.
Constructor Details
#initialize(**args) ⇒ AwsS3Data
Returns a new instance of AwsS3Data.
208 209 210 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 208 def initialize(**args) update!(**args) end |
Instance Attribute Details
#aws_access_key ⇒ Google::Apis::StoragetransferV1::AwsAccessKey
AWS access key (see AWS Security Credentials). For information on our data
retention policy for user credentials, see User credentials.
Corresponds to the JSON property awsAccessKey
149 150 151 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 149 def aws_access_key @aws_access_key end |
#bucket_name ⇒ String
Required. S3 Bucket name (see Creating a bucket).
Corresponds to the JSON property bucketName
155 156 157 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 155 def bucket_name @bucket_name end |
#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://.
Corresponds to the JSON property cloudfrontDomain
163 164 165 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 163 def cloudfront_domain @cloudfront_domain end |
#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 must be granted roles/secretmanager.secretAccessor for
the resource. See Configure access to a source: Amazon S3 for more
information. If credentials_secret is specified, do not specify role_arn or
aws_access_key. Format: projects/project_number/secrets/secret_name`
Corresponds to the JSON propertycredentialsSecret`
175 176 177 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 175 def credentials_secret @credentials_secret end |
#managed_private_network ⇒ Boolean Also known as: managed_private_network?
Egress bytes over a Google-managed private network. This network is shared
between other users of Storage Transfer Service.
Corresponds to the JSON property managedPrivateNetwork
181 182 183 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 181 def managed_private_network @managed_private_network end |
#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 '/'.
Corresponds to the JSON property path
189 190 191 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 189 def path @path end |
#private_network_service ⇒ String
Service Directory Service to be used as the endpoint for transfers from a
custom VPC. Format: projects/project_id/locations/location/namespaces/
namespace/services/service`
Corresponds to the JSON propertyprivateNetworkService`
196 197 198 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 196 def private_network_service @private_network_service end |
#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 for this project.
Corresponds to the JSON property roleArn
206 207 208 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 206 def role_arn @role_arn end |
Instance Method Details
#update!(**args) ⇒ Object
Update properties of this object
213 214 215 216 217 218 219 220 221 222 |
# File 'lib/google/apis/storagetransfer_v1/classes.rb', line 213 def update!(**args) @aws_access_key = args[:aws_access_key] if args.key?(:aws_access_key) @bucket_name = args[:bucket_name] if args.key?(:bucket_name) @cloudfront_domain = args[:cloudfront_domain] if args.key?(:cloudfront_domain) @credentials_secret = args[:credentials_secret] if args.key?(:credentials_secret) @managed_private_network = args[:managed_private_network] if args.key?(:managed_private_network) @path = args[:path] if args.key?(:path) @private_network_service = args[:private_network_service] if args.key?(:private_network_service) @role_arn = args[:role_arn] if args.key?(:role_arn) end |