aws-sdk-ram 1.83.0 → 1.84.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: 9afb645e2330b8011fd36edf2041ac2b6106dfc20390d8028df625e9f47cad01
4
- data.tar.gz: d60e4a18df5dbaae26deb120a0f4a0c976d5842b6566b7444a912677957e724e
3
+ metadata.gz: 8bf4332c2dd4526fdeff84516c68405f442e06eefe43524491408049ffd251ec
4
+ data.tar.gz: ac7c3e64baedfedd6db20c138c61f62edf028dd1c9b1687df5960feec4ec60d5
5
5
  SHA512:
6
- metadata.gz: ae09f149abecd53672a929aa7cc56bbc7040254be7d0396cffefca8c55844da347d7213d6876157b10abbd6071b2cd11a10fd224c3f11844bc3bb7da0cf1597b
7
- data.tar.gz: ecc8feda234455c931a68525781fa24a446d6d5ccdf9f58624b979bc4400e46ff9f6cdaf2f275dd45e93131569e63446d5cf2a140af5c232586c80ae0a67ddc6
6
+ metadata.gz: 27518c5d62437bf4c5ab45089baab1cdc473e707b4e736c09d9596b344f28630bb16457937b4f208322a6184b944dfa88395d07b7468667a0036d71fd3ed22ff
7
+ data.tar.gz: a732d24cf186adc83a6013044196b197e45bd60e97dcdb5af907f3aaba6641775e2c4389858141ca9913614c66091b1fab9447d7e50337d53f93469e5e5a82e1
data/CHANGELOG.md CHANGED
@@ -1,6 +1,11 @@
1
1
  Unreleased Changes
2
2
  ------------------
3
3
 
4
+ 1.84.0 (2026-02-05)
5
+ ------------------
6
+
7
+ * Feature - Added ListSourceAssociations API. Allows RAM resource share owners to list source associations that determine which sources can access resources through service principal associations. Supports filtering by resource share ARN, source ID, source type, or status, with pagination.
8
+
4
9
  1.83.0 (2026-01-16)
5
10
  ------------------
6
11
 
data/VERSION CHANGED
@@ -1 +1 @@
1
- 1.83.0
1
+ 1.84.0
@@ -533,8 +533,8 @@ module Aws::RAM
533
533
  # resp.resource_share_invitation.resource_share_associations[0].resource_share_arn #=> String
534
534
  # resp.resource_share_invitation.resource_share_associations[0].resource_share_name #=> String
535
535
  # resp.resource_share_invitation.resource_share_associations[0].associated_entity #=> String
536
- # resp.resource_share_invitation.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
537
- # resp.resource_share_invitation.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
536
+ # resp.resource_share_invitation.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE", "SOURCE"
537
+ # resp.resource_share_invitation.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED", "SUSPENDED", "SUSPENDING", "RESTORING"
538
538
  # resp.resource_share_invitation.resource_share_associations[0].status_message #=> String
539
539
  # resp.resource_share_invitation.resource_share_associations[0].creation_time #=> Time
540
540
  # resp.resource_share_invitation.resource_share_associations[0].last_updated_time #=> Time
@@ -551,11 +551,11 @@ module Aws::RAM
551
551
  req.send_request(options)
552
552
  end
553
553
 
554
- # Adds the specified list of principals and list of resources to a
555
- # resource share. Principals that already have access to this resource
556
- # share immediately receive access to the added resources. Newly added
557
- # principals immediately receive access to the resources shared in this
558
- # resource share.
554
+ # Adds the specified list of principals, resources, and source
555
+ # constraints to a resource share. Principals that already have access
556
+ # to this resource share immediately receive access to the added
557
+ # resources. Newly added principals immediately receive access to the
558
+ # resources shared in this resource share.
559
559
  #
560
560
  # @option params [required, String] :resource_share_arn
561
561
  # Specifies the [Amazon Resource Name (ARN)][1] of the resource share
@@ -598,6 +598,8 @@ module Aws::RAM
598
598
  #
599
599
  # * An ARN of an IAM user, for example: `iam::123456789012user/username`
600
600
  #
601
+ # * A service principal name, for example: `service-id.amazonaws.com`
602
+ #
601
603
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
602
604
  # more information, see [Sharing with IAM roles and users][2] in the
603
605
  # *Resource Access Manager User Guide*.
@@ -629,8 +631,13 @@ module Aws::RAM
629
631
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
630
632
  #
631
633
  # @option params [Array<String>] :sources
632
- # Specifies from which source accounts the service principal has access
633
- # to the resources in this resource share.
634
+ # Specifies source constraints (accounts, ARNs, organization IDs, or
635
+ # organization paths) that limit when service principals can access
636
+ # resources in this resource share. When a service principal attempts to
637
+ # access a shared resource, validation is performed to ensure the
638
+ # request originates from one of the specified sources. This helps
639
+ # prevent confused deputy attacks by applying constraints on where
640
+ # service principals can access resources from.
634
641
  #
635
642
  # @return [Types::AssociateResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
636
643
  #
@@ -653,8 +660,8 @@ module Aws::RAM
653
660
  # resp.resource_share_associations[0].resource_share_arn #=> String
654
661
  # resp.resource_share_associations[0].resource_share_name #=> String
655
662
  # resp.resource_share_associations[0].associated_entity #=> String
656
- # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
657
- # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
663
+ # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE", "SOURCE"
664
+ # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED", "SUSPENDED", "SUSPENDING", "RESTORING"
658
665
  # resp.resource_share_associations[0].status_message #=> String
659
666
  # resp.resource_share_associations[0].creation_time #=> Time
660
667
  # resp.resource_share_associations[0].last_updated_time #=> Time
@@ -784,10 +791,12 @@ module Aws::RAM
784
791
  # Specifies the name of the resource type that this customer managed
785
792
  # permission applies to.
786
793
  #
787
- # The format is ` <service-code>:<resource-type> ` and is not case
794
+ # The format is ` <service-code>:<resource-type> ` and is case
788
795
  # sensitive. For example, to specify an Amazon EC2 Subnet, you can use
789
- # the string `ec2:subnet`. To see the list of valid values for this
790
- # parameter, query the ListResourceTypes operation.
796
+ # the string `ec2:Subnet`. To see the list of valid values for this
797
+ # parameter, query the ListResourceTypes operation. This value must
798
+ # match the display name of the resource (available in
799
+ # `ListResourceTypes`).
791
800
  #
792
801
  # @option params [required, String] :policy_template
793
802
  # A string in JSON format string that contains the following elements of
@@ -1002,8 +1011,9 @@ module Aws::RAM
1002
1011
 
1003
1012
  # Creates a resource share. You can provide a list of the [Amazon
1004
1013
  # Resource Names (ARNs)][1] for the resources that you want to share, a
1005
- # list of principals you want to share the resources with, and the
1006
- # permissions to grant those principals.
1014
+ # list of principals you want to share the resources with, the
1015
+ # permissions to grant those principals, and optionally source
1016
+ # constraints to enhance security for service principal sharing.
1007
1017
  #
