aws-sdk-datasync 1.136.0 → 1.137.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 8128c756ee86fb84a21d9d8309cd7f663297143c86d2ecd6f734f1edf15bd45b
4
- data.tar.gz: bb2d7b944a333528ede95e44a89d912dd6289a56085e356c6e7db8cadfe9405a
3
+ metadata.gz: cf4d644731181160600c86c58338ba497252bf70d97eede4e062163081538ddf
4
+ data.tar.gz: 10766e871f6df3689b7f15b4833e783d4353c44f175207cd0fe1aa7fd2049e05
5
5
  SHA512:
6
- metadata.gz: 2c577d206c91c107bf8aa6d28e009c836b9a6924170b1a353b9597d24bbd7a22ebc8e9f5b3c58c1b9ad27d34e8e797007bff91a00a1b3ae2c986109688097cf6
7
- data.tar.gz: 37d97c0d08a8f8b0cdcaf7afa16608d90f8d2c7a0317c530d0b7db139e7dca0e5e15a0770402cf45d2e1b9e3cfd5803c332dc49bf11bfa545be1bd706010e119
6
+ metadata.gz: cf7504491a903b43a49487d4c76b11f41baf599d568512cee477f44e5a719a94827f2bf3f1d90d36905144edbf680540c26bbee2857df2735d8ed32b26516311
7
+ data.tar.gz: ddfb60a470427e1f7c01c0dd17bd0deabd3ec1b3734102c5ce0d76e996beacfe88e3d0407ab705264c53398bb7977336ef10ad667340ccd9e9ece8e206e634e1
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.137.0 (2026-11-05)
5
+ ------------------
6
+
7
+ * Feature - Adds support for federated identity on Azure Blob Storage and object storage locations, enabling DataSync to authenticate to Azure and Google Cloud Storage using Workload Identity Federation (WIF) over OpenID Connect (OIDC) instead of stored long-lived credentials.
8
+
4
9
  1.136.0 (2026-11-04)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.136.0
1
+ 1.137.0
@@ -647,7 +647,7 @@ module Aws::DataSync
647
647
  # @option params [required, String] :authentication_type
648
648
  # Specifies the authentication method DataSync uses to access your Azure
649
649
  # Blob Storage. DataSync can access blob storage using a shared access
650
- # signature (SAS).
650
+ # signature (SAS) or an OpenID Connect (OIDC) token.
651
651
  #
652
652
  # @option params [Types::AzureBlobSasConfiguration] :sas_configuration
653
653
  # Specifies the SAS configuration that allows DataSync to access your
@@ -660,6 +660,12 @@ module Aws::DataSync
660
660
  #
661
661
  # </note>
662
662
  #
663
+ # @option params [Types::AzureFederatedIdentityConfig] :federated_identity
664
+ # Specifies the federated identity configuration that allows DataSync to
665
+ # access your Azure Blob Storage using an OpenID Connect (OIDC) token
666
+ # instead of a shared access signature (SAS). Provide either
667
+ # `FederatedIdentity` or `SasConfiguration`, but not both.
668
+ #
663
669
  # @option params [String] :blob_type
664
670
  # Specifies the type of blob that you want your objects or files to be
665
671
  # when transferring them into Azure Blob Storage. Currently, DataSync
@@ -761,10 +767,17 @@ module Aws::DataSync
761
767
  #
762
768
  # resp = client.create_location_azure_blob({
763
769
  # container_url: "AzureBlobContainerUrl", # required
764
- # authentication_type: "SAS", # required, accepts SAS, NONE
770
+ # authentication_type: "SAS", # required, accepts SAS, NONE, OIDC
765
771
  # sas_configuration: {
766
772
  # token: "AzureBlobSasToken", # required
767
773
  # },
774
+ # federated_identity: {
775
+ # aws_iam_role: "IamRoleArn",
776
+ # azure_oidc: {
777
+ # tenant_id: "AzureGuidString", # required
778
+ # client_id: "AzureGuidString", # required
779
+ # },
780
+ # },
768
781
  # blob_type: "BLOCK", # accepts BLOCK
769
782
  # access_tier: "HOT", # accepts HOT, COOL, ARCHIVE
770
783
  # subdirectory: "AzureBlobSubdirectory",
@@ -1683,6 +1696,13 @@ module Aws::DataSync
1683
1696
  #
1684
1697
  # </note>
1685
1698
  #
1699
+ # @option params [Types::ObjectStorageFederatedIdentityConfig] :federated_identity
1700
+ # Specifies the federated identity configuration that allows DataSync to
1701
+ # access your object storage using an OpenID Connect (OIDC) token
1702
+ # instead of a long-term access key and secret key. Provide either
1703
+ # `FederatedIdentity` or the `AccessKey`/`SecretKey` credentials, but
1704
+ # not both.
1705
+ #
1686
1706
  # @option params [Array<String>] :agent_arns
1687
1707
  # (Optional) Specifies the Amazon Resource Names (ARNs) of the DataSync
1688
1708
  # agents that can connect with your object storage system. If you are
@@ -1784,6 +1804,17 @@ module Aws::DataSync
1784
1804
  # bucket_name: "ObjectStorageBucketName", # required
1785
1805
  # access_key: "ObjectStorageAccessKey",
1786
1806
  # secret_key: "ObjectStorageSecretKey",
1807
+ # federated_identity: {
1808
+ # aws_iam_role: "IamRoleArn",
1809
+ # external_identity: {
1810
+ # google_oidc: {
1811
+ # project_name: "ProjectNameString", # required
1812
+ # project_number: "ProjectNumberString", # required
1813
+ # identity_pool_name: "GoogleIdentityFederationResourceString", # required
1814
+ # identity_provider_name: "GoogleIdentityFederationResourceString", # required
1815
+ # },
1816
+ # },
1817
+ # },
1787
1818
  # agent_arns: ["AgentArn"],
1788
1819
  # tags: [
1789
1820
  # {
@@ -2268,9 +2299,7 @@ module Aws::DataSync
2268
2299
  # higher performance than Basic mode. Enhanced mode tasks optimize the
2269
2300
  # data transfer process by listing, preparing, transferring, and
2270
2301
  # verifying data in parallel. Enhanced mode is currently available for
2271
- # transfers between Amazon S3 locations, transfers between Azure Blob
2272
- # and Amazon S3 without an agent, and transfers between other clouds
2273
- # and Amazon S3 without an agent.
2302
+ # all transfers except those that use Amazon S3 on Outposts.
2274
2303
  #
2275
2304
  # <note markdown="1"> To create an Enhanced mode task, the IAM role that you use to call
2276
2305
  # the `CreateTask` operation must have the
@@ -2538,6 +2567,7 @@ module Aws::DataSync
2538
2567
  # * {Types::DescribeLocationAzureBlobResponse#location_arn #location_arn} => String
2539
2568
  # * {Types::DescribeLocationAzureBlobResponse#location_uri #location_uri} => String
2540
2569
  # * {Types::DescribeLocationAzureBlobResponse#authentication_type #authentication_type} => String
2570
+ # * {Types::DescribeLocationAzureBlobResponse#federated_identity #federated_identity} => Types::AzureFederatedIdentityConfig
2541
2571
  # * {Types::DescribeLocationAzureBlobResponse#blob_type #blob_type} => String
