@jjrawlins/cdk-iam-policy-builder-helper 0.0.85 → 0.0.87

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 (98) hide show
  1. package/.jsii +3 -3
  2. package/cdkiampolicybuilderhelper/jsii/jsii.go +2 -2
  3. package/cdkiampolicybuilderhelper/version +1 -1
  4. package/lib/constructs/Actions.d.ts +50 -0
  5. package/lib/constructs/Actions.js +51 -1
  6. package/methods_list.txt +46 -0
  7. package/node_modules/@aws/lambda-invoke-store/README.md +35 -27
  8. package/node_modules/@aws/lambda-invoke-store/dist-cjs/invoke-store.js +104 -46
  9. package/node_modules/@aws/lambda-invoke-store/dist-es/invoke-store.js +104 -46
  10. package/node_modules/@aws/lambda-invoke-store/dist-types/invoke-store.benchmark.d.ts +1 -0
  11. package/node_modules/@aws/lambda-invoke-store/dist-types/invoke-store.d.ts +40 -47
  12. package/node_modules/@aws/lambda-invoke-store/package.json +2 -2
  13. package/node_modules/@aws-sdk/client-iam/README.md +64 -0
  14. package/node_modules/@aws-sdk/client-iam/dist-cjs/index.js +349 -71
  15. package/node_modules/@aws-sdk/client-iam/dist-es/IAM.js +16 -0
  16. package/node_modules/@aws-sdk/client-iam/dist-es/commands/AcceptDelegationRequestCommand.js +16 -0
  17. package/node_modules/@aws-sdk/client-iam/dist-es/commands/AssociateDelegationRequestCommand.js +16 -0
  18. package/node_modules/@aws-sdk/client-iam/dist-es/commands/GetDelegationRequestCommand.js +16 -0
  19. package/node_modules/@aws-sdk/client-iam/dist-es/commands/GetHumanReadableSummaryCommand.js +16 -0
  20. package/node_modules/@aws-sdk/client-iam/dist-es/commands/ListDelegationRequestsCommand.js +16 -0
  21. package/node_modules/@aws-sdk/client-iam/dist-es/commands/RejectDelegationRequestCommand.js +16 -0
  22. package/node_modules/@aws-sdk/client-iam/dist-es/commands/SendDelegationTokenCommand.js +16 -0
  23. package/node_modules/@aws-sdk/client-iam/dist-es/commands/UpdateDelegationRequestCommand.js +16 -0
  24. package/node_modules/@aws-sdk/client-iam/dist-es/commands/index.js +8 -0
  25. package/node_modules/@aws-sdk/client-iam/dist-es/models/models_0.js +61 -40
  26. package/node_modules/@aws-sdk/client-iam/dist-es/models/models_1.js +4 -0
  27. package/node_modules/@aws-sdk/client-iam/dist-es/schemas/schemas_0.js +172 -34
  28. package/node_modules/@aws-sdk/client-iam/dist-types/IAM.d.ts +57 -0
  29. package/node_modules/@aws-sdk/client-iam/dist-types/IAMClient.d.ts +10 -2
  30. package/node_modules/@aws-sdk/client-iam/dist-types/commands/AcceptDelegationRequestCommand.d.ts +92 -0
  31. package/node_modules/@aws-sdk/client-iam/dist-types/commands/AssociateDelegationRequestCommand.d.ts +108 -0
  32. package/node_modules/@aws-sdk/client-iam/dist-types/commands/CreateDelegationRequestCommand.d.ts +5 -1
  33. package/node_modules/@aws-sdk/client-iam/dist-types/commands/GenerateOrganizationsAccessReportCommand.d.ts +2 -2
  34. package/node_modules/@aws-sdk/client-iam/dist-types/commands/GenerateServiceLastAccessedDetailsCommand.d.ts +2 -2
  35. package/node_modules/@aws-sdk/client-iam/dist-types/commands/GetDelegationRequestCommand.d.ts +127 -0
  36. package/node_modules/@aws-sdk/client-iam/dist-types/commands/GetHumanReadableSummaryCommand.d.ts +105 -0
  37. package/node_modules/@aws-sdk/client-iam/dist-types/commands/ListDelegationRequestsCommand.d.ts +132 -0
  38. package/node_modules/@aws-sdk/client-iam/dist-types/commands/PutGroupPolicyCommand.d.ts +1 -1
  39. package/node_modules/@aws-sdk/client-iam/dist-types/commands/PutRolePermissionsBoundaryCommand.d.ts +1 -1
  40. package/node_modules/@aws-sdk/client-iam/dist-types/commands/PutRolePolicyCommand.d.ts +1 -1
  41. package/node_modules/@aws-sdk/client-iam/dist-types/commands/PutUserPermissionsBoundaryCommand.d.ts +1 -1
  42. package/node_modules/@aws-sdk/client-iam/dist-types/commands/PutUserPolicyCommand.d.ts +1 -1
  43. package/node_modules/@aws-sdk/client-iam/dist-types/commands/RejectDelegationRequestCommand.d.ts +96 -0
  44. package/node_modules/@aws-sdk/client-iam/dist-types/commands/RemoveClientIDFromOpenIDConnectProviderCommand.d.ts +1 -1
  45. package/node_modules/@aws-sdk/client-iam/dist-types/commands/RemoveRoleFromInstanceProfileCommand.d.ts +1 -1
  46. package/node_modules/@aws-sdk/client-iam/dist-types/commands/RemoveUserFromGroupCommand.d.ts +1 -1
  47. package/node_modules/@aws-sdk/client-iam/dist-types/commands/ResetServiceSpecificCredentialCommand.d.ts +1 -1
  48. package/node_modules/@aws-sdk/client-iam/dist-types/commands/ResyncMFADeviceCommand.d.ts +1 -1
  49. package/node_modules/@aws-sdk/client-iam/dist-types/commands/SendDelegationTokenCommand.d.ts +98 -0
  50. package/node_modules/@aws-sdk/client-iam/dist-types/commands/SetDefaultPolicyVersionCommand.d.ts +1 -1
  51. package/node_modules/@aws-sdk/client-iam/dist-types/commands/UpdateDelegationRequestCommand.d.ts +96 -0
  52. package/node_modules/@aws-sdk/client-iam/dist-types/commands/index.d.ts +8 -0
  53. package/node_modules/@aws-sdk/client-iam/dist-types/models/models_0.d.ts +472 -412
  54. package/node_modules/@aws-sdk/client-iam/dist-types/models/models_1.d.ts +372 -1
  55. package/node_modules/@aws-sdk/client-iam/dist-types/schemas/schemas_0.d.ts +22 -0
  56. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/IAM.d.ts +137 -0
  57. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/IAMClient.d.ts +48 -0
  58. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/AcceptDelegationRequestCommand.d.ts +47 -0
  59. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/AssociateDelegationRequestCommand.d.ts +47 -0
  60. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/GetDelegationRequestCommand.d.ts +51 -0
  61. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/GetHumanReadableSummaryCommand.d.ts +51 -0
  62. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/ListDelegationRequestsCommand.d.ts +51 -0
  63. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/PutGroupPolicyCommand.d.ts +1 -1
  64. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/PutRolePermissionsBoundaryCommand.d.ts +1 -1
  65. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/PutRolePolicyCommand.d.ts +1 -1
  66. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/PutUserPermissionsBoundaryCommand.d.ts +1 -1
  67. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/PutUserPolicyCommand.d.ts +1 -1
  68. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/RejectDelegationRequestCommand.d.ts +47 -0
  69. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/RemoveClientIDFromOpenIDConnectProviderCommand.d.ts +1 -1
  70. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/RemoveRoleFromInstanceProfileCommand.d.ts +1 -1
  71. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/RemoveUserFromGroupCommand.d.ts +1 -1
  72. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/ResetServiceSpecificCredentialCommand.d.ts +1 -1
  73. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/ResyncMFADeviceCommand.d.ts +1 -1
  74. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/SendDelegationTokenCommand.d.ts +46 -0
  75. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/SetDefaultPolicyVersionCommand.d.ts +1 -1
  76. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/UpdateDelegationRequestCommand.d.ts +47 -0
  77. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/commands/index.d.ts +8 -0
  78. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/models/models_0.d.ts +111 -82
  79. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/models/models_1.d.ts +70 -1
  80. package/node_modules/@aws-sdk/client-iam/dist-types/ts3.4/schemas/schemas_0.d.ts +22 -0
  81. package/node_modules/@aws-sdk/client-iam/package.json +6 -6
  82. package/node_modules/@aws-sdk/client-sso/package.json +5 -5
  83. package/node_modules/@aws-sdk/core/package.json +1 -1
  84. package/node_modules/@aws-sdk/credential-provider-env/package.json +2 -2
  85. package/node_modules/@aws-sdk/credential-provider-http/package.json +2 -2
  86. package/node_modules/@aws-sdk/credential-provider-ini/package.json +8 -8
  87. package/node_modules/@aws-sdk/credential-provider-node/package.json +7 -7
  88. package/node_modules/@aws-sdk/credential-provider-process/package.json +2 -2
  89. package/node_modules/@aws-sdk/credential-provider-sso/package.json +4 -4
  90. package/node_modules/@aws-sdk/credential-provider-web-identity/package.json +3 -3
  91. package/node_modules/@aws-sdk/middleware-recursion-detection/dist-cjs/recursionDetectionMiddleware.js +2 -1
  92. package/node_modules/@aws-sdk/middleware-recursion-detection/dist-es/recursionDetectionMiddleware.js +2 -1
  93. package/node_modules/@aws-sdk/middleware-recursion-detection/package.json +2 -2
  94. package/node_modules/@aws-sdk/middleware-user-agent/package.json +2 -2
  95. package/node_modules/@aws-sdk/nested-clients/package.json +5 -5
  96. package/node_modules/@aws-sdk/token-providers/package.json +3 -3
  97. package/node_modules/@aws-sdk/util-user-agent-node/package.json +2 -2
  98. package/package.json +2 -2