1008
1018
  # <note markdown="1"> Sharing a resource makes it available for use by principals outside of
1009
1019
  # the Amazon Web Services account that created the resource. Sharing
@@ -1043,6 +1053,8 @@ module Aws::RAM
1043
1053
  #
1044
1054
  # * An ARN of an IAM user, for example: `iam::123456789012user/username`
1045
1055
  #
1056
+ # * A service principal name, for example: `service-id.amazonaws.com`
1057
+ #
1046
1058
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
1047
1059
  # more information, see [Sharing with IAM roles and users][2] in the
1048
1060
  # *Resource Access Manager User Guide*.
@@ -1098,8 +1110,13 @@ module Aws::RAM
1098
1110
  # [1]: https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html
1099
1111
  #
1100
1112
  # @option params [Array<String>] :sources
1101
- # Specifies from which source accounts the service principal has access
1102
- # to the resources in this resource share.
1113
+ # Specifies source constraints (accounts, ARNs, organization IDs, or
1114
+ # organization paths) that limit when service principals can access
1115
+ # resources in this resource share. When a service principal attempts to
1116
+ # access a shared resource, validation is performed to ensure the
1117
+ # request originates from one of the specified sources. This helps
1118
+ # prevent confused deputy attacks by applying constraints on where
1119
+ # service principals can access resources from.
1103
1120
  #
1104
1121
  # @return [Types::CreateResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1105
1122
  #
@@ -1349,8 +1366,8 @@ module Aws::RAM
1349
1366
  req.send_request(options)
1350
1367
  end
1351
1368
 
1352
- # Removes the specified principals or resources from participating in
1353
- # the specified resource share.
1369
+ # Removes the specified principals, resources, or source constraints
1370
+ # from participating in the specified resource share.
1354
1371
  #
1355
1372
  # @option params [required, String] :resource_share_arn
1356
1373
  # Specifies [Amazon Resource Name (ARN)][1] of the resource share that
@@ -1390,6 +1407,8 @@ module Aws::RAM
1390
1407
  #
1391
1408
  # * An ARN of an IAM user, for example: `iam::123456789012user/username`
1392
1409
  #
1410
+ # * A service principal name, for example: `service-id.amazonaws.com`
1411
+ #
1393
1412
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
1394
1413
  # more information, see [Sharing with IAM roles and users][2] in the
1395
1414
  # *Resource Access Manager User Guide*.
@@ -1421,8 +1440,11 @@ module Aws::RAM
1421
1440
  # [1]: https://wikipedia.org/wiki/Universally_unique_identifier
1422
1441
  #
1423
1442
  # @option params [Array<String>] :sources
1424
- # Specifies from which source accounts the service principal no longer
1425
- # has access to the resources in this resource share.
1443
+ # Specifies source constraints (accounts, ARNs, organization IDs, or
1444
+ # organization paths) to remove from the resource share. This enables
1445
+ # granular management of source constraints while maintaining service
1446
+ # principal associations. At least one source must remain when service
1447
+ # principals are present.
1426
1448
  #
1427
1449
  # @return [Types::DisassociateResourceShareResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
1428
1450
  #
@@ -1445,8 +1467,8 @@ module Aws::RAM
1445
1467
  # resp.resource_share_associations[0].resource_share_arn #=> String
1446
1468
  # resp.resource_share_associations[0].resource_share_name #=> String
1447
1469
  # resp.resource_share_associations[0].associated_entity #=> String
1448
- # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
1449
- # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
1470
+ # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE", "SOURCE"
1471
+ # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED", "SUSPENDED", "SUSPENDING", "RESTORING"
1450
1472
  # resp.resource_share_associations[0].status_message #=> String
1451
1473
  # resp.resource_share_associations[0].creation_time #=> Time
1452
1474
  # resp.resource_share_associations[0].last_updated_time #=> Time
@@ -1624,6 +1646,14 @@ module Aws::RAM
1624
1646
  # Retrieves the resource policies for the specified resources that you
1625
1647
  # own and have shared.
1626
1648
  #
1649
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
1650
+ # when calling a paginated operation. These operations can occasionally
1651
+ # return an empty set of results even when there are more results
1652
+ # available. The `NextToken` response parameter value is `null` *only*
1653
+ # when there are no more results to display.
1654
+ #
1655
+ # </note>
1656
+ #
1627
1657
  # @option params [required, Array<String>] :resource_arns
1628
1658
  # Specifies the [Amazon Resource Names (ARNs)][1] of the resources whose
1629
1659
  # policies you want to retrieve.
@@ -1688,6 +1718,14 @@ module Aws::RAM
1688
1718
  # Retrieves the lists of resources and principals that associated for
1689
1719
  # resource shares that you own.
1690
1720
  #
1721
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
1722
+ # when calling a paginated operation. These operations can occasionally
1723
+ # return an empty set of results even when there are more results
1724
+ # available. The `NextToken` response parameter value is `null` *only*
1725
+ # when there are no more results to display.
1726
+ #
1727
+ # </note>
1728
+ #
1691
1729
  # @option params [required, String] :association_type
1692
1730
  # Specifies whether you want to retrieve the associations that involve a
1693
1731
  # specified resource or principal.
@@ -1762,11 +1800,11 @@ module Aws::RAM
1762
1800
  # @example Request syntax with placeholder values
1763
1801
  #
1764
1802
  # resp = client.get_resource_share_associations({
1765
- # association_type: "PRINCIPAL", # required, accepts PRINCIPAL, RESOURCE
1803
+ # association_type: "PRINCIPAL", # required, accepts PRINCIPAL, RESOURCE, SOURCE
1766
1804
  # resource_share_arns: ["String"],
1767
1805
  # resource_arn: "String",
1768
1806
  # principal: "String",
1769
- # association_status: "ASSOCIATING", # accepts ASSOCIATING, ASSOCIATED, FAILED, DISASSOCIATING, DISASSOCIATED
1807
+ # association_status: "ASSOCIATING", # accepts ASSOCIATING, ASSOCIATED, FAILED, DISASSOCIATING, DISASSOCIATED, SUSPENDED, SUSPENDING, RESTORING
1770
1808
  # next_token: "String",
1771
1809
  # max_results: 1,
1772
1810
  # })
@@ -1777,8 +1815,8 @@ module Aws::RAM
1777
1815
  # resp.resource_share_associations[0].resource_share_arn #=> String
1778
1816
  # resp.resource_share_associations[0].resource_share_name #=> String
1779
1817
  # resp.resource_share_associations[0].associated_entity #=> String
1780
- # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
1781
- # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
1818
+ # resp.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE", "SOURCE"
1819
+ # resp.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED", "SUSPENDED", "SUSPENDING", "RESTORING"
1782
1820
  # resp.resource_share_associations[0].status_message #=> String
1783
1821
  # resp.resource_share_associations[0].creation_time #=> Time
1784
1822
  # resp.resource_share_associations[0].last_updated_time #=> Time