2542
2572
  # * {Types::DescribeLocationAzureBlobResponse#access_tier #access_tier} => String
2543
2573
  # * {Types::DescribeLocationAzureBlobResponse#agent_arns #agent_arns} => Array&lt;String&gt;
@@ -2556,7 +2586,10 @@ module Aws::DataSync
2556
2586
  #
2557
2587
  # resp.location_arn #=> String
2558
2588
  # resp.location_uri #=> String
2559
- # resp.authentication_type #=> String, one of "SAS", "NONE"
2589
+ # resp.authentication_type #=> String, one of "SAS", "NONE", "OIDC"
2590
+ # resp.federated_identity.aws_iam_role #=> String
2591
+ # resp.federated_identity.azure_oidc.tenant_id #=> String
2592
+ # resp.federated_identity.azure_oidc.client_id #=> String
2560
2593
  # resp.blob_type #=> String, one of "BLOCK"
2561
2594
  # resp.access_tier #=> String, one of "HOT", "COOL", "ARCHIVE"
2562
2595
  # resp.agent_arns #=> Array
@@ -2931,6 +2964,7 @@ module Aws::DataSync
2931
2964
  # * {Types::DescribeLocationObjectStorageResponse#location_arn #location_arn} => String
2932
2965
  # * {Types::DescribeLocationObjectStorageResponse#location_uri #location_uri} => String
2933
2966
  # * {Types::DescribeLocationObjectStorageResponse#access_key #access_key} => String
2967
+ # * {Types::DescribeLocationObjectStorageResponse#federated_identity #federated_identity} => Types::ObjectStorageFederatedIdentityConfig
2934
2968
  # * {Types::DescribeLocationObjectStorageResponse#server_port #server_port} => Integer
2935
2969
  # * {Types::DescribeLocationObjectStorageResponse#server_protocol #server_protocol} => String
2936
2970
  # * {Types::DescribeLocationObjectStorageResponse#agent_arns #agent_arns} => Array&lt;String&gt;
@@ -2951,6 +2985,11 @@ module Aws::DataSync
2951
2985
  # resp.location_arn #=> String
2952
2986
  # resp.location_uri #=> String
2953
2987
  # resp.access_key #=> String
2988
+ # resp.federated_identity.aws_iam_role #=> String
2989
+ # resp.federated_identity.external_identity.google_oidc.project_name #=> String
2990
+ # resp.federated_identity.external_identity.google_oidc.project_number #=> String
2991
+ # resp.federated_identity.external_identity.google_oidc.identity_pool_name #=> String
2992
+ # resp.federated_identity.external_identity.google_oidc.identity_provider_name #=> String
2954
2993
  # resp.server_port #=> Integer
2955
2994
  # resp.server_protocol #=> String, one of "HTTPS", "HTTP"
2956
2995
  # resp.agent_arns #=> Array
@@ -3348,19 +3387,6 @@ module Aws::DataSync
3348
3387
  # response contains a marker that you can specify in your next request
3349
3388
  # to fetch the next page of agents.
3350
3389
  #
3351
- # `ListAgents` is eventually consistent. This means the result of
3352
- # running the operation might not reflect that you just created or
3353
- # deleted an agent. For example, if you create an agent with
3354
- # [CreateAgent][1] and then immediately run `ListAgents`, that agent
3355
- # might not show up in the list right away. In situations like this, you
3356
- # can always confirm whether an agent has been created (or deleted) by
3357
- # using [DescribeAgent][2].
3358
- #
3359
- #
3360
- #
3361
- # [1]: https://docs.aws.amazon.com/datasync/latest/userguide/API_CreateAgent.html
3362
- # [2]: https://docs.aws.amazon.com/datasync/latest/userguide/API_DescribeAgent.html
3363
- #
3364
3390
  # @option params [Integer] :max_results
3365
3391
  # Specifies the maximum number of DataSync agents to list in a response.
3366
3392
  # By default, a response shows a maximum of 100 agents.
@@ -3901,12 +3927,18 @@ module Aws::DataSync
3901
3927
  # @option params [String] :authentication_type
3902
3928
  # Specifies the authentication method DataSync uses to access your Azure
3903
3929
  # Blob Storage. DataSync can access blob storage using a shared access
3904
- # signature (SAS).
3930
+ # signature (SAS) or an OpenID Connect (OIDC) token.
3905
3931
  #
3906
3932
  # @option params [Types::AzureBlobSasConfiguration] :sas_configuration
3907
3933
  # Specifies the SAS configuration that allows DataSync to access your
3908
3934
  # Azure Blob Storage.
3909
3935
  #
3936
+ # @option params [Types::AzureFederatedIdentityConfig] :federated_identity
3937
+ # Specifies the federated identity configuration that allows DataSync to
3938
+ # access your Azure Blob Storage using an OpenID Connect (OIDC) token
3939
+ # instead of a shared access signature (SAS). Provide either
3940
+ # `FederatedIdentity` or `SasConfiguration`, but not both.
3941
+ #
3910
3942
  # @option params [String] :blob_type
3911
3943
  # Specifies the type of blob that you want your objects or files to be
3912
3944
  # when transferring them into Azure Blob Storage. Currently, DataSync
@@ -3965,10 +3997,17 @@ module Aws::DataSync
3965
3997
  # resp = client.update_location_azure_blob({
3966
3998
  # location_arn: "LocationArn", # required
3967
3999
  # subdirectory: "AzureBlobSubdirectory",
3968
- # authentication_type: "SAS", # accepts SAS, NONE
4000
+ # authentication_type: "SAS", # accepts SAS, NONE, OIDC
3969
4001
  # sas_configuration: {
3970
4002
  # token: "AzureBlobSasToken", # required
3971
4003
  # },
4004
+ # federated_identity: {
4005
+ # aws_iam_role: "IamRoleArn",
4006
+ # azure_oidc: {
4007
+ # tenant_id: "AzureGuidString", # required
4008
+ # client_id: "AzureGuidString", # required
4009
+ # },
4010
+ # },
3972
4011
  # blob_type: "BLOCK", # accepts BLOCK
3973
4012
  # access_tier: "HOT", # accepts HOT, COOL, ARCHIVE
3974
4013
  # agent_arns: ["AgentArn"],
@@ -4585,6 +4624,13 @@ module Aws::DataSync
4585
4624
  #
4586
4625
  # </note>
4587
4626
  #
4627
+ # @option params [Types::ObjectStorageFederatedIdentityConfig] :federated_identity
4628
+ # Specifies the federated identity configuration that allows DataSync to
4629
+ # access your object storage using an OpenID Connect (OIDC) token
4630
+ # instead of a long-term access key and secret key. Provide either
4631
+ # `FederatedIdentity` or the `AccessKey`/`SecretKey` credentials, but
4632
+ # not both.
4633
+ #
4588
4634
  # @option params [Array<String>] :agent_arns
4589
4635
  # (Optional) Specifies the Amazon Resource Names (ARNs) of the DataSync
4590
4636
  # agents that can connect with your object storage system. If you are
@@ -4649,6 +4695,17 @@ module Aws::DataSync
4649
4695
  # server_hostname: "ServerHostname",
4650
4696
  # access_key: "ObjectStorageAccessKey",