@@ -1,5 +1,54 @@
1
1
  import { ExceptionOptionType as __ExceptionOptionType } from "@smithy/smithy-client";
2
2
  import { IAMServiceException as __BaseException } from "./IAMServiceException";
3
+ /**
4
+ * @public
5
+ */
6
+ export interface AcceptDelegationRequestRequest {
7
+ /**
8
+ * <p>The unique identifier of the delegation request to accept.</p>
9
+ * @public
10
+ */
11
+ DelegationRequestId: string | undefined;
12
+ }
13
+ /**
14
+ * <p>The request was rejected because multiple requests to change this object were submitted
15
+ * simultaneously. Wait a few minutes and submit your request again.</p>
16
+ * @public
17
+ */
18
+ export declare class ConcurrentModificationException extends __BaseException {
19
+ readonly name: "ConcurrentModificationException";
20
+ readonly $fault: "client";
21
+ /**
22
+ * @internal
23
+ */
24
+ constructor(opts: __ExceptionOptionType<ConcurrentModificationException, __BaseException>);
25
+ }
26
+ /**
27
+ * <p>The request was rejected because it referenced a resource entity that does not exist. The
28
+ * error message describes the resource.</p>
29
+ * @public
30
+ */
31
+ export declare class NoSuchEntityException extends __BaseException {
32
+ readonly name: "NoSuchEntityException";
33
+ readonly $fault: "client";
34
+ /**
35
+ * @internal
36
+ */
37
+ constructor(opts: __ExceptionOptionType<NoSuchEntityException, __BaseException>);
38
+ }
39
+ /**
40
+ * <p>The request processing has failed because of an unknown error, exception or
41
+ * failure.</p>
42
+ * @public
43
+ */
44
+ export declare class ServiceFailureException extends __BaseException {
45
+ readonly name: "ServiceFailureException";
46
+ readonly $fault: "server";
47
+ /**
48
+ * @internal
49
+ */
50
+ constructor(opts: __ExceptionOptionType<ServiceFailureException, __BaseException>);
51
+ }
3
52
  /**
4
53
  * @public
5
54
  * @enum
@@ -247,19 +296,6 @@ export interface AddClientIDToOpenIDConnectProviderRequest {
247
296
  */
248
297
  ClientID: string | undefined;
249
298
  }
250
- /**
251
- * <p>The request was rejected because multiple requests to change this object were submitted
252
- * simultaneously. Wait a few minutes and submit your request again.</p>
253
- * @public
254
- */
255
- export declare class ConcurrentModificationException extends __BaseException {
256
- readonly name: "ConcurrentModificationException";
257
- readonly $fault: "client";
258
- /**
259
- * @internal
260
- */
261
- constructor(opts: __ExceptionOptionType<ConcurrentModificationException, __BaseException>);
262
- }
263
299
  /**
264
300
  * <p>The request was rejected because an invalid or out-of-range value was supplied for an
265
301
  * input parameter.</p>
@@ -286,32 +322,6 @@ export declare class LimitExceededException extends __BaseException {
286
322
  */
287
323
  constructor(opts: __ExceptionOptionType<LimitExceededException, __BaseException>);
288
324
  }
289
- /**
290
- * <p>The request was rejected because it referenced a resource entity that does not exist. The
291
- * error message describes the resource.</p>
292
- * @public
293
- */
294
- export declare class NoSuchEntityException extends __BaseException {
295
- readonly name: "NoSuchEntityException";
296
- readonly $fault: "client";
297
- /**
298
- * @internal
299
- */
300
- constructor(opts: __ExceptionOptionType<NoSuchEntityException, __BaseException>);
301
- }
302
- /**
303
- * <p>The request processing has failed because of an unknown error, exception or
304
- * failure.</p>
305
- * @public
306
- */
307
- export declare class ServiceFailureException extends __BaseException {
308
- readonly name: "ServiceFailureException";
309
- readonly $fault: "server";
310
- /**
311
- * @internal
312
- */
313
- constructor(opts: __ExceptionOptionType<ServiceFailureException, __BaseException>);
314
- }
315
325
  /**
316
326
  * @public
317
327
  */
