@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,64 +1,122 @@
1
- import { AsyncLocalStorage } from 'async_hooks';
2
-
3
- const noGlobalAwsLambda = process.env["AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA"] === "1" ||
4
- process.env["AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA"] === "true";
5
- if (!noGlobalAwsLambda) {
6
- globalThis.awslambda = globalThis.awslambda || {};
7
- }
8
1
  const PROTECTED_KEYS = {
9
- REQUEST_ID: Symbol("_AWS_LAMBDA_REQUEST_ID"),
10
- X_RAY_TRACE_ID: Symbol("_AWS_LAMBDA_X_RAY_TRACE_ID"),
11
- TENANT_ID: Symbol("_AWS_LAMBDA_TENANT_ID"),
2
+ REQUEST_ID: Symbol.for("_AWS_LAMBDA_REQUEST_ID"),
3
+ X_RAY_TRACE_ID: Symbol.for("_AWS_LAMBDA_X_RAY_TRACE_ID"),
4
+ TENANT_ID: Symbol.for("_AWS_LAMBDA_TENANT_ID"),
12
5
  };
13
- class InvokeStoreImpl {
14
- static storage = new AsyncLocalStorage();
6
+ const NO_GLOBAL_AWS_LAMBDA = ["true", "1"].includes(process.env?.AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA ?? "");
7
+ if (!NO_GLOBAL_AWS_LAMBDA) {
8
+ globalThis.awslambda = globalThis.awslambda || {};
9
+ }
10
+ class InvokeStoreBase {
15
11
  static PROTECTED_KEYS = PROTECTED_KEYS;
16
- static run(context, fn) {
17
- return this.storage.run({ ...context }, fn);
12
+ isProtectedKey(key) {
13
+ return Object.values(PROTECTED_KEYS).includes(key);
14
+ }
15
+ getRequestId() {
16
+ return this.get(PROTECTED_KEYS.REQUEST_ID) ?? "-";
18
17
  }
19
- static getContext() {
20
- return this.storage.getStore();
18
+ getXRayTraceId() {
19
+ return this.get(PROTECTED_KEYS.X_RAY_TRACE_ID);
21
20
  }
22
- static get(key) {
23
- const context = this.storage.getStore();
24
- return context?.[key];
21
+ getTenantId() {
22
+ return this.get(PROTECTED_KEYS.TENANT_ID);
25
23
  }
26
- static set(key, value) {
24
+ }
25
+ class InvokeStoreSingle extends InvokeStoreBase {
26
+ currentContext;
27
+ getContext() {
28
+ return this.currentContext;
29
+ }
30
+ hasContext() {
31
+ return this.currentContext !== undefined;
32
+ }
33
+ get(key) {
34
+ return this.currentContext?.[key];
35
+ }
36
+ set(key, value) {
27
37
  if (this.isProtectedKey(key)) {
28
- throw new Error(`Cannot modify protected Lambda context field`);
38
+ throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);
29
39
  }
30
- const context = this.storage.getStore();
31
- if (context) {
32
- context[key] = value;
40
+ this.currentContext = this.currentContext || {};
41
+ this.currentContext[key] = value;
42
+ }
43
+ run(context, fn) {
44
+ this.currentContext = context;
45
+ try {
46
+ return fn();
33
47
  }
48
+ finally {
49
+ this.currentContext = undefined;
50
+ }
51
+ }
52
+ }
53
+ class InvokeStoreMulti extends InvokeStoreBase {
54
+ als;
55
+ static async create() {
56
+ const instance = new InvokeStoreMulti();
57
+ const asyncHooks = await import('node:async_hooks');
58
+ instance.als = new asyncHooks.AsyncLocalStorage();
59
+ return instance;
34
60
  }
35
- static getRequestId() {
36
- return this.get(this.PROTECTED_KEYS.REQUEST_ID) ?? "-";
61
+ getContext() {
62
+ return this.als.getStore();
37
63
  }
38
- static getXRayTraceId() {
39
- return this.get(this.PROTECTED_KEYS.X_RAY_TRACE_ID);
64
+ hasContext() {
65
+ return this.als.getStore() !== undefined;
40
66
  }
41
- static getTenantId() {
42
- return this.get(this.PROTECTED_KEYS.TENANT_ID);
67
+ get(key) {
68
+ return this.als.getStore()?.[key];
43
69
  }
44
- static hasContext() {
45
- return this.storage.getStore() !== undefined;
70
+ set(key, value) {
71
+ if (this.isProtectedKey(key)) {
72
+ throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);
73
+ }
74
+ const store = this.als.getStore();
75
+ if (!store) {
76
+ throw new Error("No context available");
77
+ }
78
+ store[key] = value;
46
79
  }
47
- static isProtectedKey(key) {
48
- return (key === this.PROTECTED_KEYS.REQUEST_ID ||
49
- key === this.PROTECTED_KEYS.X_RAY_TRACE_ID);
80
+ run(context, fn) {
81
+ return this.als.run(context, fn);
50
82
  }
51
83
  }
52
- let instance;
53
- if (!noGlobalAwsLambda && globalThis.awslambda?.InvokeStore) {
54
- instance = globalThis.awslambda.InvokeStore;
55
- }
56
- else {
57
- instance = InvokeStoreImpl;
58
- if (!noGlobalAwsLambda && globalThis.awslambda) {
59
- globalThis.awslambda.InvokeStore = instance;
84
+ var InvokeStore;
85
+ (function (InvokeStore) {
86
+ let instance = null;
87
+ async function getInstanceAsync() {
88
+ if (!instance) {
89
+ instance = (async () => {
90
+ const isMulti = "AWS_LAMBDA_MAX_CONCURRENCY" in process.env;
91
+ const newInstance = isMulti
92
+ ? await InvokeStoreMulti.create()
93
+ : new InvokeStoreSingle();
94
+ if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda?.InvokeStore) {
95
+ return globalThis.awslambda.InvokeStore;
96
+ }
97
+ else if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda) {
98
+ globalThis.awslambda.InvokeStore = newInstance;
99
+ return newInstance;
100
+ }
101
+ else {
102
+ return newInstance;
103
+ }
104
+ })();
105
+ }
106
+ return instance;
60
107
  }
61
- }
62
- const InvokeStore = instance;
108
+ InvokeStore.getInstanceAsync = getInstanceAsync;
109
+ InvokeStore._testing = process.env.AWS_LAMBDA_BENCHMARK_MODE === "1"
110
+ ? {
111
+ reset: () => {
112
+ instance = null;
113
+ if (globalThis.awslambda?.InvokeStore) {
114
+ delete globalThis.awslambda.InvokeStore;
115
+ }
116
+ globalThis.awslambda = {};
117
+ },
118
+ }
119
+ : undefined;
120
+ })(InvokeStore || (InvokeStore = {}));
63
121
 
64
- export { InvokeStore };
122
+ export { InvokeStore, InvokeStoreBase };
@@ -1,57 +1,50 @@
1
- /**
2
- * Generic store context that uses protected keys for Lambda fields
3
- * and allows custom user properties
4
- */
5
- export interface InvokeStoreContext {
6
- [key: string | symbol]: unknown;
1
+ interface Context {
2
+ [key: string]: unknown;
3
+ [key: symbol]: unknown;
4
+ }
5
+ declare global {
6
+ var awslambda: {
7
+ InvokeStore?: InvokeStoreBase;
8
+ [key: string]: unknown;
9
+ };
7
10
  }
8
11
  /**
9
- * InvokeStore implementation class
12
+ * Base class for AWS Lambda context storage implementations.
13
+ * Provides core functionality for managing Lambda execution context.
14
+ *
15
+ * Implementations handle either single-context (InvokeStoreSingle) or
16
+ * multi-context (InvokeStoreMulti) scenarios based on Lambda's execution environment.
17
+ *
18
+ * @public
10
19
  */
11
- declare class InvokeStoreImpl {
12
- private static storage;
20
+ export declare abstract class InvokeStoreBase {
13
21
  static readonly PROTECTED_KEYS: {
14
22
  readonly REQUEST_ID: symbol;
15
23
  readonly X_RAY_TRACE_ID: symbol;
16
24
  readonly TENANT_ID: symbol;
17
25
  };
18
- /**
19
- * Initialize and run code within an invoke context
20
- */
21
- static run<T>(context: InvokeStoreContext, fn: () => T | Promise<T>): T | Promise<T>;
22
- /**
23
- * Get the complete current context
24
- */
25
- static getContext(): InvokeStoreContext | undefined;
26
- /**
27
- * Get a specific value from the context by key
28
- */
29
- static get<T = unknown>(key: string | symbol): T | undefined;
30
- /**
31
- * Set a custom value in the current context
32
- * Protected Lambda context fields cannot be overwritten
33
- */
34
- static set(key: string | symbol, value: unknown): void;
35
- /**
36
- * Get the current request ID
37
- */
38
- static getRequestId(): string;
39
- /**
40
- * Get the current X-ray trace ID
41
- */
42
- static getXRayTraceId(): string | undefined;
43
- /**
44
- * Get the current tenant ID
45
- */
46
- static getTenantId(): string | undefined;
47
- /**
48
- * Check if we're currently within an invoke context
49
- */
50
- static hasContext(): boolean;
51
- /**
52
- * Check if a key is protected (readonly Lambda context field)
53
- */
54
- private static isProtectedKey;
26
+ abstract getContext(): Context | undefined;
27
+ abstract hasContext(): boolean;
28
+ abstract get<T = unknown>(key: string | symbol): T | undefined;
29
+ abstract set<T = unknown>(key: string | symbol, value: T): void;
30
+ abstract run<T>(context: Context, fn: () => T): T;
31
+ protected isProtectedKey(key: string | symbol): boolean;
32
+ getRequestId(): string;
33
+ getXRayTraceId(): string | undefined;
34
+ getTenantId(): string | undefined;
35
+ }
36
+ /**
37
+ * Provides access to AWS Lambda execution context storage.
38
+ * Supports both single-context and multi-context environments through different implementations.
39
+ *
40
+ * The store manages protected Lambda context fields and allows storing/retrieving custom values
41
+ * within the execution context.
42
+ * @public
43
+ */
44
+ export declare namespace InvokeStore {
45
+ function getInstanceAsync(): Promise<InvokeStoreBase>;
46
+ const _testing: {
47
+ reset: () => void;
48
+ } | undefined;
55
49
  }
56
- export declare const InvokeStore: typeof InvokeStoreImpl;
57
50
  export {};
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@aws/lambda-invoke-store",
3
- "version": "0.1.1",
3
+ "version": "0.2.0",
4
4
  "description": "Invoke scoped data storage for AWS Lambda Node.js Runtime Environment",
5
5
  "homepage": "https://github.com/awslabs/aws-lambda-invoke-store",
6
6
  "main": "./dist-cjs/invoke-store.js",
@@ -32,7 +32,7 @@
32
32
  "build": "yarn clean && yarn build:types && node ./scripts/build-rollup.js",
33
33
  "build:types": "tsc -p tsconfig.types.json",
34
34
  "clean": "rm -rf dist-types dist-cjs dist-es",
35
- "test": "vitest run",
35
+ "test": "vitest run --reporter verbose",
36
36
  "test:watch": "vitest watch",
37
37
  "release": "yarn build && changeset publish"
38
38
  },
@@ -208,6 +208,14 @@ see LICENSE for more information.
208
208
 
209
209
  ## Client Commands (Operations List)
210
210
 
211
+ <details>
212
+ <summary>
213
+ AcceptDelegationRequest
214
+ </summary>
215
+
216
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/AcceptDelegationRequestCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/AcceptDelegationRequestCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/AcceptDelegationRequestCommandOutput/)
217
+
218
+ </details>
211
219
  <details>
212
220
  <summary>
213
221
  AddClientIDToOpenIDConnectProvider
@@ -231,6 +239,14 @@ AddUserToGroup
231
239
 
232
240
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/AddUserToGroupCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/AddUserToGroupCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/AddUserToGroupCommandOutput/)
233
241
 
242
+ </details>
243
+ <details>
244
+ <summary>
245
+ AssociateDelegationRequest
246
+ </summary>
247
+
248
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/AssociateDelegationRequestCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/AssociateDelegationRequestCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/AssociateDelegationRequestCommandOutput/)
249
+
234
250
  </details>
235
251
  <details>
236
252
  <summary>
@@ -719,6 +735,14 @@ GetCredentialReport
719
735
 
720
736
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/GetCredentialReportCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetCredentialReportCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetCredentialReportCommandOutput/)
721
737
 
738
+ </details>
739
+ <details>
740
+ <summary>
741
+ GetDelegationRequest
742
+ </summary>
743
+
744
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/GetDelegationRequestCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetDelegationRequestCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetDelegationRequestCommandOutput/)
745
+
722
746
  </details>
723
747
  <details>
724
748
  <summary>
@@ -735,6 +759,14 @@ GetGroupPolicy
735
759
 
736
760
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/GetGroupPolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetGroupPolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetGroupPolicyCommandOutput/)
737
761
 
762
+ </details>
763
+ <details>
764
+ <summary>
765
+ GetHumanReadableSummary
766
+ </summary>
767
+
768
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/GetHumanReadableSummaryCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetHumanReadableSummaryCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/GetHumanReadableSummaryCommandOutput/)
769
+
738
770
  </details>
739
771
  <details>
740
772
  <summary>
@@ -911,6 +943,14 @@ ListAttachedUserPolicies
911
943
 
912
944
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/ListAttachedUserPoliciesCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/ListAttachedUserPoliciesCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/ListAttachedUserPoliciesCommandOutput/)
913
945
 
946
+ </details>
947
+ <details>
948
+ <summary>
949
+ ListDelegationRequests
950
+ </summary>
951
+
952
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/ListDelegationRequestsCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/ListDelegationRequestsCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/ListDelegationRequestsCommandOutput/)
953
+
914
954
  </details>