4651
4697
  # secret_key: "ObjectStorageSecretKey",
4698
+ # federated_identity: {
4699
+ # aws_iam_role: "IamRoleArn",
4700
+ # external_identity: {
4701
+ # google_oidc: {
4702
+ # project_name: "ProjectNameString", # required
4703
+ # project_number: "ProjectNumberString", # required
4704
+ # identity_pool_name: "GoogleIdentityFederationResourceString", # required
4705
+ # identity_provider_name: "GoogleIdentityFederationResourceString", # required
4706
+ # },
4707
+ # },
4708
+ # },
4652
4709
  # agent_arns: ["AgentArn"],
4653
4710
  # server_certificate: "data",
4654
4711
  # cmk_secret_config: {
@@ -5203,7 +5260,7 @@ module Aws::DataSync
5203
5260
  tracer: tracer
5204
5261
  )
5205
5262
  context[:gem_name] = 'aws-sdk-datasync'
5206
- context[:gem_version] = '1.136.0'
5263
+ context[:gem_version] = '1.137.0'
5207
5264
  Seahorse::Client::Request.new(handlers, context)
5208
5265
  end
5209
5266
 
@@ -29,6 +29,9 @@ module Aws::DataSync
29
29
  AzureBlobSasToken = Shapes::StringShape.new(name: 'AzureBlobSasToken')
30
30
  AzureBlobSubdirectory = Shapes::StringShape.new(name: 'AzureBlobSubdirectory')
31
31
  AzureBlobType = Shapes::StringShape.new(name: 'AzureBlobType')
32
+ AzureFederatedIdentityConfig = Shapes::StructureShape.new(name: 'AzureFederatedIdentityConfig')
33
+ AzureGuidString = Shapes::StringShape.new(name: 'AzureGuidString')
34
+ AzureOidcConfig = Shapes::StructureShape.new(name: 'AzureOidcConfig')
32
35
  BytesPerSecond = Shapes::IntegerShape.new(name: 'BytesPerSecond')
33
36
  CancelTaskExecutionRequest = Shapes::StructureShape.new(name: 'CancelTaskExecutionRequest')
34
37
  CancelTaskExecutionResponse = Shapes::StructureShape.new(name: 'CancelTaskExecutionResponse')
@@ -124,6 +127,8 @@ module Aws::DataSync
124
127
  FsxUpdateProtocolSmb = Shapes::StructureShape.new(name: 'FsxUpdateProtocolSmb')
125
128
  FsxWindowsSubdirectory = Shapes::StringShape.new(name: 'FsxWindowsSubdirectory')
126
129
  Gid = Shapes::StringShape.new(name: 'Gid')
130
+ GoogleIdentityFederationResourceString = Shapes::StringShape.new(name: 'GoogleIdentityFederationResourceString')
131
+ GoogleOidcConfig = Shapes::StructureShape.new(name: 'GoogleOidcConfig')
127
132
  HdfsAuthenticationType = Shapes::StringShape.new(name: 'HdfsAuthenticationType')
128
133
  HdfsBlockSize = Shapes::IntegerShape.new(name: 'HdfsBlockSize')
129
134
  HdfsDataTransferProtection = Shapes::StringShape.new(name: 'HdfsDataTransferProtection')
@@ -180,6 +185,8 @@ module Aws::DataSync
180
185
  ObjectStorageAccessKey = Shapes::StringShape.new(name: 'ObjectStorageAccessKey')
181
186
  ObjectStorageBucketName = Shapes::StringShape.new(name: 'ObjectStorageBucketName')
182
187
  ObjectStorageCertificate = Shapes::BlobShape.new(name: 'ObjectStorageCertificate')
188
+ ObjectStorageExternalIdentityConfig = Shapes::StructureShape.new(name: 'ObjectStorageExternalIdentityConfig')
189
+ ObjectStorageFederatedIdentityConfig = Shapes::StructureShape.new(name: 'ObjectStorageFederatedIdentityConfig')
183
190
  ObjectStorageSecretKey = Shapes::StringShape.new(name: 'ObjectStorageSecretKey')
184
191
  ObjectStorageServerPort = Shapes::IntegerShape.new(name: 'ObjectStorageServerPort')
185
192
  ObjectStorageServerProtocol = Shapes::StringShape.new(name: 'ObjectStorageServerProtocol')
@@ -198,6 +205,8 @@ module Aws::DataSync
198
205
  PreserveDeletedFiles = Shapes::StringShape.new(name: 'PreserveDeletedFiles')
199
206
  PreserveDevices = Shapes::StringShape.new(name: 'PreserveDevices')
200
207
  PrivateLinkConfig = Shapes::StructureShape.new(name: 'PrivateLinkConfig')
208
+ ProjectNameString = Shapes::StringShape.new(name: 'ProjectNameString')
209
+ ProjectNumberString = Shapes::StringShape.new(name: 'ProjectNumberString')
201
210
  QopConfiguration = Shapes::StructureShape.new(name: 'QopConfiguration')
202
211
  ReportDestination = Shapes::StructureShape.new(name: 'ReportDestination')
203
212
  ReportDestinationS3 = Shapes::StructureShape.new(name: 'ReportDestinationS3')
@@ -314,6 +323,14 @@ module Aws::DataSync
314
323
  AzureBlobSasConfiguration.add_member(:token, Shapes::ShapeRef.new(shape: AzureBlobSasToken, required: true, location_name: "Token"))
315
324
  AzureBlobSasConfiguration.struct_class = Types::AzureBlobSasConfiguration
316
325
 
326
+ AzureFederatedIdentityConfig.add_member(:aws_iam_role, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "AwsIamRole"))
327
+ AzureFederatedIdentityConfig.add_member(:azure_oidc, Shapes::ShapeRef.new(shape: AzureOidcConfig, location_name: "AzureOidc"))
328
+ AzureFederatedIdentityConfig.struct_class = Types::AzureFederatedIdentityConfig
329
+
330
+ AzureOidcConfig.add_member(:tenant_id, Shapes::ShapeRef.new(shape: AzureGuidString, required: true, location_name: "TenantId"))
331
+ AzureOidcConfig.add_member(:client_id, Shapes::ShapeRef.new(shape: AzureGuidString, required: true, location_name: "ClientId"))
332
+ AzureOidcConfig.struct_class = Types::AzureOidcConfig
333
+
317
334
  CancelTaskExecutionRequest.add_member(:task_execution_arn, Shapes::ShapeRef.new(shape: TaskExecutionArn, required: true, location_name: "TaskExecutionArn"))
318
335
  CancelTaskExecutionRequest.struct_class = Types::CancelTaskExecutionRequest
319
336
 
@@ -337,6 +354,7 @@ module Aws::DataSync
337
354
  CreateLocationAzureBlobRequest.add_member(:container_url, Shapes::ShapeRef.new(shape: AzureBlobContainerUrl, required: true, location_name: "ContainerUrl"))
338
355
  CreateLocationAzureBlobRequest.add_member(:authentication_type, Shapes::ShapeRef.new(shape: AzureBlobAuthenticationType, required: true, location_name: "AuthenticationType"))
339
356
  CreateLocationAzureBlobRequest.add_member(:sas_configuration, Shapes::ShapeRef.new(shape: AzureBlobSasConfiguration, location_name: "SasConfiguration"))