@@ -1797,6 +1835,14 @@ module Aws::RAM
1797
1835
  # Retrieves details about invitations that you have received for
1798
1836
  # resource shares.
1799
1837
  #
1838
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
1839
+ # when calling a paginated operation. These operations can occasionally
1840
+ # return an empty set of results even when there are more results
1841
+ # available. The `NextToken` response parameter value is `null` *only*
1842
+ # when there are no more results to display.
1843
+ #
1844
+ # </note>
1845
+ #
1800
1846
  # @option params [Array<String>] :resource_share_invitation_arns
1801
1847
  # Specifies the [Amazon Resource Names (ARNs)][1] of the resource share
1802
1848
  # invitations you want information about.
@@ -1863,8 +1909,8 @@ module Aws::RAM
1863
1909
  # resp.resource_share_invitations[0].resource_share_associations[0].resource_share_arn #=> String
1864
1910
  # resp.resource_share_invitations[0].resource_share_associations[0].resource_share_name #=> String
1865
1911
  # resp.resource_share_invitations[0].resource_share_associations[0].associated_entity #=> String
1866
- # resp.resource_share_invitations[0].resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
1867
- # resp.resource_share_invitations[0].resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
1912
+ # resp.resource_share_invitations[0].resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE", "SOURCE"
1913
+ # resp.resource_share_invitations[0].resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED", "SUSPENDED", "SUSPENDING", "RESTORING"
1868
1914
  # resp.resource_share_invitations[0].resource_share_associations[0].status_message #=> String
1869
1915
  # resp.resource_share_invitations[0].resource_share_associations[0].creation_time #=> Time
1870
1916
  # resp.resource_share_invitations[0].resource_share_associations[0].last_updated_time #=> Time
@@ -1884,6 +1930,14 @@ module Aws::RAM
1884
1930
  # Retrieves details about the resource shares that you own or that are
1885
1931
  # shared with you.
1886
1932
  #
1933
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
1934
+ # when calling a paginated operation. These operations can occasionally
1935
+ # return an empty set of results even when there are more results
1936
+ # available. The `NextToken` response parameter value is `null` *only*
1937
+ # when there are no more results to display.
1938
+ #
1939
+ # </note>
1940
+ #
1887
1941
  # @option params [Array<String>] :resource_share_arns
1888
1942
  # Specifies the [Amazon Resource Names (ARNs)][1] of individual resource
1889
1943
  # shares that you want information about.
@@ -2003,6 +2057,14 @@ module Aws::RAM
2003
2057
  # haven't accepted or rejected the invitation and the invitation
2004
2058
  # hasn't expired.
2005
2059
  #
2060
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2061
+ # when calling a paginated operation. These operations can occasionally
2062
+ # return an empty set of results even when there are more results
2063
+ # available. The `NextToken` response parameter value is `null` *only*
2064
+ # when there are no more results to display.
2065
+ #
2066
+ # </note>
2067
+ #
2006
2068
  # @option params [required, String] :resource_share_invitation_arn
2007
2069
  # Specifies the [Amazon Resource Name (ARN)][1] of the invitation. You
2008
2070
  # can use GetResourceShareInvitations to find the ARN of the invitation.
@@ -2089,6 +2151,14 @@ module Aws::RAM
2089
2151
  # see which resource shares use which versions of the specified managed
2090
2152
  # permission.
2091
2153
  #
2154
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2155
+ # when calling a paginated operation. These operations can occasionally
2156
+ # return an empty set of results even when there are more results
2157
+ # available. The `NextToken` response parameter value is `null` *only*
2158
+ # when there are no more results to display.
2159
+ #
2160
+ # </note>
2161
+ #
2092
2162
  # @option params [String] :permission_arn
2093
2163
  # Specifies the [Amazon Resource Name (ARN)][1] of the managed
2094
2164
  # permission.
@@ -2155,7 +2225,7 @@ module Aws::RAM
2155
2225
  # resp = client.list_permission_associations({
2156
2226
  # permission_arn: "String",
2157
2227
  # permission_version: 1,
2158
- # association_status: "ASSOCIATING", # accepts ASSOCIATING, ASSOCIATED, FAILED, DISASSOCIATING, DISASSOCIATED
2228
+ # association_status: "ASSOCIATING", # accepts ASSOCIATING, ASSOCIATED, FAILED, DISASSOCIATING, DISASSOCIATED, SUSPENDED, SUSPENDING, RESTORING
2159
2229
  # resource_type: "String",
2160
2230
  # feature_set: "CREATED_FROM_POLICY", # accepts CREATED_FROM_POLICY, PROMOTING_TO_STANDARD, STANDARD
2161
2231
  # default_version: false,
@@ -2187,6 +2257,14 @@ module Aws::RAM
2187
2257
 
2188
2258
  # Lists the available versions of the specified RAM permission.
2189
2259
  #
2260
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2261
+ # when calling a paginated operation. These operations can occasionally
2262
+ # return an empty set of results even when there are more results
2263
+ # available. The `NextToken` response parameter value is `null` *only*
2264
+ # when there are no more results to display.
2265
+ #
2266
+ # </note>
2267
+ #
2190
2268
  # @option params [required, String] :permission_arn
2191
2269
  # Specifies the [Amazon Resource Name (ARN)][1] of the RAM permission
2192
2270
  # whose versions you want to list. You can use the `permissionVersion`
@@ -2262,6 +2340,14 @@ module Aws::RAM
2262
2340
  # Retrieves a list of available RAM permissions that you can use for the
2263
2341
  # supported resource types.
2264
2342
  #
2343
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2344
+ # when calling a paginated operation. These operations can occasionally
2345
+ # return an empty set of results even when there are more results
2346
+ # available. The `NextToken` response parameter value is `null` *only*
2347
+ # when there are no more results to display.
2348
+ #
2349
+ # </note>
2350
+ #
2265
2351
  # @option params [String] :resource_type
2266
2352
  # Specifies that you want to list only those permissions that apply to
2267
2353
  # the specified resource type. This parameter is not case sensitive.
@@ -2348,6 +2434,14 @@ module Aws::RAM
2348
2434
  # Lists the principals that you are sharing resources with or that are
2349
2435
  # sharing resources with you.
2350
2436
  #
2437
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2438
+ # when calling a paginated operation. These operations can occasionally
2439
+ # return an empty set of results even when there are more results
2440
+ # available. The `NextToken` response parameter value is `null` *only*
2441
+ # when there are no more results to display.
2442
+ #
2443
+ # </note>
2444
+ #
2351
2445
  # @option params [required, String] :resource_owner
2352
2446
  # Specifies that you want to list information for only resource shares
2353
2447
  # that match the following:
@@ -2386,6 +2480,8 @@ module Aws::RAM
2386
2480
  #
2387
2481
  # * An ARN of an IAM user, for example: `iam::123456789012user/username`
2388
2482
  #