@@ -403,6 +413,16 @@ export declare const AssignmentStatusType: {
403
413
  * @public
404
414
  */
405
415
  export type AssignmentStatusType = (typeof AssignmentStatusType)[keyof typeof AssignmentStatusType];
416
+ /**
417
+ * @public
418
+ */
419
+ export interface AssociateDelegationRequestRequest {
420
+ /**
421
+ * <p>The unique identifier of the delegation request to associate.</p>
422
+ * @public
423
+ */
424
+ DelegationRequestId: string | undefined;
425
+ }
406
426
  /**
407
427
  * @public
408
428
  * @enum
@@ -639,40 +659,39 @@ export declare const PolicyParameterTypeEnum: {
639
659
  */
640
660
  export type PolicyParameterTypeEnum = (typeof PolicyParameterTypeEnum)[keyof typeof PolicyParameterTypeEnum];
641
661
  /**
642
- * <p></p>
662
+ * <p>Contains information about a policy parameter used to customize delegated permissions.</p>
643
663
  * @public
644
664
  */
645
665
  export interface PolicyParameter {
646
666
  /**
647
- * <p></p>
667
+ * <p>The name of the policy parameter.</p>
648
668
  * @public
649
669
  */
650
670
  Name?: string | undefined;
651
671
  /**
652
- * <p></p>
672
+ * <p>The allowed values for the policy parameter.</p>
653
673
  * @public
654
674
  */
655
675
  Values?: string[] | undefined;
656
676
  /**
657
- * <p></p>
677
+ * <p>The data type of the policy parameter value.</p>
658
678
  * @public
659
679
  */
660
680
  Type?: PolicyParameterTypeEnum | undefined;
661
681
  }
662
682
  /**
663
- * <p></p>
683
+ * <p>Contains information about the permissions being delegated in a delegation request.</p>
664
684
  * @public
665
685
  */
666
686
  export interface DelegationPermission {
667
687
  /**
668
- * <p>The Amazon Resource Name (ARN). ARNs are unique identifiers for Amazon Web Services resources.</p>
669
- * <p>For more information about ARNs, go to <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs)</a> in
670
- * the <i>Amazon Web Services General Reference</i>. </p>
688
+ * <p>This ARN maps to a pre-registered policy content for this partner.
689
+ * See the <a href="">partner onboarding documentation</a> to understand how to create a delegation template.</p>
671
690
  * @public
672
691
  */
673
692
  PolicyTemplateArn?: string | undefined;
674
693
  /**
675
- * <p></p>
694
+ * <p>A list of policy parameters that define the scope and constraints of the delegated permissions.</p>
676
695
  * @public
677
696
  */
678
697
  Parameters?: PolicyParameter[] | undefined;
@@ -682,47 +701,68 @@ export interface DelegationPermission {
682
701
  */
683
702
  export interface CreateDelegationRequestRequest {
684
703
  /**
685
- * <p></p>
704
+ * <p>The Amazon Web Services account ID this delegation request is targeted to.</p>
705
+ * <p>If the account ID is not known, this parameter can be omitted, resulting in a request that can be associated by
706
+ * any account. If the account ID passed, then the created delegation request can only be associated with an
707
+ * identity of that target account.</p>
686
708
  * @public
687
709
  */
688
710
  OwnerAccountId?: string | undefined;
689
711
  /**
690
- * <p></p>
712
+ * <p>A description of the delegation request.</p>
691
713
  * @public
692
714
  */
693
715
  Description: string | undefined;
694
716
  /**
695
- * <p></p>
717
+ * <p>The permissions to be delegated in this delegation request.</p>
696
718
  * @public
697
719
  */
698
720
  Permissions: DelegationPermission | undefined;
699
721
  /**
700
- * <p></p>
722
+ * <p>A message explaining the reason for the delegation request.</p>
723
+ * <p>Requesters can utilize this field to add a custom note to the delegation request. This field is different from the
724
+ * description such that this is to be utilized for a custom messaging on a case-by-case basis.</p>
725
+ * <p>For example, if the current delegation request is in response to a previous request being rejected, this explanation
726
+ * can be added to the request via this field.</p>
701
727
  * @public
702
728
  */
703
729
  RequestMessage?: string | undefined;
704
730
  /**
705
- * <p></p>
731
+ * <p>The workflow ID associated with the requestor.</p>
732
+ * <p>This is the unique identifier on the partner side that can be used to track the progress of the request.</p>
733
+ * <p>IAM maintains a uniqueness check on this workflow id for each request - if a workflow id for an existing request
734
+ * is passed, this API call will fail.</p>
706
735
  * @public
707
736
  */
708
737
  RequestorWorkflowId: string | undefined;
709
738
  /**
710
- * <p></p>
739
+ * <p>The URL to redirect to after the delegation request is processed.</p>
740
+ * <p>This URL is used by the IAM console to show a link to the customer to re-load the partner workflow.</p>
711
741
  * @public
712
742
  */
713
743
  RedirectUrl?: string | undefined;
714
744
  /**
715
- * <p></p>
745
+ * <p>The notification channel for updates about the delegation request.</p>
746
+ * <p>At this time,only SNS topic ARNs are accepted for notification. This topic ARN must have a resource policy granting
747
+ * <code>SNS:Publish</code> permission to the IAM service principal (<code>iam.amazonaws.com</code>). See
748
+ * <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies-temporary-delegation-partner-guide.html">partner onboarding documentation</a> for more details.
749
+ * </p>
716
750
  * @public
717
751
  */
718
752
  NotificationChannel: string | undefined;
719
753
  /**
720
- * <p></p>
754
+ * <p>The duration for which the delegated session should remain active, in seconds.</p>
755
+ * <p>The active time window for the session starts when the customer calls the
756
+ * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SendDelegationToken.html">SendDelegationToken</a> API.</p>
721
757
  * @public
722
758
  */
723
759
  SessionDuration: number | undefined;
724
760
  /**
725
- * <p></p>
761
+ * <p>Specifies whether the delegation token should only be sent by the owner.</p>
762
+ * <p>This flag prevents any party other than the owner from calling <code>SendDelegationToken</code> API for this delegation request.
763
+ * This behavior becomes useful when the delegation request owner needs to be present for subsequent partner interactions, but the delegation request was sent
764
+ * to a more privileged user for approval due to the owner lacking sufficient delegation permissions.
765
+ * </p>
726
766
  * @public
727
767
  */
728
768
  OnlySendByOwner?: boolean | undefined;
@@ -732,12 +772,15 @@ export interface CreateDelegationRequestRequest {
732
772
  */
733
773
  export interface CreateDelegationRequestResponse {
734
774
  /**
735
- * <p></p>
775
+ * <p>A deep link URL to the Amazon Web Services Management Console for managing the delegation request.</p>
776
+ * <p>For a console based workflow, partners should redirect the customer to this URL.
777
+ * If the customer is not logged in to any Amazon Web Services account, the Amazon Web Services workflow will
778
+ * automatically direct the customer to log in and then display the delegation request approval page.</p>
736
779
  * @public
737
780
  */
738
781
  ConsoleDeepLink?: string | undefined;
739
782
  /**
740
- * <p></p>
783
+ * <p>The unique identifier for the created delegation request.</p>
741
784
  * @public
742
785
  */
743
786
  DelegationRequestId?: string | undefined;
@@ -3587,6 +3630,241 @@ export interface GetCredentialReportResponse {
3587
3630
  */
3588
3631
  GeneratedTime?: Date | undefined;
3589
3632
  }
3633
+ /**
3634
+ * @public
3635
+ */
3636
+ export interface GetDelegationRequestRequest {
3637
+ /**
3638
+ * <p>The unique identifier of the delegation request to retrieve.</p>
3639
+ * @public
3640
+ */
3641
+ DelegationRequestId: string | undefined;
3642
+ /**
3643
+ * <p>Specifies whether to perform a permission check for the delegation request.</p>
3644
+ * <p>If set to true, the <code>GetDelegationRequest</code> API call will start a permission check process. This process
3645
+ * calculates whether the caller has sufficient permissions to cover the asks from this delegation request.</p>
3646
+ * <p>Setting this parameter to true does not guarantee an answer in the response. See the <code>PermissionCheckStatus</code>
3647
+ * and the <code>PermissionCheckResult</code> response attributes for further details.</p>
3648
+ * @public
3649
+ */
3650
+ DelegationPermissionCheck?: boolean | undefined;
3651
+ }
3652
+ /**
3653
+ * @public
3654
+ * @enum
3655
+ */
3656
+ export declare const StateType: {
3657
+ readonly ACCEPTED: "ACCEPTED";
3658
+ readonly ASSIGNED: "ASSIGNED";
3659
+ readonly EXPIRED: "EXPIRED";
3660
+ readonly FINALIZED: "FINALIZED";
3661
+ readonly PENDING_APPROVAL: "PENDING_APPROVAL";
3662
+ readonly REJECTED: "REJECTED";
3663
+ readonly UNASSIGNED: "UNASSIGNED";
3664
+ };
3665
+ /**
3666
+ * @public
3667
+ */
3668
+ export type StateType = (typeof StateType)[keyof typeof StateType];
3669
+ /**
3670
+ * <p>Contains information about a delegation request, including its status, permissions, and associated metadata.</p>
3671
+ * @public
3672
+ */
3673
+ export interface DelegationRequest {
3674
+ /**
3675
+ * <p>The unique identifier for the delegation request.</p>
3676
+ * @public
3677
+ */
3678
+ DelegationRequestId?: string | undefined;
3679
+ /**
3680
+ * <p>Amazon Web Services account ID of the owner of the delegation request.</p>
3681
+ * @public
3682
+ */
3683
+ OwnerAccountId?: string | undefined;
3684
+ /**
3685
+ * <p>Description of the delegation request. This is a message that is provided by the Amazon Web Services
3686
+ * partner that filed the delegation request.</p>
3687
+ * @public
3688
+ */
3689
+ Description?: string | undefined;
3690
+ /**
3691
+ * <p>A custom message that is added to the delegation request by the partner.</p>
3692
+ * <p>This element is different from the <code>Description</code> element such that this is a
3693
+ * request specific message injected by the partner. The <code>Description</code> is typically
3694
+ * a generic explanation of what the delegation request is targeted to do.</p>
3695
+ * @public
3696
+ */
3697
+ RequestMessage?: string | undefined;
3698
+ /**
3699
+ * <p>Contains information about the permissions being delegated in a delegation request.</p>
3700
+ * @public
3701
+ */
3702
+ Permissions?: DelegationPermission | undefined;
3703
+ /**
3704
+ * <p>JSON content of the associated permission policy of this delegation request.</p>
3705
+ * @public
3706
+ */
3707
+ PermissionPolicy?: string | undefined;
3708
+ /**
3709
+ * <p>If the <code>PermissionPolicy</code> includes role creation permissions, this element will
3710
+ * include the list of permissions boundary policies associated with the role creation.
3711
+ * See <a href="IAM/latest/UserGuide/access_policies_boundaries.html">Permissions boundaries for IAM entities</a>
3712
+ * for more details about IAM permission boundaries.
3713
+ * </p>
3714
+ * @public
3715
+ */
3716
+ RolePermissionRestrictionArns?: string[] | undefined;
3717
+ /**
3718
+ * <p>ARN of the owner of this delegation request.</p>
3719
+ * @public
3720
+ */
3721
+ OwnerId?: string | undefined;
3722
+ /**
3723
+ * <p>The Amazon Resource Name (ARN). ARNs are unique identifiers for Amazon Web Services resources.</p>
3724
+ * <p>For more information about ARNs, go to <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs)</a> in
3725
+ * the <i>Amazon Web Services General Reference</i>. </p>
3726
+ * @public
3727
+ */
3728
+ ApproverId?: string | undefined;
3729
+ /**
3730
+ * <p>The state of this delegation request.</p>
3731
+ * <p>See the <a href="IAM/latest/UserGuide/temporary-delegation-building-integration.html">Understanding the Request Lifecycle</a> for an explanation of how these
3732
+ * states are transitioned.</p>
3733
+ * @public
3734
+ */
3735
+ State?: StateType | undefined;
3736
+ /**
3737
+ * <p>Identity of the requestor of this delegation request. This will be an Amazon Web Services account ID.</p>
3738
+ * @public
3739
+ */
3740
+ RequestorId?: string | undefined;
3741
+ /**
3742
+ * <p>A friendly name of the requestor.</p>
3743
+ * @public
3744
+ */
3745
+ RequestorName?: string | undefined;
3746
+ /**
3747
+ * <p>Creation date (timestamp) of this delegation request.</p>
3748
+ * @public
3749
+ */
3750
+ CreateDate?: Date | undefined;
3751
+ /**
3752
+ * <p>The life-time of the requested session credential.</p>
3753
+ * @public
3754
+ */
3755
+ SessionDuration?: number | undefined;
3756
+ /**
3757
+ * <p>A URL to be redirected to once the delegation request is approved. Partners provide this URL when
3758
+ * creating the delegation request.</p>
3759
+ * @public
3760
+ */
3761
+ RedirectUrl?: string | undefined;
3762
+ /**
3763
+ * <p>Notes added to this delegation request, if this request was updated via the
3764
+ * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_UpdateDelegationRequest.html">UpdateDelegationRequest</a>
3765
+ * API.</p>
3766
+ * @public
3767
+ */
3768
+ Notes?: string | undefined;
3769
+ /**
3770
+ * <p>Reasons for rejecting this delegation request, if this request was rejected. See also
3771
+ * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_RejectDelegationRequest.html">RejectDelegationRequest</a>
3772
+ * API documentation.
3773
+ * </p>
3774
+ * @public
3775
+ */
3776
+ RejectionReason?: string | undefined;
3777
+ /**
3778
+ * <p>A flag indicating whether the
3779
+ * <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_SendDelegationToken.html">SendDelegationToken</a>
3780
+ * must be called by the owner of this delegation request. This is set by the requesting partner.</p>
3781
+ * @public
3782
+ */
3783
+ OnlySendByOwner?: boolean | undefined;
3784
+ /**
3785
+ * <p>Last updated timestamp of the request.</p>
3786
+ * @public
3787
+ */
3788
+ UpdatedTime?: Date | undefined;
3789
+ }
3790
+ /**
3791
+ * @public
3792
+ * @enum
3793
+ */
3794
+ export declare const PermissionCheckResultType: {
3795
+ readonly ALLOWED: "ALLOWED";
3796
+ readonly DENIED: "DENIED";
3797
+ readonly UNSURE: "UNSURE";
3798
+ };
3799
+ /**
3800
+ * @public
3801
+ */
3802
+ export type PermissionCheckResultType = (typeof PermissionCheckResultType)[keyof typeof PermissionCheckResultType];
3803
+ /**
3804
+ * @public
3805
+ * @enum
3806
+ */
3807
+ export declare const PermissionCheckStatusType: {
3808
+ readonly COMPLETE: "COMPLETE";
3809
+ readonly FAILED: "FAILED";
3810
+ readonly IN_PROGRESS: "IN_PROGRESS";
3811
+ };
3812
+ /**
3813
+ * @public
3814
+ */
3815
+ export type PermissionCheckStatusType = (typeof PermissionCheckStatusType)[keyof typeof PermissionCheckStatusType];
3816
+ /**
3817
+ * @public
3818
+ */
3819
+ export interface GetDelegationRequestResponse {
3820
+ /**
3821
+ * <p>The delegation request object containing all details about the request.</p>
3822
+ * @public
3823
+ */
3824
+ DelegationRequest?: DelegationRequest | undefined;
3825
+ /**
3826
+ * <p>The status of the permission check for the delegation request.</p>
3827
+ * <p>This value indicates the status of the process to check whether the caller has sufficient permissions to cover the requested actions in the delegation request.
3828
+ * Since this is an asynchronous process, there are three potential values:</p>
3829
+ * <ul>
3830
+ * <li>
3831
+ * <p>
3832
+ * <code>IN_PROGRESS</code> : The permission check process has started.</p>
3833
+ * </li>
3834
+ * <li>
3835
+ * <p>
3836
+ * <code>COMPLETED</code> : The permission check process has completed. The <code>PermissionCheckResult</code> will include the result.</p>
3837
+ * </li>
3838
+ * <li>
3839
+ * <p>
3840
+ * <code>FAILED</code> : The permission check process has failed.</p>
3841
+ * </li>
3842
+ * </ul>
3843
+ * @public
3844
+ */
3845
+ PermissionCheckStatus?: PermissionCheckStatusType | undefined;
3846
+ /**
3847
+ * <p>The result of the permission check, indicating whether the caller has sufficient permissions to cover the requested permissions.
3848
+ * This is an approximate result.</p>
3849
+ * <ul>
3850
+ * <li>
3851
+ * <p>
3852
+ * <code>ALLOWED</code> : The caller has sufficient permissions cover all the requested permissions.</p>
3853
+ * </li>
3854
+ * <li>
3855
+ * <p>
3856
+ * <code>DENIED</code> : The caller does not have sufficient permissions to cover all the requested permissions.</p>
3857
+ * </li>
3858
+ * <li>
3859
+ * <p>
3860
+ * <code>UNSURE</code> : It is not possible to determine whether the caller has all the permissions needed.
3861
+ * This output is most likely for cases when the caller has permissions with conditions.</p>
3862
+ * </li>
3863
+ * </ul>
3864
+ * @public
3865
+ */
3866
+ PermissionCheckResult?: PermissionCheckResultType | undefined;
3867
+ }
3590
3868
  /**
3591
3869
  * @public
3592
3870
  */
@@ -3699,11 +3977,67 @@ export interface GetGroupPolicyResponse {
3699
3977
  /**
3700
3978
  * @public
3701
3979
  */
3702
- export interface GetInstanceProfileRequest {
3980
+ export interface GetHumanReadableSummaryRequest {
3703
3981
  /**
3704
- * <p>The name of the instance profile to get information about.</p>
3705
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
3706
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
3982
+ * <p>Arn of the entity to be summarized. At this time, the only supported
3983
+ * entity type is <code>delegation-request</code>
3984
+ * </p>
3985
+ * @public
3986
+ */
3987
+ EntityArn: string | undefined;
3988
+ /**
3989
+ * <p>A string representing the locale to use for the summary generation. The
3990
+ * supported locale strings are based on the <a href="/awsconsolehelpdocs/latest/gsg/change-language.html#supported-languages">
3991
+ * Supported languages of the Amazon Web Services Management Console
3992
+ * </a>.</p>
3993
+ * @public
3994
+ */
3995
+ Locale?: string | undefined;
3996
+ }
3997
+ /**
3998
+ * @public
3999
+ * @enum
4000
+ */
4001
+ export declare const SummaryStateType: {
4002
+ readonly AVAILABLE: "AVAILABLE";
4003
+ readonly FAILED: "FAILED";
4004
+ readonly NOT_AVAILABLE: "NOT_AVAILABLE";
4005
+ readonly NOT_SUPPORTED: "NOT_SUPPORTED";
4006
+ };
4007
+ /**
4008
+ * @public
4009
+ */
4010
+ export type SummaryStateType = (typeof SummaryStateType)[keyof typeof SummaryStateType];
4011
+ /**
4012
+ * @public
4013
+ */
4014
+ export interface GetHumanReadableSummaryResponse {
4015
+ /**
4016
+ * <p>Summary content in the specified locale. Summary content is non-empty only if the
4017
+ * <code>SummaryState</code> is <code>AVAILABLE</code>.</p>
4018
+ * @public
4019
+ */
4020
+ SummaryContent?: string | undefined;
4021
+ /**
4022
+ * <p>The locale that this response was generated for. This maps to the input locale.</p>
4023
+ * @public
4024
+ */
4025
+ Locale?: string | undefined;
4026
+ /**
4027
+ * <p>State of summary generation. This generation process is asynchronous and this attribute indicates the
4028
+ * state of the generation process.</p>
4029
+ * @public
4030
+ */
4031
+ SummaryState?: SummaryStateType | undefined;
4032
+ }
4033
+ /**
4034
+ * @public
4035
+ */
4036
+ export interface GetInstanceProfileRequest {
4037
+ /**
4038
+ * <p>The name of the instance profile to get information about.</p>
4039
+ * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
4040
+ * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
3707
4041
  * @public
3708
4042
  */
3709
4043
  InstanceProfileName: string | undefined;
@@ -3932,13 +4266,13 @@ export interface GetOrganizationsAccessReportResponse {
3932
4266
  */
3933
4267
  JobStatus: JobStatusType | undefined;
3934
4268
  /**
3935
- * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4269
+ * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
3936
4270
  * format</a>, when the report job was created.</p>
3937
4271
  * @public
3938
4272
  */
3939
4273
  JobCreationDate: Date | undefined;
3940
4274
  /**
3941
- * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4275
+ * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
3942
4276
  * format</a>, when the generated report job was completed or failed.</p>
3943
4277
  * <p>This field is null if the job is still in progress, as indicated by a job status value
3944
4278
  * of <code>IN_PROGRESS</code>.</p>
@@ -3958,7 +4292,7 @@ export interface GetOrganizationsAccessReportResponse {
3958
4292
  */
3959
4293
  NumberOfServicesNotAccessed?: number | undefined;
3960
4294
  /**
3961
- * <p>An object that contains details about the most recent attempt to access the
4295
+ * <p>An object that contains details about the most recent attempt to access the
3962
4296
  * service.</p>
3963
4297
  * @public
3964
4298
  */
@@ -4432,19 +4766,19 @@ export interface GetServiceLastAccessedDetailsResponse {
4432
4766
  */
4433
4767
  JobType?: AccessAdvisorUsageGranularityType | undefined;
4434
4768
  /**
4435
- * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4769
+ * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4436
4770
  * format</a>, when the report job was created.</p>
4437
4771
  * @public
4438
4772
  */
4439
4773
  JobCreationDate: Date | undefined;
4440
4774
  /**
4441
- * <p> A <code>ServiceLastAccessed</code> object that contains details about the most recent
4775
+ * <p> A <code>ServiceLastAccessed</code> object that contains details about the most recent
4442
4776
  * attempt to access the service.</p>
4443
4777
  * @public
4444
4778
  */
4445
4779
  ServicesLastAccessed: ServiceLastAccessed[] | undefined;
4446
4780
  /**
4447
- * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4781
+ * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4448
4782
  * format</a>, when the generated report job was completed or failed.</p>
4449
4783
  * <p>This field is null if the job is still in progress, as indicated by a job status value
4450
4784
  * of <code>IN_PROGRESS</code>.</p>
@@ -4492,7 +4826,7 @@ export interface GetServiceLastAccessedDetailsWithEntitiesRequest {
4492
4826
  * details for that service. In the first paragraph, find the service prefix. For example,
4493
4827
  * <code>(service prefix: a4b)</code>. For more information about service namespaces,
4494
4828
  * see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces">Amazon Web Services
4495
- * service namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
4829
+ * service namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
4496
4830
  * @public
4497
4831
  */
4498
4832
  ServiceNamespace: string | undefined;
@@ -4599,13 +4933,13 @@ export interface GetServiceLastAccessedDetailsWithEntitiesResponse {
4599
4933
  */
4600
4934
  JobStatus: JobStatusType | undefined;
4601
4935
  /**
4602
- * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4936
+ * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4603
4937
  * format</a>, when the report job was created.</p>
4604
4938
  * @public
4605
4939
  */
4606
4940
  JobCreationDate: Date | undefined;
4607
4941
  /**
4608
- * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4942
+ * <p>The date and time, in <a href="http://www.iso.org/iso/iso8601">ISO 8601 date-time
4609
4943
  * format</a>, when the generated report job was completed or failed.</p>
4610
4944
  * <p>This field is null if the job is still in progress, as indicated by a job status value
4611
4945
  * of <code>IN_PROGRESS</code>.</p>
@@ -4613,7 +4947,7 @@ export interface GetServiceLastAccessedDetailsWithEntitiesResponse {
4613
4947
  */
4614
4948
  JobCompletionDate: Date | undefined;
4615
4949
  /**
4616
- * <p>An <code>EntityDetailsList</code> object that contains details about when an IAM
4950
+ * <p>An <code>EntityDetailsList</code> object that contains details about when an IAM
4617
4951
  * entity (user or role) used group or policy permissions in an attempt to access the
4618
4952
  * specified Amazon Web Services service.</p>
4619
4953
  * @public
@@ -5234,6 +5568,63 @@ export interface ListAttachedUserPoliciesResponse {
5234
5568
  */
5235
5569
  Marker?: string | undefined;
5236
5570
  }
5571
+ /**
5572
+ * @public
5573
+ */
5574
+ export interface ListDelegationRequestsRequest {
5575
+ /**
5576
+ * <p>The owner ID to filter delegation requests by.</p>
5577
+ * @public
5578
+ */
5579
+ OwnerId?: string | undefined;
5580
+ /**
5581
+ * <p>Use this parameter only when paginating results and only after you receive a response
5582
+ * indicating that the results are truncated. Set it to the value of the
5583
+ * <code>Marker</code>
5584
+ * element in the response that you received to indicate where the next
5585
+ * call should start.
5586
+ * </p>
5587
+ * @public
5588
+ */
5589
+ Marker?: string | undefined;
5590
+ /**
5591
+ * <p>Use this only when paginating results to indicate the maximum number of items you
5592
+ * want in the response. If additional items exist beyond the maximum you specify, the
5593
+ * <code>IsTruncated</code>
5594
+ * response element is <code>true</code>.
5595
+ * </p>
5596
+ * <p>If you do not include this parameter, the number of items defaults to 100. Note that
5597
+ * IAM may return fewer results, even when there are more results available. In that case,
5598
+ * the <code>IsTruncated</code> response element returns <code>true</code>, and
5599
+ * <code>Marker</code>
5600
+ * contains a value to include in the subsequent call that tells the
5601
+ * service where to continue from.
5602
+ * </p>
5603
+ * @public
5604
+ */
5605
+ MaxItems?: number | undefined;
5606
+ }
5607
+ /**
5608
+ * @public
5609
+ */
5610
+ export interface ListDelegationRequestsResponse {
5611
+ /**
5612
+ * <p>A list of delegation requests that match the specified criteria.</p>
5613
+ * @public
5614
+ */
5615
+ DelegationRequests?: DelegationRequest[] | undefined;
5616
+ /**
5617
+ * <p>When <code>isTruncated</code> is <code>true</code>, this element is present and contains the value to use for the <code>Marker</code> parameter in a subsequent pagination request.</p>
5618
+ * @public
5619
+ */
5620
+ Marker?: string | undefined;
5621
+ /**
5622
+ * <p>A flag that indicates whether there are more items to return.
5623
+ * If your results were truncated, you can make a subsequent pagination request using the <code>Marker</code> request parameter to retrieve more items.</p>
5624
+ * @public
5625
+ */
5626
+ isTruncated?: boolean | undefined;
5627
+ }
5237
5628
  /**
5238
5629
  * @public
5239
5630
  * @enum
@@ -5279,9 +5670,9 @@ export interface ListEntitiesForPolicyRequest {
5279
5670
  /**
5280
5671
  * <p>The policy usage method to use for filtering the results.</p>
5281
5672
  * <p>To list only permissions policies,
5282
- * set <code>PolicyUsageFilter</code> to <code>PermissionsPolicy</code>. To list only
5283
- * the policies used to set permissions boundaries, set the value
5284
- * to <code>PermissionsBoundary</code>.</p>
5673
+ * set <code>PolicyUsageFilter</code> to <code>PermissionsPolicy</code>. To list only
5674
+ * the policies used to set permissions boundaries, set the value
5675
+ * to <code>PermissionsBoundary</code>.</p>
5285
5676
  * <p>This parameter is optional. If it is not included, all policies are returned. </p>
5286
5677
  * @public
5287
5678
  */
@@ -6086,9 +6477,9 @@ export interface ListPoliciesRequest {
6086
6477
  /**
6087
6478
  * <p>The policy usage method to use for filtering the results.</p>
6088
6479
  * <p>To list only permissions policies,
6089
- * set <code>PolicyUsageFilter</code> to <code>PermissionsPolicy</code>. To list only
6090
- * the policies used to set permissions boundaries, set the value
6091
- * to <code>PermissionsBoundary</code>.</p>
6480
+ * set <code>PolicyUsageFilter</code> to <code>PermissionsPolicy</code>. To list only
6481
+ * the policies used to set permissions boundaries, set the value
6482
+ * to <code>PermissionsBoundary</code>.</p>
6092
6483
  * <p>This parameter is optional. If it is not included, all policies are returned. </p>
6093
6484
  * @public
6094
6485
  */
@@ -6167,7 +6558,7 @@ export interface ListPoliciesGrantingServiceAccessRequest {
6167
6558
  * details for that service. In the first paragraph, find the service prefix. For example,
6168
6559
  * <code>(service prefix: a4b)</code>. For more information about service namespaces,
6169
6560
  * see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html#genref-aws-service-namespaces">Amazon Web Services
6170
- * service namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
6561
+ * service namespaces</a> in the <i>Amazon Web Services General Reference</i>.</p>
6171
6562
  * @public
6172
6563
  */
6173
6564
  ServiceNamespaces: string[] | undefined;
@@ -6258,7 +6649,7 @@ export interface ListPoliciesGrantingServiceAccessEntry {
6258
6649
  */
6259
6650
  export interface ListPoliciesGrantingServiceAccessResponse {
6260
6651
  /**
6261
- * <p>A <code>ListPoliciesGrantingServiceAccess</code> object that contains details about
6652
+ * <p>A <code>ListPoliciesGrantingServiceAccess</code> object that contains details about
6262
6653
  * the permissions policies attached to the specified identity (user, group, or
6263
6654
  * role).</p>
6264
6655
  * @public
@@ -7366,334 +7757,3 @@ export interface ListVirtualMFADevicesResponse {
7366
7757
  */
7367
7758
  Marker?: string | undefined;
7368
7759
  }
7369
- /**
7370
- * @public
7371
- */
7372
- export interface PutGroupPolicyRequest {
7373
- /**
7374
- * <p>The name of the group to associate the policy with.</p>
7375
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7376
- * characters with no spaces. You can also include any of the following characters: _+=,.@-.</p>
7377
- * @public
7378
- */
7379
- GroupName: string | undefined;
7380
- /**
7381
- * <p>The name of the policy document.</p>
7382
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7383
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7384
- * @public
7385
- */
7386
- PolicyName: string | undefined;
7387
- /**
7388
- * <p>The policy document.</p>
7389
- * <p>You must provide policies in JSON format in IAM. However, for CloudFormation templates
7390
- * formatted in YAML, you can provide the policy in JSON or YAML format. CloudFormation always
7391
- * converts a YAML policy to JSON format before submitting it to IAM.</p>
7392
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
7393
- * used to validate this parameter is a string of characters consisting of the following:</p>
7394
- * <ul>
7395
- * <li>
7396
- * <p>Any printable ASCII
7397
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
7398
- * </li>
7399
- * <li>
7400
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
7401
- * (through <code>\u00FF</code>)</p>
7402
- * </li>
7403
- * <li>
7404
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
7405
- * carriage return (<code>\u000D</code>)</p>
7406
- * </li>
7407
- * </ul>
7408
- * @public
7409
- */
7410
- PolicyDocument: string | undefined;
7411
- }
7412
- /**
7413
- * @public
7414
- */
7415
- export interface PutRolePermissionsBoundaryRequest {
7416
- /**
7417
- * <p>The name (friendly name, not ARN) of the IAM role for which you want to set the
7418
- * permissions boundary.</p>
7419
- * @public
7420
- */
7421
- RoleName: string | undefined;
7422
- /**
7423
- * <p>The ARN of the managed policy that is used to set the permissions boundary for the
7424
- * role.</p>
7425
- * <p>A permissions boundary policy defines the maximum permissions that identity-based
7426
- * policies can grant to an entity, but does not grant permissions. Permissions boundaries
7427
- * do not define the maximum permissions that a resource-based policy can grant to an
7428
- * entity. To learn more, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html">Permissions boundaries
7429
- * for IAM entities</a> in the <i>IAM User Guide</i>.</p>
7430
- * <p>For more information about policy types, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policy-types">Policy types
7431
- * </a> in the <i>IAM User Guide</i>.</p>
7432
- * @public
7433
- */
7434
- PermissionsBoundary: string | undefined;
7435
- }
7436
- /**
7437
- * @public
7438
- */
7439
- export interface PutRolePolicyRequest {
7440
- /**
7441
- * <p>The name of the role to associate the policy with.</p>
7442
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7443
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7444
- * @public
7445
- */
7446
- RoleName: string | undefined;
7447
- /**
7448
- * <p>The name of the policy document.</p>
7449
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7450
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7451
- * @public
7452
- */
7453
- PolicyName: string | undefined;
7454
- /**
7455
- * <p>The policy document.</p>
7456
- * <p>You must provide policies in JSON format in IAM. However, for CloudFormation
7457
- * templates formatted in YAML, you can provide the policy in JSON or YAML format. CloudFormation always converts a YAML policy to JSON format before submitting it to
7458
- * IAM.</p>
7459
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
7460
- * used to validate this parameter is a string of characters consisting of the following:</p>
7461
- * <ul>
7462
- * <li>
7463
- * <p>Any printable ASCII
7464
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
7465
- * </li>
7466
- * <li>
7467
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
7468
- * (through <code>\u00FF</code>)</p>
7469
- * </li>
7470
- * <li>
7471
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
7472
- * carriage return (<code>\u000D</code>)</p>
7473
- * </li>
7474
- * </ul>
7475
- * @public
7476
- */
7477
- PolicyDocument: string | undefined;
7478
- }
7479
- /**
7480
- * @public
7481
- */
7482
- export interface PutUserPermissionsBoundaryRequest {
7483
- /**
7484
- * <p>The name (friendly name, not ARN) of the IAM user for which you want to set the
7485
- * permissions boundary.</p>
7486
- * @public
7487
- */
7488
- UserName: string | undefined;
7489
- /**
7490
- * <p>The ARN of the managed policy that is used to set the permissions boundary for the
7491
- * user.</p>
7492
- * <p>A permissions boundary policy defines the maximum permissions that identity-based
7493
- * policies can grant to an entity, but does not grant permissions. Permissions boundaries
7494
- * do not define the maximum permissions that a resource-based policy can grant to an
7495
- * entity. To learn more, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies_boundaries.html">Permissions boundaries
7496
- * for IAM entities</a> in the <i>IAM User Guide</i>.</p>
7497
- * <p>For more information about policy types, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/access_policies.html#access_policy-types">Policy types
7498
- * </a> in the <i>IAM User Guide</i>.</p>
7499
- * @public
7500
- */
7501
- PermissionsBoundary: string | undefined;
7502
- }
7503
- /**
7504
- * @public
7505
- */
7506
- export interface PutUserPolicyRequest {
7507
- /**
7508
- * <p>The name of the user to associate the policy with.</p>
7509
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7510
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7511
- * @public
7512
- */
7513
- UserName: string | undefined;
7514
- /**
7515
- * <p>The name of the policy document.</p>
7516
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7517
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7518
- * @public
7519
- */
7520
- PolicyName: string | undefined;
7521
- /**
7522
- * <p>The policy document.</p>
7523
- * <p>You must provide policies in JSON format in IAM. However, for CloudFormation
7524
- * templates formatted in YAML, you can provide the policy in JSON or YAML format. CloudFormation always converts a YAML policy to JSON format before submitting it to
7525
- * IAM.</p>
7526
- * <p>The <a href="http://wikipedia.org/wiki/regex">regex pattern</a>
7527
- * used to validate this parameter is a string of characters consisting of the following:</p>
7528
- * <ul>
7529
- * <li>
7530
- * <p>Any printable ASCII
7531
- * character ranging from the space character (<code>\u0020</code>) through the end of the ASCII character range</p>
7532
- * </li>
7533
- * <li>
7534
- * <p>The printable characters in the Basic Latin and Latin-1 Supplement character set
7535
- * (through <code>\u00FF</code>)</p>
7536
- * </li>
7537
- * <li>
7538
- * <p>The special characters tab (<code>\u0009</code>), line feed (<code>\u000A</code>), and
7539
- * carriage return (<code>\u000D</code>)</p>
7540
- * </li>
7541
- * </ul>
7542
- * @public
7543
- */
7544
- PolicyDocument: string | undefined;
7545
- }
7546
- /**
7547
- * @public
7548
- */
7549
- export interface RemoveClientIDFromOpenIDConnectProviderRequest {
7550
- /**
7551
- * <p>The Amazon Resource Name (ARN) of the IAM OIDC provider resource to remove the
7552
- * client ID from. You can get a list of OIDC provider ARNs by using the <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_ListOpenIDConnectProviders.html">ListOpenIDConnectProviders</a> operation.</p>
7553
- * <p>For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs)</a> in the <i>Amazon Web Services General Reference</i>.</p>
7554
- * @public
7555
- */
7556
- OpenIDConnectProviderArn: string | undefined;
7557
- /**
7558
- * <p>The client ID (also known as audience) to remove from the IAM OIDC provider
7559
- * resource. For more information about client IDs, see <a href="https://docs.aws.amazon.com/IAM/latest/APIReference/API_CreateOpenIDConnectProvider.html">CreateOpenIDConnectProvider</a>.</p>
7560
- * @public
7561
- */
7562
- ClientID: string | undefined;
7563
- }
7564
- /**
7565
- * @public
7566
- */
7567
- export interface RemoveRoleFromInstanceProfileRequest {
7568
- /**
7569
- * <p>The name of the instance profile to update.</p>
7570
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7571
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7572
- * @public
7573
- */
7574
- InstanceProfileName: string | undefined;
7575
- /**
7576
- * <p>The name of the role to remove.</p>
7577
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7578
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7579
- * @public
7580
- */
7581
- RoleName: string | undefined;
7582
- }
7583
- /**
7584
- * @public
7585
- */
7586
- export interface RemoveUserFromGroupRequest {
7587
- /**
7588
- * <p>The name of the group to update.</p>
7589
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7590
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7591
- * @public
7592
- */
7593
- GroupName: string | undefined;
7594
- /**
7595
- * <p>The name of the user to remove.</p>
7596
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7597
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7598
- * @public
7599
- */
7600
- UserName: string | undefined;
7601
- }
7602
- /**
7603
- * @public
7604
- */
7605
- export interface ResetServiceSpecificCredentialRequest {
7606
- /**
7607
- * <p>The name of the IAM user associated with the service-specific credential. If this
7608
- * value is not specified, then the operation assumes the user whose credentials are used
7609
- * to call the operation.</p>
7610
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7611
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7612
- * @public
7613
- */
7614
- UserName?: string | undefined;
7615
- /**
7616
- * <p>The unique identifier of the service-specific credential.</p>
7617
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters that can
7618
- * consist of any upper or lowercased letter or digit.</p>
7619
- * @public
7620
- */
7621
- ServiceSpecificCredentialId: string | undefined;
7622
- }
7623
- /**
7624
- * @public
7625
- */
7626
- export interface ResetServiceSpecificCredentialResponse {
7627
- /**
7628
- * <p>A structure with details about the updated service-specific credential, including the
7629
- * new password.</p>
7630
- * <important>
7631
- * <p>This is the <b>only</b> time that you can access the
7632
- * password. You cannot recover the password later, but you can reset it again.</p>
7633
- * </important>
7634
- * @public
7635
- */
7636
- ServiceSpecificCredential?: ServiceSpecificCredential | undefined;
7637
- }
7638
- /**
7639
- * @public
7640
- */
7641
- export interface ResyncMFADeviceRequest {
7642
- /**
7643
- * <p>The name of the user whose MFA device you want to resynchronize.</p>
7644
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7645
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7646
- * @public
7647
- */
7648
- UserName: string | undefined;
7649
- /**
7650
- * <p>Serial number that uniquely identifies the MFA device.</p>
7651
- * <p>This parameter allows (through its <a href="http://wikipedia.org/wiki/regex">regex pattern</a>) a string of characters consisting of upper and lowercase alphanumeric
7652
- * characters with no spaces. You can also include any of the following characters: _+=,.@-</p>
7653
- * @public
7654
- */
7655
- SerialNumber: string | undefined;
7656
- /**
7657
- * <p>An authentication code emitted by the device.</p>
7658
- * <p>The format for this parameter is a sequence of six digits.</p>
7659
- * @public
7660
- */
7661
- AuthenticationCode1: string | undefined;
7662
- /**
7663
- * <p>A subsequent authentication code emitted by the device.</p>
7664
- * <p>The format for this parameter is a sequence of six digits.</p>
7665
- * @public
7666
- */
7667
- AuthenticationCode2: string | undefined;
7668
- }
7669
- /**
7670
- * @public
7671
- */
7672
- export interface SetDefaultPolicyVersionRequest {
7673
- /**
7674
- * <p>The Amazon Resource Name (ARN) of the IAM policy whose default version you want to
7675
- * set.</p>
7676
- * <p>For more information about ARNs, see <a href="https://docs.aws.amazon.com/general/latest/gr/aws-arns-and-namespaces.html">Amazon Resource Names (ARNs)</a> in the <i>Amazon Web Services General Reference</i>.</p>
7677
- * @public
7678
- */
7679
- PolicyArn: string | undefined;
7680
- /**
7681
- * <p>The version of the policy to set as the default (operative) version.</p>
7682
- * <p>For more information about managed policy versions, see <a href="https://docs.aws.amazon.com/IAM/latest/UserGuide/policies-managed-versions.html">Versioning for managed
7683
- * policies</a> in the <i>IAM User Guide</i>.</p>
7684
- * @public
7685
- */
7686
- VersionId: string | undefined;
7687
- }
7688
- /**
7689
- * @public
7690
- * @enum
7691
- */
7692
- export declare const GlobalEndpointTokenVersion: {
7693
- readonly v1Token: "v1Token";
7694
- readonly v2Token: "v2Token";
7695
- };
7696
- /**
7697
- * @public
7698
- */
7699
- export type GlobalEndpointTokenVersion = (typeof GlobalEndpointTokenVersion)[keyof typeof GlobalEndpointTokenVersion];