357
+ CreateLocationAzureBlobRequest.add_member(:federated_identity, Shapes::ShapeRef.new(shape: AzureFederatedIdentityConfig, location_name: "FederatedIdentity"))
340
358
  CreateLocationAzureBlobRequest.add_member(:blob_type, Shapes::ShapeRef.new(shape: AzureBlobType, location_name: "BlobType"))
341
359
  CreateLocationAzureBlobRequest.add_member(:access_tier, Shapes::ShapeRef.new(shape: AzureAccessTier, location_name: "AccessTier"))
342
360
  CreateLocationAzureBlobRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: AzureBlobSubdirectory, location_name: "Subdirectory"))
@@ -441,6 +459,7 @@ module Aws::DataSync
441
459
  CreateLocationObjectStorageRequest.add_member(:bucket_name, Shapes::ShapeRef.new(shape: ObjectStorageBucketName, required: true, location_name: "BucketName"))
442
460
  CreateLocationObjectStorageRequest.add_member(:access_key, Shapes::ShapeRef.new(shape: ObjectStorageAccessKey, location_name: "AccessKey"))
443
461
  CreateLocationObjectStorageRequest.add_member(:secret_key, Shapes::ShapeRef.new(shape: ObjectStorageSecretKey, location_name: "SecretKey"))
462
+ CreateLocationObjectStorageRequest.add_member(:federated_identity, Shapes::ShapeRef.new(shape: ObjectStorageFederatedIdentityConfig, location_name: "FederatedIdentity"))
444
463
  CreateLocationObjectStorageRequest.add_member(:agent_arns, Shapes::ShapeRef.new(shape: AgentArnList, location_name: "AgentArns"))
445
464
  CreateLocationObjectStorageRequest.add_member(:tags, Shapes::ShapeRef.new(shape: InputTagList, location_name: "Tags"))
446
465
  CreateLocationObjectStorageRequest.add_member(:server_certificate, Shapes::ShapeRef.new(shape: ObjectStorageCertificate, location_name: "ServerCertificate"))
@@ -537,6 +556,7 @@ module Aws::DataSync
537
556
  DescribeLocationAzureBlobResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
538
557
  DescribeLocationAzureBlobResponse.add_member(:location_uri, Shapes::ShapeRef.new(shape: LocationUri, location_name: "LocationUri"))
539
558
  DescribeLocationAzureBlobResponse.add_member(:authentication_type, Shapes::ShapeRef.new(shape: AzureBlobAuthenticationType, location_name: "AuthenticationType"))
559
+ DescribeLocationAzureBlobResponse.add_member(:federated_identity, Shapes::ShapeRef.new(shape: AzureFederatedIdentityConfig, location_name: "FederatedIdentity"))
540
560
  DescribeLocationAzureBlobResponse.add_member(:blob_type, Shapes::ShapeRef.new(shape: AzureBlobType, location_name: "BlobType"))
541
561
  DescribeLocationAzureBlobResponse.add_member(:access_tier, Shapes::ShapeRef.new(shape: AzureAccessTier, location_name: "AccessTier"))
542
562
  DescribeLocationAzureBlobResponse.add_member(:agent_arns, Shapes::ShapeRef.new(shape: AgentArnList, location_name: "AgentArns"))
@@ -639,6 +659,7 @@ module Aws::DataSync
639
659
  DescribeLocationObjectStorageResponse.add_member(:location_arn, Shapes::ShapeRef.new(shape: LocationArn, location_name: "LocationArn"))
640
660
  DescribeLocationObjectStorageResponse.add_member(:location_uri, Shapes::ShapeRef.new(shape: LocationUri, location_name: "LocationUri"))
641
661
  DescribeLocationObjectStorageResponse.add_member(:access_key, Shapes::ShapeRef.new(shape: ObjectStorageAccessKey, location_name: "AccessKey"))
662
+ DescribeLocationObjectStorageResponse.add_member(:federated_identity, Shapes::ShapeRef.new(shape: ObjectStorageFederatedIdentityConfig, location_name: "FederatedIdentity"))
642
663
  DescribeLocationObjectStorageResponse.add_member(:server_port, Shapes::ShapeRef.new(shape: ObjectStorageServerPort, location_name: "ServerPort"))
643
664
  DescribeLocationObjectStorageResponse.add_member(:server_protocol, Shapes::ShapeRef.new(shape: ObjectStorageServerProtocol, location_name: "ServerProtocol"))
644
665
  DescribeLocationObjectStorageResponse.add_member(:agent_arns, Shapes::ShapeRef.new(shape: AgentArnList, location_name: "AgentArns"))
@@ -789,6 +810,12 @@ module Aws::DataSync
789
810
  FsxUpdateProtocolSmb.add_member(:custom_secret_config, Shapes::ShapeRef.new(shape: CustomSecretConfig, location_name: "CustomSecretConfig"))
790
811
  FsxUpdateProtocolSmb.struct_class = Types::FsxUpdateProtocolSmb
791
812
 
813
+ GoogleOidcConfig.add_member(:project_name, Shapes::ShapeRef.new(shape: ProjectNameString, required: true, location_name: "ProjectName"))
814
+ GoogleOidcConfig.add_member(:project_number, Shapes::ShapeRef.new(shape: ProjectNumberString, required: true, location_name: "ProjectNumber"))
815
+ GoogleOidcConfig.add_member(:identity_pool_name, Shapes::ShapeRef.new(shape: GoogleIdentityFederationResourceString, required: true, location_name: "IdentityPoolName"))
816
+ GoogleOidcConfig.add_member(:identity_provider_name, Shapes::ShapeRef.new(shape: GoogleIdentityFederationResourceString, required: true, location_name: "IdentityProviderName"))
817
+ GoogleOidcConfig.struct_class = Types::GoogleOidcConfig
818
+
792
819
  HdfsNameNode.add_member(:hostname, Shapes::ShapeRef.new(shape: HdfsServerHostname, required: true, location_name: "Hostname"))
793
820
  HdfsNameNode.add_member(:port, Shapes::ShapeRef.new(shape: HdfsServerPort, required: true, location_name: "Port"))
794
821
  HdfsNameNode.struct_class = Types::HdfsNameNode
@@ -874,6 +901,13 @@ module Aws::DataSync
874
901
  NfsMountOptions.add_member(:version, Shapes::ShapeRef.new(shape: NfsVersion, location_name: "Version"))
875
902
  NfsMountOptions.struct_class = Types::NfsMountOptions
876
903
 
904
+ ObjectStorageExternalIdentityConfig.add_member(:google_oidc, Shapes::ShapeRef.new(shape: GoogleOidcConfig, location_name: "GoogleOidc"))
905
+ ObjectStorageExternalIdentityConfig.struct_class = Types::ObjectStorageExternalIdentityConfig
906
+
907
+ ObjectStorageFederatedIdentityConfig.add_member(:aws_iam_role, Shapes::ShapeRef.new(shape: IamRoleArn, location_name: "AwsIamRole"))
908
+ ObjectStorageFederatedIdentityConfig.add_member(:external_identity, Shapes::ShapeRef.new(shape: ObjectStorageExternalIdentityConfig, location_name: "ExternalIdentity"))
909
+ ObjectStorageFederatedIdentityConfig.struct_class = Types::ObjectStorageFederatedIdentityConfig
910
+
877
911
  OnPremConfig.add_member(:agent_arns, Shapes::ShapeRef.new(shape: AgentArnList, required: true, location_name: "AgentArns"))