915
955
  <details>
916
956
  <summary>
@@ -1191,6 +1231,14 @@ PutUserPolicy
1191
1231
 
1192
1232
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/PutUserPolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/PutUserPolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/PutUserPolicyCommandOutput/)
1193
1233
 
1234
+ </details>
1235
+ <details>
1236
+ <summary>
1237
+ RejectDelegationRequest
1238
+ </summary>
1239
+
1240
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/RejectDelegationRequestCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/RejectDelegationRequestCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/RejectDelegationRequestCommandOutput/)
1241
+
1194
1242
  </details>
1195
1243
  <details>
1196
1244
  <summary>
@@ -1231,6 +1279,14 @@ ResyncMFADevice
1231
1279
 
1232
1280
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/ResyncMFADeviceCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/ResyncMFADeviceCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/ResyncMFADeviceCommandOutput/)
1233
1281
 
1282
+ </details>
1283
+ <details>
1284
+ <summary>
1285
+ SendDelegationToken
1286
+ </summary>
1287
+
1288
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/SendDelegationTokenCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/SendDelegationTokenCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/SendDelegationTokenCommandOutput/)
1289
+
1234
1290
  </details>
1235
1291
  <details>
1236
1292
  <summary>
@@ -1415,6 +1471,14 @@ UpdateAssumeRolePolicy
1415
1471
 
1416
1472
  [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/UpdateAssumeRolePolicyCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/UpdateAssumeRolePolicyCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/UpdateAssumeRolePolicyCommandOutput/)
1417
1473
 
1474
+ </details>
1475
+ <details>
1476
+ <summary>
1477
+ UpdateDelegationRequest
1478
+ </summary>
1479
+
1480
+ [Command API Reference](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/client/iam/command/UpdateDelegationRequestCommand/) / [Input](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/UpdateDelegationRequestCommandInput/) / [Output](https://docs.aws.amazon.com/AWSJavaScriptSDK/v3/latest/Package/-aws-sdk-client-iam/Interface/UpdateDelegationRequestCommandOutput/)
1481
+
1418
1482
  </details>
1419
1483
  <details>
1420
1484
  <summary>