2483
+ # * A service principal name, for example: `service-id.amazonaws.com`
2484
+ #
2389
2485
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
2390
2486
  # more information, see [Sharing with IAM roles and users][2] in the
2391
2487
  # *Resource Access Manager User Guide*.
@@ -2473,6 +2569,14 @@ module Aws::RAM
2473
2569
  # Retrieves the current status of the asynchronous tasks performed by
2474
2570
  # RAM when you perform the ReplacePermissionAssociationsWork operation.
2475
2571
  #
2572
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2573
+ # when calling a paginated operation. These operations can occasionally
2574
+ # return an empty set of results even when there are more results
2575
+ # available. The `NextToken` response parameter value is `null` *only*
2576
+ # when there are no more results to display.
2577
+ #
2578
+ # </note>
2579
+ #
2476
2580
  # @option params [Array<String>] :work_ids
2477
2581
  # A list of IDs. These values come from the `id`field of the
2478
2582
  # `replacePermissionAssociationsWork`structure returned by the
@@ -2542,6 +2646,14 @@ module Aws::RAM
2542
2646
 
2543
2647
  # Lists the RAM permissions that are associated with a resource share.
2544
2648
  #
2649
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2650
+ # when calling a paginated operation. These operations can occasionally
2651
+ # return an empty set of results even when there are more results
2652
+ # available. The `NextToken` response parameter value is `null` *only*
2653
+ # when there are no more results to display.
2654
+ #
2655
+ # </note>
2656
+ #
2545
2657
  # @option params [required, String] :resource_share_arn
2546
2658
  # Specifies the [Amazon Resource Name (ARN)][1] of the resource share
2547
2659
  # for which you want to retrieve the associated permissions.
@@ -2683,6 +2795,14 @@ module Aws::RAM
2683
2795
  # Lists the resources that you added to a resource share or the
2684
2796
  # resources that are shared with you.
2685
2797
  #
2798
+ # <note markdown="1"> Always check the `NextToken` response parameter for a `null` value
2799
+ # when calling a paginated operation. These operations can occasionally
2800
+ # return an empty set of results even when there are more results
2801
+ # available. The `NextToken` response parameter value is `null` *only*
2802
+ # when there are no more results to display.
2803
+ #
2804
+ # </note>
2805
+ #
2686
2806
  # @option params [required, String] :resource_owner
2687
2807
  # Specifies that you want to list only the resource shares that match
2688
2808
  # the following:
@@ -2796,6 +2916,79 @@ module Aws::RAM
2796
2916
  req.send_request(options)
2797
2917
  end
2798
2918
 
2919
+ # Lists source associations for resource shares. Source associations
2920
+ # control which sources can be used with service principals in resource
2921
+ # shares. This operation provides visibility into source associations
2922
+ # for resource share owners.
2923
+ #
2924
+ # You can filter the results by resource share Amazon Resource Name
2925
+ # (ARN), source ID, source type, or association status. We recommend
2926
+ # using pagination to ensure that the operation returns quickly and
2927
+ # successfully.
2928
+ #
2929
+ # @option params [Array<String>] :resource_share_arns
2930
+ # The Amazon Resource Names (ARNs) of the resource shares for which you
2931
+ # want to retrieve source associations.
2932
+ #
2933
+ # @option params [String] :source_id
2934
+ # The identifier of the source for which you want to retrieve
2935
+ # associations. This can be an account ID, Amazon Resource Name (ARN),
2936
+ # organization ID, or organization path.
2937
+ #
2938
+ # @option params [String] :source_type
2939
+ # The type of source for which you want to retrieve associations.
2940
+ #
2941
+ # @option params [String] :association_status
2942
+ # The status of the source associations that you want to retrieve.
2943
+ #
2944
+ # @option params [String] :next_token
2945
+ # The pagination token that indicates the next set of results to
2946
+ # retrieve.
2947
+ #
2948
+ # @option params [Integer] :max_results
2949
+ # The maximum number of results to return in a single call. To retrieve
2950
+ # the remaining results, make another call with the returned `nextToken`
2951
+ # value.
2952
+ #
2953
+ # @return [Types::ListSourceAssociationsResponse] Returns a {Seahorse::Client::Response response} object which responds to the following methods:
2954
+ #
2955
+ # * {Types::ListSourceAssociationsResponse#source_associations #source_associations} => Array&lt;Types::AssociatedSource&gt;
2956
+ # * {Types::ListSourceAssociationsResponse#next_token #next_token} => String
2957
+ #
2958
+ # The returned {Seahorse::Client::Response response} is a pageable response and is Enumerable. For details on usage see {Aws::PageableResponse PageableResponse}.
2959
+ #
2960
+ # @example Request syntax with placeholder values
2961
+ #
2962
+ # resp = client.list_source_associations({
2963
+ # resource_share_arns: ["String"],
2964
+ # source_id: "String",
2965
+ # source_type: "String",
2966
+ # association_status: "ASSOCIATING", # accepts ASSOCIATING, ASSOCIATED, FAILED, DISASSOCIATING, DISASSOCIATED, SUSPENDED, SUSPENDING, RESTORING
2967
+ # next_token: "String",
2968
+ # max_results: 1,
2969
+ # })
2970
+ #
2971
+ # @example Response structure
2972
+ #
2973
+ # resp.source_associations #=> Array
2974
+ # resp.source_associations[0].resource_share_arn #=> String
2975
+ # resp.source_associations[0].source_id #=> String
2976
+ # resp.source_associations[0].source_type #=> String
2977
+ # resp.source_associations[0].status #=> String
2978
+ # resp.source_associations[0].last_updated_time #=> Time
2979
+ # resp.source_associations[0].creation_time #=> Time
2980
+ # resp.source_associations[0].status_message #=> String
2981
+ # resp.next_token #=> String
2982
+ #
2983
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListSourceAssociations AWS API Documentation
2984
+ #
2985
+ # @overload list_source_associations(params = {})
2986
+ # @param [Hash] params ({})
2987
+ def list_source_associations(params = {}, options = {})
2988
+ req = build_request(:list_source_associations, params)
2989
+ req.send_request(options)
2990
+ end
2991
+
2799
2992
  # When you attach a resource-based policy to a resource, RAM
2800
2993
  # automatically creates a resource share of
2801
2994
  # `featureSet`=`CREATED_FROM_POLICY` with a managed permission that has
@@ -3009,8 +3202,8 @@ module Aws::RAM
3009
3202
  # resp.resource_share_invitation.resource_share_associations[0].resource_share_arn #=> String
3010
3203
  # resp.resource_share_invitation.resource_share_associations[0].resource_share_name #=> String
3011
3204
  # resp.resource_share_invitation.resource_share_associations[0].associated_entity #=> String
3012
- # resp.resource_share_invitation.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE"
3013
- # resp.resource_share_invitation.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED"
3205
+ # resp.resource_share_invitation.resource_share_associations[0].association_type #=> String, one of "PRINCIPAL", "RESOURCE", "SOURCE"
3206
+ # resp.resource_share_invitation.resource_share_associations[0].status #=> String, one of "ASSOCIATING", "ASSOCIATED", "FAILED", "DISASSOCIATING", "DISASSOCIATED", "SUSPENDED", "SUSPENDING", "RESTORING"
3014
3207
  # resp.resource_share_invitation.resource_share_associations[0].status_message #=> String