878
912
  OnPremConfig.struct_class = Types::OnPremConfig
879
913
 
@@ -1063,6 +1097,7 @@ module Aws::DataSync
1063
1097
  UpdateLocationAzureBlobRequest.add_member(:subdirectory, Shapes::ShapeRef.new(shape: AzureBlobSubdirectory, location_name: "Subdirectory"))
1064
1098
  UpdateLocationAzureBlobRequest.add_member(:authentication_type, Shapes::ShapeRef.new(shape: AzureBlobAuthenticationType, location_name: "AuthenticationType"))
1065
1099
  UpdateLocationAzureBlobRequest.add_member(:sas_configuration, Shapes::ShapeRef.new(shape: AzureBlobSasConfiguration, location_name: "SasConfiguration"))
1100
+ UpdateLocationAzureBlobRequest.add_member(:federated_identity, Shapes::ShapeRef.new(shape: AzureFederatedIdentityConfig, location_name: "FederatedIdentity"))
1066
1101
  UpdateLocationAzureBlobRequest.add_member(:blob_type, Shapes::ShapeRef.new(shape: AzureBlobType, location_name: "BlobType"))
1067
1102
  UpdateLocationAzureBlobRequest.add_member(:access_tier, Shapes::ShapeRef.new(shape: AzureAccessTier, location_name: "AccessTier"))
1068
1103
  UpdateLocationAzureBlobRequest.add_member(:agent_arns, Shapes::ShapeRef.new(shape: AgentArnList, location_name: "AgentArns"))
@@ -1147,6 +1182,7 @@ module Aws::DataSync
1147
1182
  UpdateLocationObjectStorageRequest.add_member(:server_hostname, Shapes::ShapeRef.new(shape: ServerHostname, location_name: "ServerHostname"))
1148
1183
  UpdateLocationObjectStorageRequest.add_member(:access_key, Shapes::ShapeRef.new(shape: ObjectStorageAccessKey, location_name: "AccessKey"))
1149
1184
  UpdateLocationObjectStorageRequest.add_member(:secret_key, Shapes::ShapeRef.new(shape: ObjectStorageSecretKey, location_name: "SecretKey"))
1185
+ UpdateLocationObjectStorageRequest.add_member(:federated_identity, Shapes::ShapeRef.new(shape: ObjectStorageFederatedIdentityConfig, location_name: "FederatedIdentity"))
1150
1186
  UpdateLocationObjectStorageRequest.add_member(:agent_arns, Shapes::ShapeRef.new(shape: AgentArnList, location_name: "AgentArns"))
1151
1187
  UpdateLocationObjectStorageRequest.add_member(:server_certificate, Shapes::ShapeRef.new(shape: ObjectStorageCertificate, location_name: "ServerCertificate"))
1152
1188
  UpdateLocationObjectStorageRequest.add_member(:cmk_secret_config, Shapes::ShapeRef.new(shape: CmkSecretConfig, location_name: "CmkSecretConfig"))
@@ -85,6 +85,59 @@ module Aws::DataSync
85
85
  include Aws::Structure
86
86
  end
87
87
 
88
+ # Specifies federated identity parameters that allow DataSync to obtain
89
+ # an OpenID Connect token for access to customer Azure Blob Storage. The
90
+ # token allows for temporary, short-term access to the storage. DataSync
91
+ # automatically refreshes the token to assure uninterrupted access to
92
+ # the storage.
93
+ #
94
+ # <note markdown="1"> Federated identity parameters are an alternative to the
95
+ # `SasConfiguration` credentials that are expected to be valid long-term
96
+ # (e.g. at least for the duration of DataSync task execution). Do not
97
+ # specify federated identity and the SAS configuration for the same
98
+ # Azure Blob location.
99
+ #
100
+ # </note>
101
+ #
102
+ # @!attribute [rw] aws_iam_role
103
+ # Specifies the ARN for an Amazon Web Services role that allows
104
+ # DataSync to invoke STS GetWebIdentityToken API on behalf of the
105
+ # customer account and to obtain Amazon Web Services STS JWT (web
106
+ # token).
107
+ # @return [String]
108
+ #
109
+ # @!attribute [rw] azure_oidc
110
+ # External identity parameters for Azure Blob Storage.
111
+ # @return [Types::AzureOidcConfig]
112
+ #
113
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/AzureFederatedIdentityConfig AWS API Documentation
114
+ #
115
+ class AzureFederatedIdentityConfig < Struct.new(
116
+ :aws_iam_role,
117
+ :azure_oidc)
118
+ SENSITIVE = []
119
+ include Aws::Structure
120
+ end
121
+
122
+ # External identity parameters for Azure Blob Storage.
123
+ #
124
+ # @!attribute [rw] tenant_id
125
+ # Azure tenant ID string.
126
+ # @return [String]
127
+ #
128
+ # @!attribute [rw] client_id
129
+ # Azure client ID string.
130
+ # @return [String]
131
+ #
132
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/AzureOidcConfig AWS API Documentation
133
+ #
134
+ class AzureOidcConfig < Struct.new(
135
+ :tenant_id,
136
+ :client_id)
137
+ SENSITIVE = []
138
+ include Aws::Structure
139
+ end
140
+
88
141
  # CancelTaskExecutionRequest
89
142
  #
90
143
  # @!attribute [rw] task_execution_arn
@@ -248,7 +301,7 @@ module Aws::DataSync
248
301
  # @!attribute [rw] authentication_type
249
302
  # Specifies the authentication method DataSync uses to access your
250
303
  # Azure Blob Storage. DataSync can access blob storage using a shared
251
- # access signature (SAS).
304
+ # access signature (SAS) or an OpenID Connect (OIDC) token.
252
305
  # @return [String]
253
306
  #
254
307
  # @!attribute [rw] sas_configuration
@@ -263,6 +316,13 @@ module Aws::DataSync
263
316
  # </note>
264
317
  # @return [Types::AzureBlobSasConfiguration]
265
318
  #
319
+ # @!attribute [rw] federated_identity
320
+ # Specifies the federated identity configuration that allows DataSync
321
+ # to access your Azure Blob Storage using an OpenID Connect (OIDC)
322
+ # token instead of a shared access signature (SAS). Provide either
323
+ # `FederatedIdentity` or `SasConfiguration`, but not both.
324
+ # @return [Types::AzureFederatedIdentityConfig]
325
+ #
266
326
  # @!attribute [rw] blob_type
267
327
  # Specifies the type of blob that you want your objects or files to be
268
328
  # when transferring them into Azure Blob Storage. Currently, DataSync
@@ -370,6 +430,7 @@ module Aws::DataSync
370
430
  :container_url,
371
431
  :authentication_type,
372
432
  :sas_configuration,
433
+ :federated_identity,
373
434
  :blob_type,
374
435
  :access_tier,
375
436
  :subdirectory,
@@ -1127,6 +1188,14 @@ module Aws::DataSync
1127
1188
  # </note>
