@aws-sdk/client-ram 3.982.0 → 3.984.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.
Files changed (49) hide show
  1. package/README.md +7 -0
  2. package/dist-cjs/index.js +56 -0
  3. package/dist-es/RAM.js +4 -0
  4. package/dist-es/commands/ListSourceAssociationsCommand.js +16 -0
  5. package/dist-es/commands/index.js +1 -0
  6. package/dist-es/models/enums.js +4 -0
  7. package/dist-es/pagination/ListSourceAssociationsPaginator.js +4 -0
  8. package/dist-es/pagination/index.js +1 -0
  9. package/dist-es/schemas/schemas_0.js +30 -0
  10. package/dist-types/RAM.d.ts +15 -0
  11. package/dist-types/RAMClient.d.ts +3 -2
  12. package/dist-types/commands/AcceptResourceShareInvitationCommand.d.ts +2 -2
  13. package/dist-types/commands/AssociateResourceShareCommand.d.ts +7 -6
  14. package/dist-types/commands/CreateResourceShareCommand.d.ts +10 -5
  15. package/dist-types/commands/DeleteResourceShareCommand.d.ts +4 -0
  16. package/dist-types/commands/DisassociateResourceShareCommand.d.ts +11 -6
  17. package/dist-types/commands/GetResourcePoliciesCommand.d.ts +7 -0
  18. package/dist-types/commands/GetResourceShareAssociationsCommand.d.ts +11 -4
  19. package/dist-types/commands/GetResourceShareInvitationsCommand.d.ts +9 -2
  20. package/dist-types/commands/GetResourceSharesCommand.d.ts +7 -0
  21. package/dist-types/commands/ListPendingInvitationResourcesCommand.d.ts +7 -0
  22. package/dist-types/commands/ListPermissionAssociationsCommand.d.ts +8 -1
  23. package/dist-types/commands/ListPermissionVersionsCommand.d.ts +7 -0
  24. package/dist-types/commands/ListPermissionsCommand.d.ts +7 -0
  25. package/dist-types/commands/ListPrincipalsCommand.d.ts +7 -0
  26. package/dist-types/commands/ListReplacePermissionAssociationsWorkCommand.d.ts +7 -0
  27. package/dist-types/commands/ListResourceSharePermissionsCommand.d.ts +7 -0
  28. package/dist-types/commands/ListResourcesCommand.d.ts +7 -0
  29. package/dist-types/commands/ListSourceAssociationsCommand.d.ts +115 -0
  30. package/dist-types/commands/PromotePermissionCreatedFromPolicyCommand.d.ts +3 -0
  31. package/dist-types/commands/PromoteResourceShareCreatedFromPolicyCommand.d.ts +4 -3
  32. package/dist-types/commands/RejectResourceShareInvitationCommand.d.ts +2 -2
  33. package/dist-types/commands/index.d.ts +1 -0
  34. package/dist-types/models/enums.d.ts +4 -0
  35. package/dist-types/models/errors.d.ts +4 -3
  36. package/dist-types/models/models_0.d.ts +117 -9
  37. package/dist-types/pagination/ListSourceAssociationsPaginator.d.ts +7 -0
  38. package/dist-types/pagination/index.d.ts +1 -0
  39. package/dist-types/schemas/schemas_0.d.ts +4 -0
  40. package/dist-types/ts3.4/RAM.d.ts +25 -0
  41. package/dist-types/ts3.4/RAMClient.d.ts +6 -0
  42. package/dist-types/ts3.4/commands/ListSourceAssociationsCommand.d.ts +51 -0
  43. package/dist-types/ts3.4/commands/index.d.ts +1 -0
  44. package/dist-types/ts3.4/models/enums.d.ts +4 -0
  45. package/dist-types/ts3.4/models/models_0.d.ts +21 -0
  46. package/dist-types/ts3.4/pagination/ListSourceAssociationsPaginator.d.ts +11 -0
  47. package/dist-types/ts3.4/pagination/index.d.ts +1 -0
  48. package/dist-types/ts3.4/schemas/schemas_0.d.ts +4 -0
  49. package/package.json +2 -2
@@ -28,6 +28,13 @@ declare const GetResourceSharesCommand_base: {
28
28
  };