3015
3208
  # resp.resource_share_invitation.resource_share_associations[0].creation_time #=> Time
3016
3209
  # resp.resource_share_invitation.resource_share_associations[0].last_updated_time #=> Time
@@ -3380,7 +3573,7 @@ module Aws::RAM
3380
3573
  tracer: tracer
3381
3574
  )
3382
3575
  context[:gem_name] = 'aws-sdk-ram'
3383
- context[:gem_version] = '1.83.0'
3576
+ context[:gem_version] = '1.84.0'
3384
3577
  Seahorse::Client::Request.new(handlers, context)
3385
3578
  end
3386
3579
 
@@ -22,6 +22,8 @@ module Aws::RAM
22
22
  AssociateResourceShareResponse = Shapes::StructureShape.new(name: 'AssociateResourceShareResponse')
23
23
  AssociatedPermission = Shapes::StructureShape.new(name: 'AssociatedPermission')
24
24
  AssociatedPermissionList = Shapes::ListShape.new(name: 'AssociatedPermissionList')
25
+ AssociatedSource = Shapes::StructureShape.new(name: 'AssociatedSource')
26
+ AssociatedSourceList = Shapes::ListShape.new(name: 'AssociatedSourceList')
25
27
  Boolean = Shapes::BooleanShape.new(name: 'Boolean')
26
28
  CreatePermissionRequest = Shapes::StructureShape.new(name: 'CreatePermissionRequest')
27
29
  CreatePermissionResponse = Shapes::StructureShape.new(name: 'CreatePermissionResponse')
@@ -79,6 +81,8 @@ module Aws::RAM
79
81
  ListResourceTypesResponse = Shapes::StructureShape.new(name: 'ListResourceTypesResponse')
80
82
  ListResourcesRequest = Shapes::StructureShape.new(name: 'ListResourcesRequest')
81
83
  ListResourcesResponse = Shapes::StructureShape.new(name: 'ListResourcesResponse')
84
+ ListSourceAssociationsRequest = Shapes::StructureShape.new(name: 'ListSourceAssociationsRequest')
85
+ ListSourceAssociationsResponse = Shapes::StructureShape.new(name: 'ListSourceAssociationsResponse')
82
86
  MalformedArnException = Shapes::StructureShape.new(name: 'MalformedArnException')
83
87
  MalformedPolicyTemplateException = Shapes::StructureShape.new(name: 'MalformedPolicyTemplateException')
84
88
  MaxResults = Shapes::IntegerShape.new(name: 'MaxResults')
@@ -209,6 +213,17 @@ module Aws::RAM
209
213
 
210
214
  AssociatedPermissionList.member = Shapes::ShapeRef.new(shape: AssociatedPermission)
211
215
 
216
+ AssociatedSource.add_member(:resource_share_arn, Shapes::ShapeRef.new(shape: String, location_name: "resourceShareArn"))
217
+ AssociatedSource.add_member(:source_id, Shapes::ShapeRef.new(shape: String, location_name: "sourceId"))
218
+ AssociatedSource.add_member(:source_type, Shapes::ShapeRef.new(shape: String, location_name: "sourceType"))
219
+ AssociatedSource.add_member(:status, Shapes::ShapeRef.new(shape: String, location_name: "status"))
220
+ AssociatedSource.add_member(:last_updated_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "lastUpdatedTime"))
221
+ AssociatedSource.add_member(:creation_time, Shapes::ShapeRef.new(shape: DateTime, location_name: "creationTime"))
222
+ AssociatedSource.add_member(:status_message, Shapes::ShapeRef.new(shape: String, location_name: "statusMessage"))
223
+ AssociatedSource.struct_class = Types::AssociatedSource
224
+
225
+ AssociatedSourceList.member = Shapes::ShapeRef.new(shape: AssociatedSource)
226
+
212
227
  CreatePermissionRequest.add_member(:name, Shapes::ShapeRef.new(shape: PermissionName, required: true, location_name: "name"))
213
228
  CreatePermissionRequest.add_member(:resource_type, Shapes::ShapeRef.new(shape: String, required: true, location_name: "resourceType"))
214
229
  CreatePermissionRequest.add_member(:policy_template, Shapes::ShapeRef.new(shape: Policy, required: true, location_name: "policyTemplate"))
@@ -472,6 +487,18 @@ module Aws::RAM
472
487
  ListResourcesResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
473
488
  ListResourcesResponse.struct_class = Types::ListResourcesResponse
474
489
 
490
+ ListSourceAssociationsRequest.add_member(:resource_share_arns, Shapes::ShapeRef.new(shape: ResourceShareArnList, location_name: "resourceShareArns"))
491
+ ListSourceAssociationsRequest.add_member(:source_id, Shapes::ShapeRef.new(shape: String, location_name: "sourceId"))
492
+ ListSourceAssociationsRequest.add_member(:source_type, Shapes::ShapeRef.new(shape: String, location_name: "sourceType"))
493
+ ListSourceAssociationsRequest.add_member(:association_status, Shapes::ShapeRef.new(shape: ResourceShareAssociationStatus, location_name: "associationStatus"))
494
+ ListSourceAssociationsRequest.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
495
+ ListSourceAssociationsRequest.add_member(:max_results, Shapes::ShapeRef.new(shape: MaxResults, location_name: "maxResults"))
496
+ ListSourceAssociationsRequest.struct_class = Types::ListSourceAssociationsRequest
497
+
498
+ ListSourceAssociationsResponse.add_member(:source_associations, Shapes::ShapeRef.new(shape: AssociatedSourceList, location_name: "sourceAssociations"))
499
+ ListSourceAssociationsResponse.add_member(:next_token, Shapes::ShapeRef.new(shape: String, location_name: "nextToken"))
500
+ ListSourceAssociationsResponse.struct_class = Types::ListSourceAssociationsResponse
501
+
475
502
  MalformedArnException.add_member(:message, Shapes::ShapeRef.new(shape: String, required: true, location_name: "message"))
476
503
  MalformedArnException.struct_class = Types::MalformedArnException
477
504
 
@@ -871,6 +898,7 @@ module Aws::RAM
871
898
  o.errors << Shapes::ShapeRef.new(shape: TagLimitExceededException)
872
899
  o.errors << Shapes::ShapeRef.new(shape: ServerInternalException)
873
900
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
901
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
874
902
  end)
875
903
 
876
904
  api.add_operation(:delete_permission, Seahorse::Model::Operation.new.tap do |o|
@@ -919,6 +947,7 @@ module Aws::RAM
919
947
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
920
948
  o.errors << Shapes::ShapeRef.new(shape: ServerInternalException)
921
949
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
950
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
922
951
  end)
923
952
 