1128
1189
  # @return [String]
1129
1190
  #
1191
+ # @!attribute [rw] federated_identity
1192
+ # Specifies the federated identity configuration that allows DataSync
1193
+ # to access your object storage using an OpenID Connect (OIDC) token
1194
+ # instead of a long-term access key and secret key. Provide either
1195
+ # `FederatedIdentity` or the `AccessKey`/`SecretKey` credentials, but
1196
+ # not both.
1197
+ # @return [Types::ObjectStorageFederatedIdentityConfig]
1198
+ #
1130
1199
  # @!attribute [rw] agent_arns
1131
1200
  # (Optional) Specifies the Amazon Resource Names (ARNs) of the
1132
1201
  # DataSync agents that can connect with your object storage system. If
@@ -1230,6 +1299,7 @@ module Aws::DataSync
1230
1299
  :bucket_name,
1231
1300
  :access_key,
1232
1301
  :secret_key,
1302
+ :federated_identity,
1233
1303
  :agent_arns,
1234
1304
  :tags,
1235
1305
  :server_certificate,
@@ -1688,9 +1758,7 @@ module Aws::DataSync
1688
1758
  # higher performance than Basic mode. Enhanced mode tasks optimize
1689
1759
  # the data transfer process by listing, preparing, transferring, and
1690
1760
  # verifying data in parallel. Enhanced mode is currently available
1691
- # for transfers between Amazon S3 locations, transfers between Azure
1692
- # Blob and Amazon S3 without an agent, and transfers between other
1693
- # clouds and Amazon S3 without an agent.
1761
+ # for all transfers except those that use Amazon S3 on Outposts.
1694
1762
  #
1695
1763
  # <note markdown="1"> To create an Enhanced mode task, the IAM role that you use to call
1696
1764
  # the `CreateTask` operation must have the
@@ -1950,9 +2018,14 @@ module Aws::DataSync
1950
2018
  # @!attribute [rw] authentication_type
1951
2019
  # The authentication method DataSync uses to access your Azure Blob
1952
2020
  # Storage. DataSync can access blob storage using a shared access
1953
- # signature (SAS).
2021
+ # signature (SAS) or an OpenID Connect (OIDC) token.
1954
2022
  # @return [String]
1955
2023
  #
2024
+ # @!attribute [rw] federated_identity
2025
+ # The federated identity configuration that DataSync uses to access
2026
+ # your Azure Blob Storage using an OpenID Connect (OIDC) token.
2027
+ # @return [Types::AzureFederatedIdentityConfig]
2028
+ #
1956
2029
  # @!attribute [rw] blob_type
1957
2030
  # The type of blob that you want your objects or files to be when
1958
2031
  # transferring them into Azure Blob Storage. Currently, DataSync only
@@ -2010,6 +2083,7 @@ module Aws::DataSync
2010
2083
  :location_arn,
2011
2084
  :location_uri,
2012
2085
  :authentication_type,
2086
+ :federated_identity,
2013
2087
  :blob_type,
2014
2088
  :access_tier,
2015
2089
  :agent_arns,
@@ -2528,6 +2602,11 @@ module Aws::DataSync
2528
2602
  # with the object storage system.
2529
2603
  # @return [String]
2530
2604
  #
2605
+ # @!attribute [rw] federated_identity
2606
+ # The federated identity configuration that DataSync uses to access
2607
+ # your object storage using an OpenID Connect (OIDC) token.
2608
+ # @return [Types::ObjectStorageFederatedIdentityConfig]
2609
+ #
2531
2610
  # @!attribute [rw] server_port
2532
2611
  # The port that your object storage server accepts inbound network
2533
2612
  # traffic on (for example, port 443).
@@ -2581,6 +2660,7 @@ module Aws::DataSync
2581
2660
  :location_arn,
2582
2661
  :location_uri,
2583
2662
  :access_key,
2663
+ :federated_identity,
2584
2664
  :server_port,
2585
2665
  :server_protocol,
2586
2666
  :agent_arns,
@@ -3838,6 +3918,35 @@ module Aws::DataSync
3838
3918
  include Aws::Structure
3839
3919
  end
3840
3920
 
3921
+ # External identity parameters for Google Cloud Storage.
3922
+ #
3923
+ # @!attribute [rw] project_name
3924
+ # Human-readable project name (e.g. "my-project").
3925
+ # @return [String]
3926
+ #
3927
+ # @!attribute [rw] project_number
3928
+ # Numeric project ID as a string (e.g. "123456789").
3929
+ # @return [String]
3930
+ #
3931
+ # @!attribute [rw] identity_pool_name
3932
+ # Human-readable pool name (e.g. "my-pool").
3933
+ # @return [String]
3934
+ #
3935
+ # @!attribute [rw] identity_provider_name
3936
+ # Human-readable provider name (e.g. "my-oidc-provider").
3937
+ # @return [String]
3938
+ #
3939
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/GoogleOidcConfig AWS API Documentation
3940
+ #
3941
+ class GoogleOidcConfig < Struct.new(
3942
+ :project_name,
3943
+ :project_number,
3944
+ :identity_pool_name,
3945
+ :identity_provider_name)
3946
+ SENSITIVE = []
3947
+ include Aws::Structure
3948
+ end
3949
+
3841
3950
  # The NameNode of the Hadoop Distributed File System (HDFS). The
3842
3951
  # NameNode manages the file system's namespace. The NameNode performs
3843
3952
  # operations such as opening, closing, and renaming files and
@@ -4334,6 +4443,58 @@ module Aws::DataSync
4334
4443
  include Aws::Structure
4335
4444
  end
4336
4445
 
4446
+ # Specifies cloud-provider-specific external identity parameters used
4447
+ # when exchanging the Amazon Web Services web token for an OpenID
4448
+ # Connect token at the object storage provider.
4449
+ #
4450
+ # @!attribute [rw] google_oidc
4451
+ # External identity parameters for Google Cloud Storage.
4452
+ # @return [Types::GoogleOidcConfig]
4453
+ #
4454
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ObjectStorageExternalIdentityConfig AWS API Documentation
4455
+ #
4456
+ class ObjectStorageExternalIdentityConfig < Struct.new(
4457
+ :google_oidc)
4458
+ SENSITIVE = []
4459
+ include Aws::Structure
4460
+ end
4461
+
4462
+ # Specifies federated identity parameters that allow DataSync to obtain
4463
+ # OpenID Connect token for access to customer object storage. The token
4464
+ # allows for temporary, short-term access to the storage. DataSync
4465
+ # automatically refreshes the token to assure uninterrupted access to
4466
+ # the storage.
4467
+ #
4468
+ # <note markdown="1"> Federated identity parameters are an alternative to the
4469
+ # `AccessKey`/`SecretKey` credentials that are expected to be valid
4470
+ # long-term (e.g. at least for the duration of DataSync task execution).
4471
+ # Do not specify federated identity and the key parameters for the same
4472
+ # object storage location.
4473
+ #
4474
+ # </note>
4475
+ #
4476
+ # @!attribute [rw] aws_iam_role
4477
+ # Specifies the ARN for an Amazon Web Services role that allows
4478
+ # DataSync to invoke STS GetWebIdentityToken API on behalf of the
4479
+ # customer account and to obtain Amazon Web Services STS JWT (web
4480
+ # token).
4481
+ # @return [String]
4482
+ #
4483
+ # @!attribute [rw] external_identity
4484
+ # Specifies cloud-provider-specific external identity parameters used
4485
+ # when exchanging the Amazon Web Services web token for an OpenID
4486
+ # Connect token at the object storage provider.
4487
+ # @return [Types::ObjectStorageExternalIdentityConfig]
4488
+ #
4489
+ # @see http://docs.aws.amazon.com/goto/WebAPI/datasync-2018-11-09/ObjectStorageFederatedIdentityConfig AWS API Documentation
4490
+ #
4491
+ class ObjectStorageFederatedIdentityConfig < Struct.new(
4492
+ :aws_iam_role,
4493
+ :external_identity)
4494
+ SENSITIVE = []
4495
+ include Aws::Structure
4496
+ end
4497
+
4337
4498
  # The DataSync agents that can connect to your Network File System (NFS)