29
29
  /**
30
30
  * <p>Retrieves details about the resource shares that you own or that are shared with you.</p>
31
+ * <note>
32
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
33
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
34
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
35
+ * <i>only</i>
36
+ * when there are no more results to display.</p>
37
+ * </note>
31
38
  * @example
32
39
  * Use a bare-bones client and the command you need to make an API call.
33
40
  * ```javascript
@@ -30,6 +30,13 @@ declare const ListPendingInvitationResourcesCommand_base: {
30
30
  * <p>Lists the resources in a resource share that is shared with you but for which the invitation is
31
31
  * still <code>PENDING</code>. That means that you haven't accepted or rejected the
32
32
  * invitation and the invitation hasn't expired.</p>
33
+ * <note>
34
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
35
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
36
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
37
+ * <i>only</i>
38
+ * when there are no more results to display.</p>
39
+ * </note>
33
40
  * @example
34
41
  * Use a bare-bones client and the command you need to make an API call.
35
42
  * ```javascript
@@ -30,6 +30,13 @@ declare const ListPermissionAssociationsCommand_base: {
30
30
  * <p>Lists information about the managed permission and its associations to any resource shares that use
31
31
  * this managed permission. This lets you see which resource shares use which versions of the specified
32
32
  * managed permission.</p>
33
+ * <note>
34
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
35
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
36
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
37
+ * <i>only</i>
38
+ * when there are no more results to display.</p>
39
+ * </note>
33
40
  * @example
34
41
  * Use a bare-bones client and the command you need to make an API call.
35
42
  * ```javascript
@@ -41,7 +48,7 @@ declare const ListPermissionAssociationsCommand_base: {
41
48
  * const input = { // ListPermissionAssociationsRequest
42
49
  * permissionArn: "STRING_VALUE",
43
50
  * permissionVersion: Number("int"),
44
- * associationStatus: "ASSOCIATING" || "ASSOCIATED" || "FAILED" || "DISASSOCIATING" || "DISASSOCIATED",
51
+ * associationStatus: "ASSOCIATING" || "ASSOCIATED" || "FAILED" || "DISASSOCIATING" || "DISASSOCIATED" || "SUSPENDED" || "SUSPENDING" || "RESTORING",
45
52
  * resourceType: "STRING_VALUE",
46
53
  * featureSet: "CREATED_FROM_POLICY" || "PROMOTING_TO_STANDARD" || "STANDARD",
47
54
  * defaultVersion: true || false,
@@ -28,6 +28,13 @@ declare const ListPermissionVersionsCommand_base: {
28
28
  };
29
29
  /**
30
30
  * <p>Lists the available versions of the specified RAM permission.</p>
31
+ * <note>
32
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
33
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
34
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
35
+ * <i>only</i>
36
+ * when there are no more results to display.</p>
37
+ * </note>
31
38
  * @example
32
39
  * Use a bare-bones client and the command you need to make an API call.
33
40
  * ```javascript
@@ -29,6 +29,13 @@ declare const ListPermissionsCommand_base: {
29
29
  /**
30
30
  * <p>Retrieves a list of available RAM permissions that you can use for the supported
31
31
  * resource types. </p>
32
+ * <note>
33
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
34
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
35
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
36
+ * <i>only</i>
37
+ * when there are no more results to display.</p>
38
+ * </note>
32
39
  * @example
33
40
  * Use a bare-bones client and the command you need to make an API call.
34
41
  * ```javascript
@@ -29,6 +29,13 @@ declare const ListPrincipalsCommand_base: {
29
29
  /**
30
30
  * <p>Lists the principals that you are sharing resources with or that are sharing resources
31
31
  * with you.</p>
32
+ * <note>
33
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
34
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
35
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
36
+ * <i>only</i>
37
+ * when there are no more results to display.</p>
38
+ * </note>
32
39
  * @example
33
40
  * Use a bare-bones client and the command you need to make an API call.
34
41
  * ```javascript
@@ -29,6 +29,13 @@ declare const ListReplacePermissionAssociationsWorkCommand_base: {
29
29
  /**
30
30
  * <p>Retrieves the current status of the asynchronous tasks performed by RAM when you
31
31
  * perform the <a>ReplacePermissionAssociationsWork</a> operation.</p>
32
+ * <note>
33
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
34
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
35
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
36
+ * <i>only</i>
37
+ * when there are no more results to display.</p>
38
+ * </note>
32
39
  * @example
33
40
  * Use a bare-bones client and the command you need to make an API call.
34
41
  * ```javascript
@@ -28,6 +28,13 @@ declare const ListResourceSharePermissionsCommand_base: {
28
28
  };
29
29
  /**
30
30
  * <p>Lists the RAM permissions that are associated with a resource share.</p>
31
+ * <note>
32
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
33
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
34
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
35
+ * <i>only</i>
36
+ * when there are no more results to display.</p>
37
+ * </note>
31
38
  * @example
32
39
  * Use a bare-bones client and the command you need to make an API call.
33
40
  * ```javascript
@@ -29,6 +29,13 @@ declare const ListResourcesCommand_base: {
29
29
  /**
30
30
  * <p>Lists the resources that you added to a resource share or the resources that are shared with
31
31
  * you.</p>
32
+ * <note>
33
+ * <p>Always check the <code>NextToken</code> response parameter for a <code>null</code> value
34
+ * when calling a paginated operation. These operations can occasionally return an empty set of results even when there are more
35
+ * results available. The <code>NextToken</code> response parameter value is <code>null</code>
36
+ * <i>only</i>
37
+ * when there are no more results to display.</p>
38
+ * </note>
32
39
  * @example
33
40
  * Use a bare-bones client and the command you need to make an API call.
34
41
  * ```javascript
@@ -0,0 +1,115 @@
1
+ import { Command as $Command } from "@smithy/smithy-client";
2
+ import type { MetadataBearer as __MetadataBearer } from "@smithy/types";
3
+ import type { ListSourceAssociationsRequest, ListSourceAssociationsResponse } from "../models/models_0";
4
+ import type { RAMClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes } from "../RAMClient";
5
+ /**
6
+ * @public
7
+ */
8
+ export type { __MetadataBearer };
9
+ export { $Command };
10
+ /**
11
+ * @public
12
+ *
13
+ * The input for {@link ListSourceAssociationsCommand}.
14
+ */
15
+ export interface ListSourceAssociationsCommandInput extends ListSourceAssociationsRequest {
16
+ }
17
+ /**
18
+ * @public
19
+ *
20
+ * The output of {@link ListSourceAssociationsCommand}.
21
+ */
22
+ export interface ListSourceAssociationsCommandOutput extends ListSourceAssociationsResponse, __MetadataBearer {
23
+ }
24
+ declare const ListSourceAssociationsCommand_base: {
25
+ new (input: ListSourceAssociationsCommandInput): import("@smithy/smithy-client").CommandImpl<ListSourceAssociationsCommandInput, ListSourceAssociationsCommandOutput, RAMClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
26
+ new (...[input]: [] | [ListSourceAssociationsCommandInput]): import("@smithy/smithy-client").CommandImpl<ListSourceAssociationsCommandInput, ListSourceAssociationsCommandOutput, RAMClientResolvedConfig, ServiceInputTypes, ServiceOutputTypes>;
27
+ getEndpointParameterInstructions(): import("@smithy/middleware-endpoint").EndpointParameterInstructions;
28
+ };
29
+ /**
30
+ * <p>Lists source associations for resource shares. Source associations control which sources can be used with service principals in resource shares. This operation provides visibility into source associations for resource share owners.</p>
31
+ * <p>You can filter the results by resource share Amazon Resource Name (ARN), source ID, source type, or association status. We recommend using pagination to ensure that the operation returns quickly and successfully.</p>
32
+ * @example
33
+ * Use a bare-bones client and the command you need to make an API call.
34
+ * ```javascript
35
+ * import { RAMClient, ListSourceAssociationsCommand } from "@aws-sdk/client-ram"; // ES Modules import
36
+ * // const { RAMClient, ListSourceAssociationsCommand } = require("@aws-sdk/client-ram"); // CommonJS import
37
+ * // import type { RAMClientConfig } from "@aws-sdk/client-ram";
38
+ * const config = {}; // type is RAMClientConfig
39
+ * const client = new RAMClient(config);
40
+ * const input = { // ListSourceAssociationsRequest
41
+ * resourceShareArns: [ // ResourceShareArnList
42
+ * "STRING_VALUE",
43
+ * ],
44
+ * sourceId: "STRING_VALUE",
45
+ * sourceType: "STRING_VALUE",
46
+ * associationStatus: "ASSOCIATING" || "ASSOCIATED" || "FAILED" || "DISASSOCIATING" || "DISASSOCIATED" || "SUSPENDED" || "SUSPENDING" || "RESTORING",
47
+ * nextToken: "STRING_VALUE",
48
+ * maxResults: Number("int"),
49
+ * };
50
+ * const command = new ListSourceAssociationsCommand(input);
51
+ * const response = await client.send(command);
52
+ * // { // ListSourceAssociationsResponse
53
+ * // sourceAssociations: [ // AssociatedSourceList
54
+ * // { // AssociatedSource
55
+ * // resourceShareArn: "STRING_VALUE",
56
+ * // sourceId: "STRING_VALUE",
57
+ * // sourceType: "STRING_VALUE",
58
+ * // status: "STRING_VALUE",
59
+ * // lastUpdatedTime: new Date("TIMESTAMP"),
60
+ * // creationTime: new Date("TIMESTAMP"),
61
+ * // statusMessage: "STRING_VALUE",
62
+ * // },
63
+ * // ],
64
+ * // nextToken: "STRING_VALUE",
65
+ * // };
66
+ *
67
+ * ```
68
+ *
69
+ * @param ListSourceAssociationsCommandInput - {@link ListSourceAssociationsCommandInput}
70
+ * @returns {@link ListSourceAssociationsCommandOutput}
71
+ * @see {@link ListSourceAssociationsCommandInput} for command's `input` shape.
72
+ * @see {@link ListSourceAssociationsCommandOutput} for command's `response` shape.
73
+ * @see {@link RAMClientResolvedConfig | config} for RAMClient's `config` shape.
74
+ *
75
+ * @throws {@link InvalidNextTokenException} (client fault)
76
+ * <p>The operation failed because the specified value for <code>NextToken</code> isn't
77
+ * valid. You must specify a value you received in the <code>NextToken</code> response of a
78
+ * previous call to this operation.</p>
79
+ *
80
+ * @throws {@link InvalidParameterException} (client fault)
81
+ * <p>The operation failed because a parameter you specified isn't valid.</p>
82
+ *
83
+ * @throws {@link MalformedArnException} (client fault)
84
+ * <p>The operation failed because the specified <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Name (ARN)</a> has a format that isn't
85
+ * valid.</p>
86
+ *
87
+ * @throws {@link ServerInternalException} (server fault)
88
+ * <p>The operation failed because the service could not respond to the request due to an
89
+ * internal problem. Try again later.</p>
90
+ *
91
+ * @throws {@link ServiceUnavailableException} (server fault)
92
+ * <p>The operation failed because the service isn't available. Try again later.</p>
93
+ *
94
+ * @throws {@link UnknownResourceException} (client fault)
95
+ * <p>The operation failed because a specified resource couldn't be found.</p>
96
+ *
97
+ * @throws {@link RAMServiceException}
98
+ * <p>Base exception class for all service exceptions from RAM service.</p>
99
+ *
100
+ *
101
+ * @public
102
+ */
103
+ export declare class ListSourceAssociationsCommand extends ListSourceAssociationsCommand_base {
104
+ /** @internal type navigation helper, not in runtime. */
105
+ protected static __types: {
106
+ api: {
107
+ input: ListSourceAssociationsRequest;
108
+ output: ListSourceAssociationsResponse;
109
+ };
110
+ sdk: {
111
+ input: ListSourceAssociationsCommandInput;
112
+ output: ListSourceAssociationsCommandOutput;
113
+ };
114
+ };
115
+ }
@@ -108,6 +108,9 @@ declare const PromotePermissionCreatedFromPolicyCommand_base: {
108
108
  * @throws {@link InvalidParameterException} (client fault)
109
109
  * <p>The operation failed because a parameter you specified isn't valid.</p>
110
110
  *
111
+ * @throws {@link InvalidPolicyException} (client fault)
112
+ * <p>The operation failed because a policy you specified isn't valid.</p>
113
+ *
111
114
  * @throws {@link MalformedArnException} (client fault)
112
115
  * <p>The operation failed because the specified <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Name (ARN)</a> has a format that isn't
113
116
  * valid.</p>
@@ -84,9 +84,10 @@ declare const PromoteResourceShareCreatedFromPolicyCommand_base: {
84
84
  * <p>The operation failed because the requested operation isn't permitted.</p>
85
85
  *
86
86
  * @throws {@link ResourceShareLimitExceededException} (client fault)
87
- * <p>The operation failed because it would exceed the limit for resource shares for your account. To
88
- * view the limits for your Amazon Web Services account, see the <a href="https://console.aws.amazon.com/servicequotas/home/services/ram/quotas">RAM page in the Service Quotas
89
- * console</a>.</p>
87
+ * <p>The operation failed because it would exceed the limit for resource shares for your account. You
88
+ * can associate up to 100 resources per call. To view the limits for your Amazon Web Services account,
89
+ * see the <a href="https://console.aws.amazon.com/servicequotas/home/services/ram/quotas">RAM page in
90
+ * the Service Quotas console</a>.</p>
90
91
  *
91
92
  * @throws {@link ServerInternalException} (server fault)
92
93
  * <p>The operation failed because the service could not respond to the request due to an
@@ -56,8 +56,8 @@ declare const RejectResourceShareInvitationCommand_base: {
56
56
  * // resourceShareArn: "STRING_VALUE",
57
57
  * // resourceShareName: "STRING_VALUE",
58
58
  * // associatedEntity: "STRING_VALUE",
59
- * // associationType: "PRINCIPAL" || "RESOURCE",
60
- * // status: "ASSOCIATING" || "ASSOCIATED" || "FAILED" || "DISASSOCIATING" || "DISASSOCIATED",
59
+ * // associationType: "PRINCIPAL" || "RESOURCE" || "SOURCE",
60
+ * // status: "ASSOCIATING" || "ASSOCIATED" || "FAILED" || "DISASSOCIATING" || "DISASSOCIATED" || "SUSPENDED" || "SUSPENDING" || "RESTORING",
61
61
  * // statusMessage: "STRING_VALUE",
62
62
  * // creationTime: new Date("TIMESTAMP"),
63
63
  * // lastUpdatedTime: new Date("TIMESTAMP"),
@@ -24,6 +24,7 @@ export * from "./ListReplacePermissionAssociationsWorkCommand";
24
24
  export * from "./ListResourceSharePermissionsCommand";
25
25
  export * from "./ListResourceTypesCommand";
26
26
  export * from "./ListResourcesCommand";
27
+ export * from "./ListSourceAssociationsCommand";
27
28
  export * from "./PromotePermissionCreatedFromPolicyCommand";
28
29
  export * from "./PromoteResourceShareCreatedFromPolicyCommand";
29
30
  export * from "./RejectResourceShareInvitationCommand";
@@ -5,6 +5,7 @@
5
5
  export declare const ResourceShareAssociationType: {
6
6
  readonly PRINCIPAL: "PRINCIPAL";
7
7
  readonly RESOURCE: "RESOURCE";
8
+ readonly SOURCE: "SOURCE";
8
9
  };
9
10
  /**
10
11
  * @public
@@ -20,6 +21,9 @@ export declare const ResourceShareAssociationStatus: {
20
21
  readonly DISASSOCIATED: "DISASSOCIATED";
21
22
  readonly DISASSOCIATING: "DISASSOCIATING";
22
23
  readonly FAILED: "FAILED";
24
+ readonly RESTORING: "RESTORING";
25
+ readonly SUSPENDED: "SUSPENDED";
26
+ readonly SUSPENDING: "SUSPENDING";
23
27
  };
24
28
  /**
25
29
  * @public
@@ -152,9 +152,10 @@ export declare class InvalidStateTransitionException extends __BaseException {
152
152
  constructor(opts: __ExceptionOptionType<InvalidStateTransitionException, __BaseException>);
153
153
  }
154
154
  /**
155
- * <p>The operation failed because it would exceed the limit for resource shares for your account. To
156
- * view the limits for your Amazon Web Services account, see the <a href="https://console.aws.amazon.com/servicequotas/home/services/ram/quotas">RAM page in the Service Quotas
157
- * console</a>.</p>
155
+ * <p>The operation failed because it would exceed the limit for resource shares for your account. You
156
+ * can associate up to 100 resources per call. To view the limits for your Amazon Web Services account,
157
+ * see the <a href="https://console.aws.amazon.com/servicequotas/home/services/ram/quotas">RAM page in
158
+ * the Service Quotas console</a>.</p>
158
159
  * @public
159
160
  */
160
161
  export declare class ResourceShareLimitExceededException extends __BaseException {
@@ -219,6 +219,10 @@ export interface AssociateResourceShareRequest {
219
219
  * <code>iam::123456789012user/username</code>
220
220
  * </p>
221
221
  * </li>
222
+ * <li>
223
+ * <p>A service principal name, for example: <code>service-id.amazonaws.com</code>
224
+ * </p>
225
+ * </li>
222
226
  * </ul>
223
227
  * <note>
224
228
  * <p>Not all resource types can be shared with IAM roles and users.
@@ -244,8 +248,7 @@ export interface AssociateResourceShareRequest {
244
248
  */
245
249
  clientToken?: string | undefined;
246
250
  /**
247
- * <p>Specifies from which source accounts the service principal
248
- * has access to the resources in this resource share.</p>
251
+ * <p>Specifies source constraints (accounts, ARNs, organization IDs, or organization paths) that limit when service principals can access resources in this resource share. When a service principal attempts to access a shared resource, validation is performed to ensure the request originates from one of the specified sources. This helps prevent confused deputy attacks by applying constraints on where service principals can access resources from.</p>
249
252
  * @public
250
253
  */
251
254
  sources?: string[] | undefined;
@@ -387,9 +390,10 @@ export interface CreatePermissionRequest {
387
390
  * <code>
388
391
  * <i><service-code></i>:<i><resource-type></i>
389
392
  * </code>
390
- * and is not case sensitive. For example, to specify an Amazon EC2 Subnet, you can use the
391
- * string <code>ec2:subnet</code>. To see the list of valid values for this parameter,
392
- * query the <a>ListResourceTypes</a> operation.</p>
393
+ * and is case sensitive. For example, to specify an Amazon EC2 Subnet, you can use the
394
+ * string <code>ec2:Subnet</code>. To see the list of valid values for this parameter,
395
+ * query the <a>ListResourceTypes</a> operation. This value must match the display name of the resource
396
+ * (available in <code>ListResourceTypes</code>).</p>
393
397
  * @public
394
398
  */
395
399
  resourceType: string | undefined;
@@ -841,6 +845,10 @@ export interface CreateResourceShareRequest {
841
845
  * <code>iam::123456789012user/username</code>
842
846
  * </p>
843
847
  * </li>
848
+ * <li>
849
+ * <p>A service principal name, for example: <code>service-id.amazonaws.com</code>
850
+ * </p>
851
+ * </li>
844
852
  * </ul>
845
853
  * <note>
846
854
  * <p>Not all resource types can be shared with IAM roles and users.
@@ -889,8 +897,7 @@ export interface CreateResourceShareRequest {
889
897
  */
890
898
  permissionArns?: string[] | undefined;
891
899
  /**
892
- * <p>Specifies from which source accounts the service principal
893
- * has access to the resources in this resource share.</p>
900
+ * <p>Specifies source constraints (accounts, ARNs, organization IDs, or organization paths) that limit when service principals can access resources in this resource share. When a service principal attempts to access a shared resource, validation is performed to ensure the request originates from one of the specified sources. This helps prevent confused deputy attacks by applying constraints on where service principals can access resources from.</p>
894
901
  * @public
895
902
  */
896
903
  sources?: string[] | undefined;
@@ -1211,6 +1218,10 @@ export interface DisassociateResourceShareRequest {
1211
1218
  * <code>iam::123456789012user/username</code>
1212
1219
  * </p>
1213
1220
  * </li>
1221
+ * <li>
1222
+ * <p>A service principal name, for example: <code>service-id.amazonaws.com</code>
1223
+ * </p>
1224
+ * </li>
1214
1225
  * </ul>
1215
1226
  * <note>
1216
1227
  * <p>Not all resource types can be shared with IAM roles and users.
@@ -1236,8 +1247,7 @@ export interface DisassociateResourceShareRequest {
1236
1247
  */
1237
1248
  clientToken?: string | undefined;
1238
1249
  /**
1239
- * <p>Specifies from which source accounts the
1240
- * service principal no longer has access to the resources in this resource share.</p>
1250
+ * <p>Specifies source constraints (accounts, ARNs, organization IDs, or organization paths) to remove from the resource share. This enables granular management of source constraints while maintaining service principal associations. At least one source must remain when service principals are present.</p>
1241
1251
  * @public
1242
1252
  */
1243
1253
  sources?: string[] | undefined;
@@ -1564,6 +1574,9 @@ export interface GetResourceShareInvitationsResponse {
1564
1574
  /**
1565
1575
  * <p>A tag key and optional list of possible values that you can use to filter results for
1566
1576
  * tagged resources.</p>
1577
+ * <note>
1578
+ * <p>Multiple tag filters are evaluated as an OR condition.</p>
1579
+ * </note>
1567
1580
  * @public
1568
1581
  */
1569
1582
  export interface TagFilter {
@@ -2198,6 +2211,10 @@ export interface ListPrincipalsRequest {
2198
2211
  * <code>iam::123456789012user/username</code>
2199
2212
  * </p>
2200
2213
  * </li>
2214
+ * <li>
2215
+ * <p>A service principal name, for example: <code>service-id.amazonaws.com</code>
2216
+ * </p>
2217
+ * </li>
2201
2218
  * </ul>
2202
2219
  * <note>
2203
2220
  * <p>Not all resource types can be shared with IAM roles and users.
@@ -2717,6 +2734,97 @@ export interface ListResourceTypesResponse {
2717
2734
  */
2718
2735
  nextToken?: string | undefined;
2719
2736
  }
2737
+ /**
2738
+ * @public
2739
+ */
2740
+ export interface ListSourceAssociationsRequest {
2741
+ /**
2742
+ * <p>The Amazon Resource Names (ARNs) of the resource shares for which you want to retrieve source associations.</p>
2743
+ * @public
2744
+ */
2745
+ resourceShareArns?: string[] | undefined;
2746
+ /**
2747
+ * <p>The identifier of the source for which you want to retrieve associations. This can be an account ID, Amazon Resource Name (ARN), organization ID, or organization path.</p>
2748
+ * @public
2749
+ */
2750
+ sourceId?: string | undefined;
2751
+ /**
2752
+ * <p>The type of source for which you want to retrieve associations.</p>
2753
+ * @public
2754
+ */
2755
+ sourceType?: string | undefined;
2756
+ /**
2757
+ * <p>The status of the source associations that you want to retrieve.</p>
2758
+ * @public
2759
+ */
2760
+ associationStatus?: ResourceShareAssociationStatus | undefined;
2761
+ /**
2762
+ * <p>The pagination token that indicates the next set of results to retrieve.</p>
2763
+ * @public
2764
+ */
2765
+ nextToken?: string | undefined;
2766
+ /**
2767
+ * <p>The maximum number of results to return in a single call. To retrieve the remaining results, make another call with the returned <code>nextToken</code> value.</p>
2768
+ * @public
2769
+ */
2770
+ maxResults?: number | undefined;
2771
+ }
2772
+ /**
2773
+ * <p>Information about a source association in a resource share. Source associations control which sources can be used with service principals.</p>
2774
+ * @public
2775
+ */
2776
+ export interface AssociatedSource {
2777
+ /**
2778
+ * <p>The Amazon Resource Name (ARN) of the resource share that contains the source association.</p>
2779
+ * @public
2780
+ */
2781
+ resourceShareArn?: string | undefined;
2782
+ /**
2783
+ * <p>The identifier of the source. This can be an account ID, Amazon Resource Name (ARN), organization ID, or organization path.</p>
2784
+ * @public
2785
+ */
2786
+ sourceId?: string | undefined;
2787
+ /**
2788
+ * <p>The type of source.</p>
2789
+ * @public
2790
+ */
2791
+ sourceType?: string | undefined;
2792
+ /**
2793
+ * <p>The current status of the source association.</p>
2794
+ * @public
2795
+ */
2796
+ status?: string | undefined;
2797
+ /**
2798
+ * <p>The date and time when the source association was last updated.</p>
2799
+ * @public
2800
+ */
2801
+ lastUpdatedTime?: Date | undefined;
2802
+ /**
2803
+ * <p>The date and time when the source association was created.</p>
2804
+ * @public
2805
+ */
2806
+ creationTime?: Date | undefined;
2807
+ /**
2808
+ * <p>A message about the status of the source association.</p>
2809
+ * @public
2810
+ */
2811
+ statusMessage?: string | undefined;
2812
+ }
2813
+ /**
2814
+ * @public
2815
+ */
2816
+ export interface ListSourceAssociationsResponse {
2817
+ /**
2818
+ * <p>Information about the source associations.</p>
2819
+ * @public
2820
+ */
2821
+ sourceAssociations?: AssociatedSource[] | undefined;
2822
+ /**
2823
+ * <p>The pagination token to use to retrieve the next page of results. This value is <code>null</code> when there are no more results to return.</p>
2824
+ * @public
2825
+ */
2826
+ nextToken?: string | undefined;
2827
+ }
2720
2828
  /**
2721
2829
  * @public
2722
2830
  */
@@ -0,0 +1,7 @@
1
+ import type { Paginator } from "@smithy/types";
2
+ import { ListSourceAssociationsCommandInput, ListSourceAssociationsCommandOutput } from "../commands/ListSourceAssociationsCommand";
3
+ import { RAMPaginationConfiguration } from "./Interfaces";
4
+ /**
5
+ * @public
6
+ */
7
+ export declare const paginateListSourceAssociations: (config: RAMPaginationConfiguration, input: ListSourceAssociationsCommandInput, ...rest: any[]) => Paginator<ListSourceAssociationsCommandOutput>;
@@ -12,3 +12,4 @@ export * from "./ListReplacePermissionAssociationsWorkPaginator";
12
12
  export * from "./ListResourcesPaginator";
13
13
  export * from "./ListResourceSharePermissionsPaginator";
14
14
  export * from "./ListResourceTypesPaginator";
15
+ export * from "./ListSourceAssociationsPaginator";
@@ -2,6 +2,7 @@ import type { StaticErrorSchema, StaticOperationSchema, StaticStructureSchema }
2
2
  export declare var AcceptResourceShareInvitationRequest$: StaticStructureSchema;
3
3
  export declare var AcceptResourceShareInvitationResponse$: StaticStructureSchema;
4
4
  export declare var AssociatedPermission$: StaticStructureSchema;
5
+ export declare var AssociatedSource$: StaticStructureSchema;
5
6
  export declare var AssociateResourceSharePermissionRequest$: StaticStructureSchema;
6
7
  export declare var AssociateResourceSharePermissionResponse$: StaticStructureSchema;
7
8
  export declare var AssociateResourceShareRequest$: StaticStructureSchema;
@@ -60,6 +61,8 @@ export declare var ListResourcesRequest$: StaticStructureSchema;
60
61
  export declare var ListResourcesResponse$: StaticStructureSchema;
61
62
  export declare var ListResourceTypesRequest$: StaticStructureSchema;
62
63
  export declare var ListResourceTypesResponse$: StaticStructureSchema;
64
+ export declare var ListSourceAssociationsRequest$: StaticStructureSchema;
65
+ export declare var ListSourceAssociationsResponse$: StaticStructureSchema;
63
66
  export declare var MalformedArnException$: StaticErrorSchema;
64
67
  export declare var MalformedPolicyTemplateException$: StaticErrorSchema;
65
68
  export declare var MissingRequiredParameterException$: StaticErrorSchema;
@@ -134,6 +137,7 @@ export declare var ListReplacePermissionAssociationsWork$: StaticOperationSchema
134
137
  export declare var ListResources$: StaticOperationSchema;
135
138
  export declare var ListResourceSharePermissions$: StaticOperationSchema;
136
139
  export declare var ListResourceTypes$: StaticOperationSchema;
140
+ export declare var ListSourceAssociations$: StaticOperationSchema;
137
141
  export declare var PromotePermissionCreatedFromPolicy$: StaticOperationSchema;
138
142
  export declare var PromoteResourceShareCreatedFromPolicy$: StaticOperationSchema;
139
143
  export declare var RejectResourceShareInvitation$: StaticOperationSchema;
@@ -107,6 +107,10 @@ import {
107
107
  ListResourceTypesCommandInput,
108
108
  ListResourceTypesCommandOutput,
109
109
  } from "./commands/ListResourceTypesCommand";
110
+ import {
111
+ ListSourceAssociationsCommandInput,
112
+ ListSourceAssociationsCommandOutput,
113
+ } from "./commands/ListSourceAssociationsCommand";
110
114
  import {
111
115
  PromotePermissionCreatedFromPolicyCommandInput,
112
116
  PromotePermissionCreatedFromPolicyCommandOutput,
@@ -497,6 +501,20 @@ export interface RAM {
497
501
  options: __HttpHandlerOptions,
498
502
  cb: (err: any, data?: ListResourceTypesCommandOutput) => void
499
503
  ): void;
504
+ listSourceAssociations(): Promise<ListSourceAssociationsCommandOutput>;
505
+ listSourceAssociations(
506
+ args: ListSourceAssociationsCommandInput,
507
+ options?: __HttpHandlerOptions
508
+ ): Promise<ListSourceAssociationsCommandOutput>;
509
+ listSourceAssociations(
510
+ args: ListSourceAssociationsCommandInput,
511
+ cb: (err: any, data?: ListSourceAssociationsCommandOutput) => void
512
+ ): void;
513
+ listSourceAssociations(
514
+ args: ListSourceAssociationsCommandInput,
515
+ options: __HttpHandlerOptions,
516
+ cb: (err: any, data?: ListSourceAssociationsCommandOutput) => void
517
+ ): void;
500
518
  promotePermissionCreatedFromPolicy(
501
519
  args: PromotePermissionCreatedFromPolicyCommandInput,
502
520
  options?: __HttpHandlerOptions
@@ -704,5 +722,12 @@ export interface RAM {
704
722
  Exclude<keyof PaginationConfiguration, "client">
705
723
  >
706
724
  ): Paginator<ListResourceTypesCommandOutput>;
725
+ paginateListSourceAssociations(
726
+ args?: ListSourceAssociationsCommandInput,
727
+ paginationConfig?: Pick<
728
+ PaginationConfiguration,
729
+ Exclude<keyof PaginationConfiguration, "client">
730
+ >
731
+ ): Paginator<ListSourceAssociationsCommandOutput>;
707
732
  }
708
733
  export declare class RAM extends RAMClient implements RAM {}
@@ -149,6 +149,10 @@ import {
149
149
  ListResourceTypesCommandInput,
150
150
  ListResourceTypesCommandOutput,
151
151
  } from "./commands/ListResourceTypesCommand";
152
+ import {
153
+ ListSourceAssociationsCommandInput,
154
+ ListSourceAssociationsCommandOutput,
155
+ } from "./commands/ListSourceAssociationsCommand";
152
156
  import {
153
157
  PromotePermissionCreatedFromPolicyCommandInput,
154
158
  PromotePermissionCreatedFromPolicyCommandOutput,
@@ -215,6 +219,7 @@ export type ServiceInputTypes =
215
219
  | ListResourceSharePermissionsCommandInput
216
220
  | ListResourceTypesCommandInput
217
221
  | ListResourcesCommandInput
222
+ | ListSourceAssociationsCommandInput
218
223
  | PromotePermissionCreatedFromPolicyCommandInput
219
224
  | PromoteResourceShareCreatedFromPolicyCommandInput
220
225
  | RejectResourceShareInvitationCommandInput
@@ -250,6 +255,7 @@ export type ServiceOutputTypes =
250
255
  | ListResourceSharePermissionsCommandOutput
251
256
  | ListResourceTypesCommandOutput
252
257
  | ListResourcesCommandOutput
258
+ | ListSourceAssociationsCommandOutput
253
259
  | PromotePermissionCreatedFromPolicyCommandOutput
254
260
  | PromoteResourceShareCreatedFromPolicyCommandOutput
255
261
  | RejectResourceShareInvitationCommandOutput