924
953
  api.add_operation(:disassociate_resource_share, Seahorse::Model::Operation.new.tap do |o|
@@ -937,6 +966,7 @@ module Aws::RAM
937
966
  o.errors << Shapes::ShapeRef.new(shape: ServerInternalException)
938
967
  o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
939
968
  o.errors << Shapes::ShapeRef.new(shape: UnknownResourceException)
969
+ o.errors << Shapes::ShapeRef.new(shape: ThrottlingException)
940
970
  end)
941
971
 
942
972
  api.add_operation(:disassociate_resource_share_permission, Seahorse::Model::Operation.new.tap do |o|
@@ -1243,6 +1273,26 @@ module Aws::RAM
1243
1273
  )
1244
1274
  end)
1245
1275
 
1276
+ api.add_operation(:list_source_associations, Seahorse::Model::Operation.new.tap do |o|
1277
+ o.name = "ListSourceAssociations"
1278
+ o.http_method = "POST"
1279
+ o.http_request_uri = "/listsourceassociations"
1280
+ o.input = Shapes::ShapeRef.new(shape: ListSourceAssociationsRequest)
1281
+ o.output = Shapes::ShapeRef.new(shape: ListSourceAssociationsResponse)
1282
+ o.errors << Shapes::ShapeRef.new(shape: UnknownResourceException)
1283
+ o.errors << Shapes::ShapeRef.new(shape: MalformedArnException)
1284
+ o.errors << Shapes::ShapeRef.new(shape: InvalidNextTokenException)
1285
+ o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1286
+ o.errors << Shapes::ShapeRef.new(shape: ServerInternalException)
1287
+ o.errors << Shapes::ShapeRef.new(shape: ServiceUnavailableException)
1288
+ o[:pager] = Aws::Pager.new(
1289
+ limit_key: "max_results",
1290
+ tokens: {
1291
+ "next_token" => "next_token"
1292
+ }
1293
+ )
1294
+ end)
1295
+
1246
1296
  api.add_operation(:promote_permission_created_from_policy, Seahorse::Model::Operation.new.tap do |o|
1247
1297
  o.name = "PromotePermissionCreatedFromPolicy"
1248
1298
  o.http_method = "POST"
@@ -1250,6 +1300,7 @@ module Aws::RAM
1250
1300
  o.input = Shapes::ShapeRef.new(shape: PromotePermissionCreatedFromPolicyRequest)
1251
1301
  o.output = Shapes::ShapeRef.new(shape: PromotePermissionCreatedFromPolicyResponse)
1252
1302
  o.errors << Shapes::ShapeRef.new(shape: MalformedArnException)
1303
+ o.errors << Shapes::ShapeRef.new(shape: InvalidPolicyException)
1253
1304
  o.errors << Shapes::ShapeRef.new(shape: OperationNotPermittedException)
1254
1305
  o.errors << Shapes::ShapeRef.new(shape: InvalidParameterException)
1255
1306
  o.errors << Shapes::ShapeRef.new(shape: MissingRequiredParameterException)
@@ -221,6 +221,8 @@ module Aws::RAM
221
221
  # * An ARN of an IAM user, for example:
222
222
  # `iam::123456789012user/username`
223
223
  #
224
+ # * A service principal name, for example: `service-id.amazonaws.com`
225
+ #
224
226
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
225
227
  # more information, see [Sharing with IAM roles and users][2] in the
226
228
  # *Resource Access Manager User Guide*.
@@ -254,8 +256,13 @@ module Aws::RAM
254
256
  # @return [String]
255
257
  #
256
258
  # @!attribute [rw] sources
257
- # Specifies from which source accounts the service principal has
258
- # access to the resources in this resource share.
259
+ # Specifies source constraints (accounts, ARNs, organization IDs, or
260
+ # organization paths) that limit when service principals can access
261
+ # resources in this resource share. When a service principal attempts
262
+ # to access a shared resource, validation is performed to ensure the
263
+ # request originates from one of the specified sources. This helps
264
+ # prevent confused deputy attacks by applying constraints on where
265
+ # service principals can access resources from.
259
266
  # @return [Array<String>]
260
267
  #
261
268
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociateResourceShareRequest AWS API Documentation
@@ -389,6 +396,54 @@ module Aws::RAM
389
396
  include Aws::Structure
390
397
  end
391
398
 
399
+ # Information about a source association in a resource share. Source
400
+ # associations control which sources can be used with service
401
+ # principals.
402
+ #
403
+ # @!attribute [rw] resource_share_arn
404
+ # The Amazon Resource Name (ARN) of the resource share that contains
405
+ # the source association.
406
+ # @return [String]
407
+ #
408
+ # @!attribute [rw] source_id
409
+ # The identifier of the source. This can be an account ID, Amazon
410
+ # Resource Name (ARN), organization ID, or organization path.
411
+ # @return [String]
412
+ #
413
+ # @!attribute [rw] source_type
414
+ # The type of source.
415
+ # @return [String]
416
+ #
417
+ # @!attribute [rw] status
418
+ # The current status of the source association.
419
+ # @return [String]
420
+ #
421
+ # @!attribute [rw] last_updated_time
422
+ # The date and time when the source association was last updated.
423
+ # @return [Time]
424
+ #
425
+ # @!attribute [rw] creation_time
426
+ # The date and time when the source association was created.
427
+ # @return [Time]
428
+ #
429
+ # @!attribute [rw] status_message
430
+ # A message about the status of the source association.
431
+ # @return [String]
432
+ #
433
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/AssociatedSource AWS API Documentation
434
+ #
435
+ class AssociatedSource < Struct.new(
436
+ :resource_share_arn,
437
+ :source_id,
438
+ :source_type,
439
+ :status,
440
+ :last_updated_time,
441
+ :creation_time,
442
+ :status_message)
443
+ SENSITIVE = []
444
+ include Aws::Structure
445
+ end
446
+
392
447
  # @!attribute [rw] name
393
448
  # Specifies the name of the customer managed permission. The name must
394
449
  # be unique within the Amazon Web Services Region.
@@ -398,10 +453,12 @@ module Aws::RAM
398
453
  # Specifies the name of the resource type that this customer managed
399
454
  # permission applies to.
400
455
  #
401
- # The format is ` <service-code>:<resource-type> ` and is not case
456
+ # The format is ` <service-code>:<resource-type> ` and is case
402
457
  # sensitive. For example, to specify an Amazon EC2 Subnet, you can use
403
- # the string `ec2:subnet`. To see the list of valid values for this
404
- # parameter, query the ListResourceTypes operation.
458
+ # the string `ec2:Subnet`. To see the list of valid values for this
459
+ # parameter, query the ListResourceTypes operation. This value must
460
+ # match the display name of the resource (available in
461
+ # `ListResourceTypes`).
405
462
  # @return [String]
406
463
  #
407
464
  # @!attribute [rw] policy_template
@@ -617,6 +674,8 @@ module Aws::RAM
617
674
  # * An ARN of an IAM user, for example:
618
675
  # `iam::123456789012user/username`
619
676
  #
677
+ # * A service principal name, for example: `service-id.amazonaws.com`
678
+ #
620
679
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
621
680
  # more information, see [Sharing with IAM roles and users][2] in the
622
681
  # *Resource Access Manager User Guide*.
@@ -678,8 +737,13 @@ module Aws::RAM
678
737
  # @return [Array<String>]
679
738
  #
680
739
  # @!attribute [rw] sources
681
- # Specifies from which source accounts the service principal has
682
- # access to the resources in this resource share.
740
+ # Specifies source constraints (accounts, ARNs, organization IDs, or
741
+ # organization paths) that limit when service principals can access
742
+ # resources in this resource share. When a service principal attempts
743
+ # to access a shared resource, validation is performed to ensure the
744
+ # request originates from one of the specified sources. This helps
745
+ # prevent confused deputy attacks by applying constraints on where
746
+ # service principals can access resources from.
683
747
  # @return [Array<String>]
684
748
  #
685
749
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/CreateResourceShareRequest AWS API Documentation
@@ -1040,6 +1104,8 @@ module Aws::RAM
1040
1104
  # * An ARN of an IAM user, for example:
1041
1105
  # `iam::123456789012user/username`
1042
1106
  #
1107
+ # * A service principal name, for example: `service-id.amazonaws.com`
1108
+ #
1043
1109
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
1044
1110
  # more information, see [Sharing with IAM roles and users][2] in the
1045
1111
  # *Resource Access Manager User Guide*.
@@ -1073,8 +1139,11 @@ module Aws::RAM
1073
1139
  # @return [String]
1074
1140
  #
1075
1141
  # @!attribute [rw] sources
1076
- # Specifies from which source accounts the service principal no longer
1077
- # has access to the resources in this resource share.
1142
+ # Specifies source constraints (accounts, ARNs, organization IDs, or
1143
+ # organization paths) to remove from the resource share. This enables
1144
+ # granular management of source constraints while maintaining service
1145
+ # principal associations. At least one source must remain when service
1146
+ # principals are present.
1078
1147
  # @return [Array<String>]
1079
1148
  #
1080
1149
  # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/DisassociateResourceShareRequest AWS API Documentation
@@ -2004,6 +2073,8 @@ module Aws::RAM
2004
2073
  # * An ARN of an IAM user, for example:
2005
2074
  # `iam::123456789012user/username`
2006
2075
  #
2076
+ # * A service principal name, for example: `service-id.amazonaws.com`
2077
+ #
2007
2078
  # <note markdown="1"> Not all resource types can be shared with IAM roles and users. For
2008
2079
  # more information, see [Sharing with IAM roles and users][2] in the
2009
2080
  # *Resource Access Manager User Guide*.
@@ -2407,6 +2478,67 @@ module Aws::RAM
2407
2478
  include Aws::Structure
2408
2479
  end
2409
2480
 
2481
+ # @!attribute [rw] resource_share_arns
2482
+ # The Amazon Resource Names (ARNs) of the resource shares for which
2483
+ # you want to retrieve source associations.
2484
+ # @return [Array<String>]
2485
+ #
2486
+ # @!attribute [rw] source_id
2487
+ # The identifier of the source for which you want to retrieve
2488
+ # associations. This can be an account ID, Amazon Resource Name (ARN),
2489
+ # organization ID, or organization path.
2490
+ # @return [String]
2491
+ #
2492
+ # @!attribute [rw] source_type
2493
+ # The type of source for which you want to retrieve associations.
2494
+ # @return [String]
2495
+ #
2496
+ # @!attribute [rw] association_status
2497
+ # The status of the source associations that you want to retrieve.
2498
+ # @return [String]
2499
+ #
2500
+ # @!attribute [rw] next_token
2501
+ # The pagination token that indicates the next set of results to
2502
+ # retrieve.
2503
+ # @return [String]
2504
+ #
2505
+ # @!attribute [rw] max_results
2506
+ # The maximum number of results to return in a single call. To
2507
+ # retrieve the remaining results, make another call with the returned
2508
+ # `nextToken` value.
2509
+ # @return [Integer]
2510
+ #
2511
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListSourceAssociationsRequest AWS API Documentation
2512
+ #
2513
+ class ListSourceAssociationsRequest < Struct.new(
2514
+ :resource_share_arns,
2515
+ :source_id,
2516
+ :source_type,
2517
+ :association_status,
2518
+ :next_token,
2519
+ :max_results)
2520
+ SENSITIVE = []
2521
+ include Aws::Structure
2522
+ end
2523
+
2524
+ # @!attribute [rw] source_associations
2525
+ # Information about the source associations.
2526
+ # @return [Array<Types::AssociatedSource>]
2527
+ #
2528
+ # @!attribute [rw] next_token
2529
+ # The pagination token to use to retrieve the next page of results.
2530
+ # This value is `null` when there are no more results to return.
2531
+ # @return [String]
2532
+ #
2533
+ # @see http://docs.aws.amazon.com/goto/WebAPI/ram-2018-01-04/ListSourceAssociationsResponse AWS API Documentation
2534
+ #
2535
+ class ListSourceAssociationsResponse < Struct.new(
2536
+ :source_associations,
2537
+ :next_token)
2538
+ SENSITIVE = []
2539
+ include Aws::Structure
2540
+ end
2541
+
2410
2542
  # The operation failed because the specified [Amazon Resource Name
2411
2543
  # (ARN)][1] has a format that isn't valid.
2412
2544
  #
@@ -3283,8 +3415,9 @@ module Aws::RAM
3283
3415
  end
3284
3416
 
3285
3417
  # The operation failed because it would exceed the limit for resource
3286
- # shares for your account. To view the limits for your Amazon Web
3287
- # Services account, see the [RAM page in the Service Quotas console][1].
3418
+ # shares for your account. You can associate up to 100 resources per
3419
+ # call. To view the limits for your Amazon Web Services account, see the
3420
+ # [RAM page in the Service Quotas console][1].
3288
3421
  #
3289
3422
  #
3290
3423
  #
@@ -3709,6 +3842,10 @@ module Aws::RAM
3709
3842
  # A tag key and optional list of possible values that you can use to
3710
3843
  # filter results for tagged resources.
3711
3844
  #
3845
+ # <note markdown="1"> Multiple tag filters are evaluated as an OR condition.
3846
+ #
3847
+ # </note>
3848
+ #
3712
3849
  # @!attribute [rw] tag_key
3713
3850
  # The tag key. This must have a valid string value and can't be
3714
3851
  # empty.
data/lib/aws-sdk-ram.rb CHANGED
@@ -54,7 +54,7 @@ module Aws::RAM
54
54
  autoload :EndpointProvider, 'aws-sdk-ram/endpoint_provider'
55
55
  autoload :Endpoints, 'aws-sdk-ram/endpoints'
56
56
 
57
- GEM_VERSION = '1.83.0'
57
+ GEM_VERSION = '1.84.0'
58
58
 
59
59
  end
60
60
 
data/sig/client.rbs CHANGED
@@ -284,11 +284,11 @@ module Aws
284
284
  end
285
285
  # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/RAM/Client.html#get_resource_share_associations-instance_method
286
286
  def get_resource_share_associations: (
287
- association_type: ("PRINCIPAL" | "RESOURCE"),
287
+ association_type: ("PRINCIPAL" | "RESOURCE" | "SOURCE"),
288
288
  ?resource_share_arns: Array[::String],
289
289
  ?resource_arn: ::String,
290
290
  ?principal: ::String,
291
- ?association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED"),
291
+ ?association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED" | "SUSPENDED" | "SUSPENDING" | "RESTORING"),
292
292
  ?next_token: ::String,
293
293
  ?max_results: ::Integer
294
294
  ) -> _GetResourceShareAssociationsResponseSuccess
@@ -355,7 +355,7 @@ module Aws
355
355
  def list_permission_associations: (
356
356
  ?permission_arn: ::String,
357
357
  ?permission_version: ::Integer,
358
- ?association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED"),
358
+ ?association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED" | "SUSPENDED" | "SUSPENDING" | "RESTORING"),
359
359
  ?resource_type: ::String,
360
360
  ?feature_set: ("CREATED_FROM_POLICY" | "PROMOTING_TO_STANDARD" | "STANDARD"),
361
361
  ?default_version: bool,
@@ -466,6 +466,22 @@ module Aws
466
466
  ) -> _ListResourcesResponseSuccess
467
467
  | (Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListResourcesResponseSuccess
468
468
 
469
+ interface _ListSourceAssociationsResponseSuccess
470
+ include ::Seahorse::Client::_ResponseSuccess[Types::ListSourceAssociationsResponse]
471
+ def source_associations: () -> ::Array[Types::AssociatedSource]
472
+ def next_token: () -> ::String
473
+ end
474
+ # https://docs.aws.amazon.com/sdk-for-ruby/v3/api/Aws/RAM/Client.html#list_source_associations-instance_method
475
+ def list_source_associations: (
476
+ ?resource_share_arns: Array[::String],
477
+ ?source_id: ::String,
478
+ ?source_type: ::String,
479
+ ?association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED" | "SUSPENDED" | "SUSPENDING" | "RESTORING"),
480
+ ?next_token: ::String,
481
+ ?max_results: ::Integer
482
+ ) -> _ListSourceAssociationsResponseSuccess
483
+ | (?Hash[Symbol, untyped] params, ?Hash[Symbol, untyped] options) -> _ListSourceAssociationsResponseSuccess
484
+
469
485
  interface _PromotePermissionCreatedFromPolicyResponseSuccess
470
486
  include ::Seahorse::Client::_ResponseSuccess[Types::PromotePermissionCreatedFromPolicyResponse]
471
487
  def permission: () -> Types::ResourceSharePermissionSummary
data/sig/types.rbs CHANGED
@@ -62,6 +62,17 @@ module Aws::RAM
62
62
  SENSITIVE: []
63
63
  end
64
64
 
65
+ class AssociatedSource
66
+ attr_accessor resource_share_arn: ::String
67
+ attr_accessor source_id: ::String
68
+ attr_accessor source_type: ::String
69
+ attr_accessor status: ::String
70
+ attr_accessor last_updated_time: ::Time
71
+ attr_accessor creation_time: ::Time
72
+ attr_accessor status_message: ::String
73
+ SENSITIVE: []
74
+ end
75
+
65
76
  class CreatePermissionRequest
66
77
  attr_accessor name: ::String
67
78
  attr_accessor resource_type: ::String
@@ -209,11 +220,11 @@ module Aws::RAM
209
220
  end
210
221
 
211
222
  class GetResourceShareAssociationsRequest
212
- attr_accessor association_type: ("PRINCIPAL" | "RESOURCE")
223
+ attr_accessor association_type: ("PRINCIPAL" | "RESOURCE" | "SOURCE")
213
224
  attr_accessor resource_share_arns: ::Array[::String]
214
225
  attr_accessor resource_arn: ::String
215
226
  attr_accessor principal: ::String
216
- attr_accessor association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED")
227
+ attr_accessor association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED" | "SUSPENDED" | "SUSPENDING" | "RESTORING")
217
228
  attr_accessor next_token: ::String
218
229
  attr_accessor max_results: ::Integer
219
230
  SENSITIVE: []
@@ -315,7 +326,7 @@ module Aws::RAM
315
326
  class ListPermissionAssociationsRequest
316
327
  attr_accessor permission_arn: ::String
317
328
  attr_accessor permission_version: ::Integer
318
- attr_accessor association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED")
329
+ attr_accessor association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED" | "SUSPENDED" | "SUSPENDING" | "RESTORING")
319
330
  attr_accessor resource_type: ::String
320
331
  attr_accessor feature_set: ("CREATED_FROM_POLICY" | "PROMOTING_TO_STANDARD" | "STANDARD")
321
332
  attr_accessor default_version: bool
@@ -432,6 +443,22 @@ module Aws::RAM
432
443
  SENSITIVE: []
433
444
  end
434
445
 
446
+ class ListSourceAssociationsRequest
447
+ attr_accessor resource_share_arns: ::Array[::String]
448
+ attr_accessor source_id: ::String
449
+ attr_accessor source_type: ::String
450
+ attr_accessor association_status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED" | "SUSPENDED" | "SUSPENDING" | "RESTORING")
451
+ attr_accessor next_token: ::String
452
+ attr_accessor max_results: ::Integer
453
+ SENSITIVE: []
454
+ end
455
+
456
+ class ListSourceAssociationsResponse
457
+ attr_accessor source_associations: ::Array[Types::AssociatedSource]
458
+ attr_accessor next_token: ::String
459
+ SENSITIVE: []
460
+ end
461
+
435
462
  class MalformedArnException
436
463
  attr_accessor message: ::String
437
464
  SENSITIVE: []
@@ -574,8 +601,8 @@ module Aws::RAM
574
601
  attr_accessor resource_share_arn: ::String
575
602
  attr_accessor resource_share_name: ::String
576
603
  attr_accessor associated_entity: ::String
577
- attr_accessor association_type: ("PRINCIPAL" | "RESOURCE")
578
- attr_accessor status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED")
604
+ attr_accessor association_type: ("PRINCIPAL" | "RESOURCE" | "SOURCE")
605
+ attr_accessor status: ("ASSOCIATING" | "ASSOCIATED" | "FAILED" | "DISASSOCIATING" | "DISASSOCIATED" | "SUSPENDED" | "SUSPENDING" | "RESTORING")
579
606
  attr_accessor status_message: ::String
580
607
  attr_accessor creation_time: ::Time
581
608
  attr_accessor last_updated_time: ::Time
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: aws-sdk-ram
3
3
  version: !ruby/object:Gem::Version
4
- version: 1.83.0
4
+ version: 1.84.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Amazon Web Services