4338
4499
  # file server.
4339
4500
  #
@@ -5937,7 +6098,7 @@ module Aws::DataSync
5937
6098
  # @!attribute [rw] authentication_type
5938
6099
  # Specifies the authentication method DataSync uses to access your
5939
6100
  # Azure Blob Storage. DataSync can access blob storage using a shared
5940
- # access signature (SAS).
6101
+ # access signature (SAS) or an OpenID Connect (OIDC) token.
5941
6102
  # @return [String]
5942
6103
  #
5943
6104
  # @!attribute [rw] sas_configuration
@@ -5945,6 +6106,13 @@ module Aws::DataSync
5945
6106
  # Azure Blob Storage.
5946
6107
  # @return [Types::AzureBlobSasConfiguration]
5947
6108
  #
6109
+ # @!attribute [rw] federated_identity
6110
+ # Specifies the federated identity configuration that allows DataSync
6111
+ # to access your Azure Blob Storage using an OpenID Connect (OIDC)
6112
+ # token instead of a shared access signature (SAS). Provide either
6113
+ # `FederatedIdentity` or `SasConfiguration`, but not both.
6114
+ # @return [Types::AzureFederatedIdentityConfig]
6115
+ #
5948
6116
  # @!attribute [rw] blob_type
5949
6117
  # Specifies the type of blob that you want your objects or files to be
5950
6118
  # when transferring them into Azure Blob Storage. Currently, DataSync
@@ -6008,6 +6176,7 @@ module Aws::DataSync
6008
6176
  :subdirectory,
6009
6177
  :authentication_type,
6010
6178
  :sas_configuration,
6179
+ :federated_identity,
6011
6180
  :blob_type,
6012
6181
  :access_tier,
6013
6182
  :agent_arns,
@@ -6473,6 +6642,14 @@ module Aws::DataSync
6473
6642
  # </note>
6474
6643
  # @return [String]
6475
6644
  #
6645
+ # @!attribute [rw] federated_identity
6646
+ # Specifies the federated identity configuration that allows DataSync
6647
+ # to access your object storage using an OpenID Connect (OIDC) token
6648
+ # instead of a long-term access key and secret key. Provide either
6649
+ # `FederatedIdentity` or the `AccessKey`/`SecretKey` credentials, but
6650
+ # not both.
6651
+ # @return [Types::ObjectStorageFederatedIdentityConfig]
6652
+ #
6476
6653
  # @!attribute [rw] agent_arns
6477
6654
  # (Optional) Specifies the Amazon Resource Names (ARNs) of the
6478
6655
  # DataSync agents that can connect with your object storage system. If
@@ -6539,6 +6716,7 @@ module Aws::DataSync
6539
6716
  :server_hostname,
6540
6717
  :access_key,
6541
6718
  :secret_key,
6719
+ :federated_identity,
6542
6720
  :agent_arns,
6543
6721
  :server_certificate,
6544
6722
  :cmk_secret_config,
@@ -54,7 +54,7 @@ module Aws::DataSync
54
54
  autoload :EndpointProvider, 'aws-sdk-datasync/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-datasync/endpoints'
56
56
 
57
- GEM_VERSION = '1.136.0'
57
+ GEM_VERSION = '1.137.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -116,10 +116,17 @@ module Aws
116
116
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/DataSync/Client.html#create_location_azure_blob-instance_method
117
117
  def create_location_azure_blob: (
118
118
  container_url: ::String,
119
- authentication_type: ("SAS" | "NONE"),
119
+ authentication_type: ("SAS" | "NONE" | "OIDC"),
120
120
  ?sas_configuration: {
121
121
  token: ::String
122
122
  },
123
+ ?federated_identity: {
124
+ aws_iam_role: ::String?,
125
+ azure_oidc: {
126
+ tenant_id: ::String,
127
+ client_id: ::String
128
+ }?
129
+ },
123
130
  ?blob_type: ("BLOCK"),
124
131
  ?access_tier: ("HOT" | "COOL" | "ARCHIVE"),
125
132
  ?subdirectory: ::String,
@@ -329,6 +336,7 @@ module Aws
329
336
  bucket_name: ::String,
330
337
  ?access_key: ::String,
331
338
  ?secret_key: ::String,
339
+ ?federated_identity: Params::object_storage_federated_identity_config,
332
340
  ?agent_arns: Array[::String],
333
341
  ?tags: Array[
334
342
  {
@@ -494,7 +502,8 @@ module Aws
494
502
  include ::Seahorse::Client::_ResponseSuccess[Types::DescribeLocationAzureBlobResponse]
495
503
  def location_arn: () -> ::String
496
504
  def location_uri: () -> ::String
497
- def authentication_type: () -> ("SAS" | "NONE")
505
+ def authentication_type: () -> ("SAS" | "NONE" | "OIDC")
506
+ def federated_identity: () -> Types::AzureFederatedIdentityConfig
498
507
  def blob_type: () -> ("BLOCK")
499
508
  def access_tier: () -> ("HOT" | "COOL" | "ARCHIVE")
500
509
  def agent_arns: () -> ::Array[::String]
@@ -629,6 +638,7 @@ module Aws
629
638
  def location_arn: () -> ::String
630
639
  def location_uri: () -> ::String
631
640
  def access_key: () -> ::String
641
+ def federated_identity: () -> Types::ObjectStorageFederatedIdentityConfig
632
642
  def server_port: () -> ::Integer
633
643
  def server_protocol: () -> ("HTTPS" | "HTTP")
634
644
  def agent_arns: () -> ::Array[::String]
@@ -903,10 +913,17 @@ module Aws
903
913
  def update_location_azure_blob: (
904
914
  location_arn: ::String,
905
915
  ?subdirectory: ::String,
906
- ?authentication_type: ("SAS" | "NONE"),
916
+ ?authentication_type: ("SAS" | "NONE" | "OIDC"),
907
917
  ?sas_configuration: {
908
918
  token: ::String
909
919
  },
920
+ ?federated_identity: {
921
+ aws_iam_role: ::String?,
922
+ azure_oidc: {
923
+ tenant_id: ::String,
924
+ client_id: ::String
925
+ }?
926
+ },
910
927
  ?blob_type: ("BLOCK"),
911
928
  ?access_tier: ("HOT" | "COOL" | "ARCHIVE"),
912
929
  ?agent_arns: Array[::String],
@@ -1075,6 +1092,7 @@ module Aws
1075
1092
  ?server_hostname: ::String,
1076
1093
  ?access_key: ::String,
1077
1094
  ?secret_key: ::String,
1095
+ ?federated_identity: Params::object_storage_federated_identity_config,
1078
1096
  ?agent_arns: Array[::String],
1079
1097
  ?server_certificate: ::String,
1080
1098
  ?cmk_secret_config: {
data/sig/params.rbs CHANGED
@@ -37,6 +37,20 @@ module Aws
37
37
  smb: Params::fsx_protocol_smb?
38
38
  }
39
39
 
40
+ type object_storage_external_identity_config = {
41
+ google_oidc: {
42
+ project_name: ::String,
43
+ project_number: ::String,
44
+ identity_pool_name: ::String,
45
+ identity_provider_name: ::String
46
+ }?
47
+ }
48
+
49
+ type object_storage_federated_identity_config = {
50
+ aws_iam_role: ::String?,
51
+ external_identity: Params::object_storage_external_identity_config?
52
+ }
53
+
40
54
  type options = {
41
55
  verify_mode: ("POINT_IN_TIME_CONSISTENT" | "ONLY_FILES_TRANSFERRED" | "NONE")?,
42
56
  overwrite_mode: ("ALWAYS" | "NEVER")?,
data/sig/types.rbs CHANGED
@@ -21,6 +21,18 @@ module Aws::DataSync
21
21
  SENSITIVE: [:token]
22
22
  end
23
23
 
24
+ class AzureFederatedIdentityConfig
25
+ attr_accessor aws_iam_role: ::String
26
+ attr_accessor azure_oidc: Types::AzureOidcConfig
27
+ SENSITIVE: []
28
+ end
29
+
30
+ class AzureOidcConfig
31
+ attr_accessor tenant_id: ::String
32
+ attr_accessor client_id: ::String
33
+ SENSITIVE: []
34
+ end
35
+
24
36
  class CancelTaskExecutionRequest
25
37
  attr_accessor task_execution_arn: ::String
26
38
  SENSITIVE: []
@@ -52,8 +64,9 @@ module Aws::DataSync
52
64
 
53
65
  class CreateLocationAzureBlobRequest
54
66
  attr_accessor container_url: ::String
55
- attr_accessor authentication_type: ("SAS" | "NONE")
67
+ attr_accessor authentication_type: ("SAS" | "NONE" | "OIDC")
56
68
  attr_accessor sas_configuration: Types::AzureBlobSasConfiguration
69
+ attr_accessor federated_identity: Types::AzureFederatedIdentityConfig
57
70
  attr_accessor blob_type: ("BLOCK")
58
71
  attr_accessor access_tier: ("HOT" | "COOL" | "ARCHIVE")
59
72
  attr_accessor subdirectory: ::String
@@ -190,6 +203,7 @@ module Aws::DataSync
190
203
  attr_accessor bucket_name: ::String
191
204
  attr_accessor access_key: ::String
192
205
  attr_accessor secret_key: ::String
206
+ attr_accessor federated_identity: Types::ObjectStorageFederatedIdentityConfig
193
207
  attr_accessor agent_arns: ::Array[::String]
194
208
  attr_accessor tags: ::Array[Types::TagListEntry]
195
209
  attr_accessor server_certificate: ::String
@@ -318,7 +332,8 @@ module Aws::DataSync
318
332
  class DescribeLocationAzureBlobResponse
319
333
  attr_accessor location_arn: ::String
320
334
  attr_accessor location_uri: ::String
321
- attr_accessor authentication_type: ("SAS" | "NONE")
335
+ attr_accessor authentication_type: ("SAS" | "NONE" | "OIDC")
336
+ attr_accessor federated_identity: Types::AzureFederatedIdentityConfig
322
337
  attr_accessor blob_type: ("BLOCK")
323
338
  attr_accessor access_tier: ("HOT" | "COOL" | "ARCHIVE")
324
339
  attr_accessor agent_arns: ::Array[::String]
@@ -453,6 +468,7 @@ module Aws::DataSync
453
468
  attr_accessor location_arn: ::String
454
469
  attr_accessor location_uri: ::String
455
470
  attr_accessor access_key: ::String
471
+ attr_accessor federated_identity: Types::ObjectStorageFederatedIdentityConfig
456
472
  attr_accessor server_port: ::Integer
457
473
  attr_accessor server_protocol: ("HTTPS" | "HTTP")
458
474
  attr_accessor agent_arns: ::Array[::String]
@@ -624,6 +640,14 @@ module Aws::DataSync
624
640
  SENSITIVE: [:password]
625
641
  end
626
642
 
643
+ class GoogleOidcConfig
644
+ attr_accessor project_name: ::String
645
+ attr_accessor project_number: ::String
646
+ attr_accessor identity_pool_name: ::String
647
+ attr_accessor identity_provider_name: ::String
648
+ SENSITIVE: []
649
+ end
650
+
627
651
  class HdfsNameNode
628
652
  attr_accessor hostname: ::String
629
653
  attr_accessor port: ::Integer
@@ -737,6 +761,17 @@ module Aws::DataSync
737
761
  SENSITIVE: []
738
762
  end
739
763
 
764
+ class ObjectStorageExternalIdentityConfig
765
+ attr_accessor google_oidc: Types::GoogleOidcConfig
766
+ SENSITIVE: []
767
+ end
768
+
769
+ class ObjectStorageFederatedIdentityConfig
770
+ attr_accessor aws_iam_role: ::String
771
+ attr_accessor external_identity: Types::ObjectStorageExternalIdentityConfig
772
+ SENSITIVE: []
773
+ end
774
+
740
775
  class OnPremConfig
741
776
  attr_accessor agent_arns: ::Array[::String]
742
777
  SENSITIVE: []
@@ -974,8 +1009,9 @@ module Aws::DataSync
974
1009
  class UpdateLocationAzureBlobRequest
975
1010
  attr_accessor location_arn: ::String
976
1011
  attr_accessor subdirectory: ::String
977
- attr_accessor authentication_type: ("SAS" | "NONE")
1012
+ attr_accessor authentication_type: ("SAS" | "NONE" | "OIDC")
978
1013
  attr_accessor sas_configuration: Types::AzureBlobSasConfiguration
1014
+ attr_accessor federated_identity: Types::AzureFederatedIdentityConfig
979
1015
  attr_accessor blob_type: ("BLOCK")
980
1016
  attr_accessor access_tier: ("HOT" | "COOL" | "ARCHIVE")
981
1017
  attr_accessor agent_arns: ::Array[::String]
@@ -1084,6 +1120,7 @@ module Aws::DataSync
1084
1120
  attr_accessor server_hostname: ::String
1085
1121
  attr_accessor access_key: ::String
1086
1122
  attr_accessor secret_key: ::String
1123
+ attr_accessor federated_identity: Types::ObjectStorageFederatedIdentityConfig
1087
1124
  attr_accessor agent_arns: ::Array[::String]
1088
1125
  attr_accessor server_certificate: ::String
1089
1126
  attr_accessor cmk_secret_config: Types::CmkSecretConfig
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-datasync
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.136.0
4
+ version: 1.137.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services