@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
package/methods_list.txt CHANGED
@@ -775,6 +775,7 @@ appstream:AssociateAppBlockBuilderAppBlock
775
775
  appstream:AssociateApplicationFleet
776
776
  appstream:AssociateApplicationToEntitlement
777
777
  appstream:AssociateFleet
778
+ appstream:AssociateSoftwareToImageBuilder
778
779
  appstream:BatchAssociateUserStack
779
780
  appstream:BatchDisassociateUserStack
780
781
  appstream:CopyImage
@@ -784,9 +785,11 @@ appstream:CreateAppBlockBuilderStreamingURL
784
785
  appstream:CreateApplication
785
786
  appstream:CreateDirectoryConfig
786
787
  appstream:CreateEntitlement
788
+ appstream:CreateExportImageTask
787
789
  appstream:CreateFleet
788
790
  appstream:CreateImageBuilder
789
791
  appstream:CreateImageBuilderStreamingURL
792
+ appstream:CreateImportedImage
790
793
  appstream:CreateStack
791
794
  appstream:CreateStreamingURL
792
795
  appstream:CreateThemeForStack
@@ -811,6 +814,7 @@ appstream:DescribeAppBlockBuilders
811
814
  appstream:DescribeAppBlocks
812
815
  appstream:DescribeApplicationFleetAssociations
813
816
  appstream:DescribeApplications
817
+ appstream:DescribeAppLicenseUsage
814
818
  appstream:DescribeDirectoryConfigs
815
819
  appstream:DescribeEntitlements
816
820
  appstream:DescribeFleets
@@ -818,6 +822,7 @@ appstream:DescribeImageBuilders
818
822
  appstream:DescribeImagePermissions
819
823
  appstream:DescribeImages
820
824
  appstream:DescribeSessions
825
+ appstream:DescribeSoftwareAssociations
821
826
  appstream:DescribeStacks
822
827
  appstream:DescribeThemeForStack
823
828
  appstream:DescribeUsageReportSubscriptions
@@ -828,15 +833,19 @@ appstream:DisassociateAppBlockBuilderAppBlock
828
833
  appstream:DisassociateApplicationFleet
829
834
  appstream:DisassociateApplicationFromEntitlement
830
835
  appstream:DisassociateFleet
836
+ appstream:DisassociateSoftwareFromImageBuilder
831
837
  appstream:EnableUser
832
838
  appstream:ExpireSession
839
+ appstream:GetExportImageTask
833
840
  appstream:ListAssociatedFleets
834
841
  appstream:ListAssociatedStacks
835
842
  appstream:ListEntitledApplications
843
+ appstream:ListExportImageTasks
836
844
  appstream:ListTagsForResource
837
845
  appstream:StartAppBlockBuilder
838
846
  appstream:StartFleet
839
847
  appstream:StartImageBuilder
848
+ appstream:StartSoftwareDeploymentToImageBuilder
840
849
  appstream:StopAppBlockBuilder
841
850
  appstream:StopFleet
842
851
  appstream:StopImageBuilder
@@ -1472,6 +1481,7 @@ backup:CreateReportPlan
1472
1481
  backup:CreateRestoreAccessBackupVault
1473
1482
  backup:CreateRestoreTestingPlan
1474
1483
  backup:CreateRestoreTestingSelection
1484
+ backup:CreateTieringConfiguration
1475
1485
  backup:DeleteBackupPlan
1476
1486
  backup:DeleteBackupSelection
1477
1487
  backup:DeleteBackupVault
@@ -1484,6 +1494,7 @@ backup:DeleteRecoveryPoint
1484
1494
  backup:DeleteReportPlan
1485
1495
  backup:DeleteRestoreTestingPlan
1486
1496
  backup:DeleteRestoreTestingSelection
1497
+ backup:DeleteTieringConfiguration
1487
1498
  backup:DescribeBackupJob
1488
1499
  backup:DescribeBackupVault
1489
1500
  backup:DescribeCopyJob
@@ -1514,6 +1525,7 @@ backup:GetRestoreTestingInferredMetadata
1514
1525
  backup:GetRestoreTestingPlan
1515
1526
  backup:GetRestoreTestingSelection
1516
1527
  backup:GetSupportedResourceTypes
1528
+ backup:GetTieringConfiguration
1517
1529
  backup:ListBackupJobs
1518
1530
  backup:ListBackupJobSummaries
1519
1531
  backup:ListBackupPlans
@@ -1541,6 +1553,7 @@ backup:ListRestoreJobSummaries
1541
1553
  backup:ListRestoreTestingPlans
1542
1554
  backup:ListRestoreTestingSelections
1543
1555
  backup:ListTags
1556
+ backup:ListTieringConfigurations
1544
1557
  backup:PutBackupVaultAccessPolicy
1545
1558
  backup:PutBackupVaultLockConfiguration
1546
1559
  backup:PutBackupVaultNotifications
@@ -1564,6 +1577,7 @@ backup:UpdateRegionSettings
1564
1577
  backup:UpdateReportPlan
1565
1578
  backup:UpdateRestoreTestingPlan
1566
1579
  backup:UpdateRestoreTestingSelection
1580
+ backup:UpdateTieringConfiguration
1567
1581
  batch:CancelJob
1568
1582
  batch:CreateComputeEnvironment
1569
1583
  batch:CreateConsumableResource
@@ -2832,6 +2846,7 @@ cloudformation:DeregisterType
2832
2846
  cloudformation:DescribeAccountLimits
2833
2847
  cloudformation:DescribeChangeSet
2834
2848
  cloudformation:DescribeChangeSetHooks
2849
+ cloudformation:DescribeEvents
2835
2850
  cloudformation:DescribeGeneratedTemplate
2836
2851
  cloudformation:DescribeOrganizationsAccess
2837
2852
  cloudformation:DescribePublisher
@@ -6781,6 +6796,9 @@ ecs:UpdateServicePrimaryTaskSet
6781
6796
  ecs:UpdateTaskProtection
6782
6797
  ecs:UpdateTaskSet
6783
6798
  eks-auth:AssumeRoleForPodIdentity
6799
+ eks-mcp:CallPrivilegedTool
6800
+ eks-mcp:CallReadOnlyTool
6801
+ eks-mcp:InvokeMcp
6784
6802
  eks:AccessKubernetesApi
6785
6803
  eks:AssociateAccessPolicy
6786
6804
  eks:AssociateEncryptionConfig
@@ -7334,6 +7352,7 @@ es:CreateApplication
7334
7352
  es:CreateDomain
7335
7353
  es:CreateElasticsearchDomain
7336
7354
  es:CreateElasticsearchServiceRole
7355
+ es:CreateIndex
7337
7356
  es:CreateOutboundConnection
7338
7357
  es:CreateOutboundCrossClusterSearchConnection
7339
7358
  es:CreatePackage
@@ -7347,6 +7366,7 @@ es:DeleteElasticsearchDomain
7347
7366
  es:DeleteElasticsearchServiceRole
7348
7367
  es:DeleteInboundConnection
7349
7368
  es:DeleteInboundCrossClusterSearchConnection
7369
+ es:DeleteIndex
7350
7370
  es:DeleteOutboundConnection
7351
7371
  es:DeleteOutboundCrossClusterSearchConnection
7352
7372
  es:DeletePackage
@@ -7389,6 +7409,7 @@ es:GetCompatibleVersions
7389
7409
  es:GetDataSource
7390
7410
  es:GetDirectQueryDataSource
7391
7411
  es:GetDomainMaintenanceStatus
7412
+ es:GetIndex
7392
7413
  es:GetPackageVersionHistory
7393
7414
  es:GetUpgradeHistory
7394
7415
  es:GetUpgradeStatus
@@ -7423,6 +7444,7 @@ es:UpdateDataSource
7423
7444
  es:UpdateDirectQueryDataSource
7424
7445
  es:UpdateDomainConfig
7425
7446
  es:UpdateElasticsearchDomainConfig
7447
+ es:UpdateIndex
7426
7448
  es:UpdatePackage
7427
7449
  es:UpdatePackageScope
7428
7450
  es:UpdateScheduledAction
@@ -8777,6 +8799,7 @@ guardduty:ListTagsForResource
8777
8799
  guardduty:ListThreatEntitySets
8778
8800
  guardduty:ListThreatIntelSets
8779
8801
  guardduty:ListTrustedEntitySets
8802
+ guardduty:SendObjectMalwareScan
8780
8803
  guardduty:SendSecurityTelemetry
8781
8804
  guardduty:StartMalwareScan
8782
8805
  guardduty:StartMonitoringMembers
@@ -9311,20 +9334,26 @@ internetmonitor:UntagResource
9311
9334
  internetmonitor:UpdateMonitor
9312
9335
  invoicing:BatchGetInvoiceProfile
9313
9336
  invoicing:CreateInvoiceUnit
9337
+ invoicing:CreateProcurementPortalPreference
9314
9338
  invoicing:DeleteInvoiceUnit
9339
+ invoicing:DeleteProcurementPortalPreference
9315
9340
  invoicing:GetInvoiceCorrection
9316
9341
  invoicing:GetInvoiceEmailDeliveryPreferences
9317
9342
  invoicing:GetInvoicePDF
9318
9343
  invoicing:GetInvoiceUnit
9344
+ invoicing:GetProcurementPortalPreference
9319
9345
  invoicing:ListInvoiceCorrections
9320
9346
  invoicing:ListInvoiceSummaries
9321
9347
  invoicing:ListInvoiceUnits
9348
+ invoicing:ListProcurementPortalPreferences
9322
9349
  invoicing:ListTagsForResource
9323
9350
  invoicing:PutInvoiceEmailDeliveryPreferences
9351
+ invoicing:PutProcurementPortalPreference
9324
9352
  invoicing:StartInvoiceCorrection
9325
9353
  invoicing:TagResource
9326
9354
  invoicing:UntagResource
9327
9355
  invoicing:UpdateInvoiceUnit
9356
+ invoicing:UpdateProcurementPortalPreferenceStatus
9328
9357
  iot-device-tester:CheckVersion
9329
9358
  iot-device-tester:DownloadTestSuite
9330
9359
  iot-device-tester:LatestIdt
@@ -10315,6 +10344,8 @@ kafka:DescribeClusterV2
10315
10344
  kafka:DescribeConfiguration
10316
10345
  kafka:DescribeConfigurationRevision
10317
10346
  kafka:DescribeReplicator
10347
+ kafka:DescribeTopic
10348
+ kafka:DescribeTopicPartitions
10318
10349
  kafka:DescribeVpcConnection
10319
10350
  kafka:GetBootstrapBrokers
10320
10351
  kafka:GetClusterPolicy
@@ -10331,6 +10362,7 @@ kafka:ListNodes
10331
10362
  kafka:ListReplicators
10332
10363
  kafka:ListScramSecrets
10333
10364
  kafka:ListTagsForResource
10365
+ kafka:ListTopics
10334
10366
  kafka:ListVpcConnections
10335
10367
  kafka:PutClusterPolicy
10336
10368
  kafka:RebootBroker
@@ -12162,6 +12194,7 @@ mgn:ListConnectors
12162
12194
  mgn:ListExportErrors
12163
12195
  mgn:ListExports
12164
12196
  mgn:ListImportErrors
12197
+ mgn:ListImportFileEnrichments
12165
12198
  mgn:ListImports
12166
12199
  mgn:ListManagedAccounts
12167
12200
  mgn:ListNetworkMigrationAnalyses
@@ -12176,6 +12209,7 @@ mgn:ListNetworkMigrationExecutions
12176
12209
  mgn:ListNetworkMigrationMapperSegmentConstructs
12177
12210
  mgn:ListNetworkMigrationMapperSegments
12178
12211
  mgn:ListNetworkMigrationMappings
12212
+ mgn:ListNetworkMigrationMappingUpdates
12179
12213
  mgn:ListSourceServerActions
12180
12214
  mgn:ListTagsForResource
12181
12215
  mgn:ListTemplateActions
@@ -12205,11 +12239,13 @@ mgn:SendVcenterClientMetricsForMgn
12205
12239
  mgn:StartCutover
12206
12240
  mgn:StartExport
12207
12241
  mgn:StartImport
12242
+ mgn:StartImportFileEnrichment
12208
12243
  mgn:StartNetworkMigrationAnalysis
12209
12244
  mgn:StartNetworkMigrationCodeGeneration
12210
12245
  mgn:StartNetworkMigrationDeployedStacksDeletion
12211
12246
  mgn:StartNetworkMigrationDeployment
12212
12247
  mgn:StartNetworkMigrationMapping
12248
+ mgn:StartNetworkMigrationMappingUpdate
12213
12249
  mgn:StartReplication
12214
12250
  mgn:StartTest
12215
12251
  mgn:StopReplication
@@ -13605,6 +13641,14 @@ pricing:GetAttributeValues
13605
13641
  pricing:GetPriceListFileUrl
13606
13642
  pricing:GetProducts
13607
13643
  pricing:ListPriceLists
13644
+ pricingplanmanager:AssociateResourcesToSubscription
13645
+ pricingplanmanager:CancelSubscription
13646
+ pricingplanmanager:CancelSubscriptionChange
13647
+ pricingplanmanager:CreateSubscription
13648
+ pricingplanmanager:DisassociateResourcesFromSubscription
13649
+ pricingplanmanager:GetSubscription
13650
+ pricingplanmanager:ListSubscriptions
13651
+ pricingplanmanager:UpdateSubscription
13608
13652
  private-networks:AcknowledgeOrderReceipt
13609
13653
  private-networks:ActivateDeviceIdentifier
13610
13654
  private-networks:ActivateNetworkSite
@@ -16447,6 +16491,7 @@ securityhub:GetEnabledStandards
16447
16491
  securityhub:GetFindingAggregator
16448
16492
  securityhub:GetFindingHistory
16449
16493
  securityhub:GetFindings
16494
+ securityhub:GetFindingsTrendsV2
16450
16495
  securityhub:GetFreeTrialEndDate
16451
16496
  securityhub:GetFreeTrialUsage
16452
16497
  securityhub:GetInsightFindingTrend
@@ -16456,6 +16501,7 @@ securityhub:GetInvitationsCount
16456
16501
  securityhub:GetMasterAccount
16457
16502
  securityhub:GetMembers
16458
16503
  securityhub:GetResourcesStatisticsV2
16504
+ securityhub:GetResourcesTrendsV2
16459
16505
  securityhub:GetResourcesV2
16460
16506
  securityhub:GetSecurityControlDefinition
16461
16507
  securityhub:GetUsage
@@ -33,19 +33,20 @@ export const handler = async (event, context) => {
33
33
  // The RIC has already initialized the InvokeStore with requestId and X-Ray traceId
34
34
 
35
35
  // Access Lambda context data
36
- console.log(`Processing request: ${InvokeStore.getRequestId()}`);
36
+ const invokeStore = await InvokeStore.getInstanceAsync();
37
+ console.log(`Processing request: ${invokeStore.getRequestId()}`);
37
38
 
38
39
  // Store custom data
39
- InvokeStore.set("userId", event.userId);
40
+ invokeStore.set("userId", event.userId);
40
41
 
41
42
  // Data persists across async operations
42
43
  await processData(event);
43
44
 
44
45
  // Retrieve custom data
45
- const userId = InvokeStore.get("userId");
46
+ const userId = invokeStore.get("userId");
46
47
 
47
48
  return {
48
- requestId: InvokeStore.getRequestId(),
49
+ requestId: invokeStore.getRequestId(),
49
50
  userId,
50
51
  };
51
52
  };
@@ -53,89 +54,96 @@ export const handler = async (event, context) => {
53
54
  // Context is preserved in async operations
54
55
  async function processData(event) {
55
56
  // Still has access to the same invoke context
56
- console.log(`Processing in same context: ${InvokeStore.getRequestId()}`);
57
+ const invokeStore = await InvokeStore.getInstanceAsync();
58
+ console.log(`Processing in same context: ${invokeStore.getRequestId()}`);
57
59
 
58
60
  // Can set additional data
59
- InvokeStore.set("processedData", { result: "success" });
61
+ invokeStore.set("processedData", { result: "success" });
60
62
  }
61
63
  ```
62
64
 
63
65
  ## API Reference
64
66
 
65
- ### InvokeStore.getContext()
67
+ ### InvokeStore.getInstanceAsync()
68
+ First, get an instance of the InvokeStore:
69
+ ```typescript
70
+ const invokeStore = await InvokeStore.getInstanceAsync();
71
+ ```
72
+
73
+ ### invokeStore.getContext()
66
74
 
67
75
  Returns the complete current context or `undefined` if outside a context.
68
76
 
69
77
  ```typescript
70
- const context = InvokeStore.getContext();
78
+ const context = invokeStore.getContext();
71
79
  ```
72
80
 
73
- ### InvokeStore.get(key)
81
+ ### invokeStore.get(key)
74
82
 
75
83
  Gets a value from the current context.
76
84
 
77
85
  ```typescript
78
- const requestId = InvokeStore.get(InvokeStore.PROTECTED_KEYS.REQUEST_ID);
79
- const customValue = InvokeStore.get("customKey");
86
+ const requestId = invokeStore.get(InvokeStoreBase.PROTECTED_KEYS.REQUEST_ID);
87
+ const customValue = invokeStore.get("customKey");
80
88
  ```
81
89
 
82
- ### InvokeStore.set(key, value)
90
+ ### invokeStore.set(key, value)
83
91
 
84
92
  Sets a custom value in the current context. Protected Lambda fields cannot be modified.
85
93
 
86
94
  ```typescript
87
- InvokeStore.set("userId", "user-123");
88
- InvokeStore.set("timestamp", Date.now());
95
+ invokeStore.set("userId", "user-123");
96
+ invokeStore.set("timestamp", Date.now());
89
97
 
90
98
  // This will throw an error:
91
- // InvokeStore.set(InvokeStore.PROTECTED_KEYS.REQUEST_ID, 'new-id');
99
+ // invokeStore.set(InvokeStoreBase.PROTECTED_KEYS.REQUEST_ID, 'new-id');
92
100
  ```
93
101
 
94
- ### InvokeStore.getRequestId()
102
+ ### invokeStore.getRequestId()
95
103
 
96
104
  Convenience method to get the current request ID.
97
105
 
98
106
  ```typescript
99
- const requestId = InvokeStore.getRequestId(); // Returns '-' if outside context
107
+ const requestId = invokeStore.getRequestId(); // Returns '-' if outside context
100
108
  ```
101
109
 
102
- ### InvokeStore.getTenantId()
110
+ ### invokeStore.getTenantId()
103
111
 
104
112
  Convenience method to get the tenant ID.
105
113
 
106
114
  ```typescript
107
- const requestId = InvokeStore.getTenantId();
115
+ const requestId = invokeStore.getTenantId();
108
116
  ```
109
117
 
110
- ### InvokeStore.getXRayTraceId()
118
+ ### invokeStore.getXRayTraceId()
111
119
 
112
120
  Convenience method to get the current [X-Ray trace ID](https://docs.aws.amazon.com/xray/latest/devguide/xray-concepts.html#xray-concepts-traces). This ID is used for distributed tracing across AWS services.
113
121
 
114
122
  ```typescript
115
- const traceId = InvokeStore.getXRayTraceId(); // Returns undefined if not set or outside context
123
+ const traceId = invokeStore.getXRayTraceId(); // Returns undefined if not set or outside context
116
124
  ```
117
125
 
118
- ### InvokeStore.hasContext()
126
+ ### invokeStore.hasContext()
119
127
 
120
128
  Checks if code is currently running within an invoke context.
121
129
 
122
130
  ```typescript
123
- if (InvokeStore.hasContext()) {
131
+ if (invokeStore.hasContext()) {
124
132
  // We're inside an invoke context
125
133
  }
126
134
  ```
127
135
 
128
- ### InvokeStore.run(context, fn)
136
+ ### invokeStore.run(context, fn)
129
137
 
130
138
  > **Note**: This method is primarily used by the Lambda Runtime Interface Client (RIC) to initialize the context for each invocation. Lambda function developers typically don't need to call this method directly.
131
139
 
132
140
  Runs a function within an invoke context.
133
141
 
134
142
  ```typescript
135
- InvokeStore.run(
143
+ invokeStore.run(
136
144
  {
137
- [InvokeStore.PROTECTED_KEYS.REQUEST_ID]: "request-123",
138
- [InvokeStore.PROTECTED_KEYS.X_RAY_TRACE_ID]: "trace-456", // Optional X-Ray trace ID
145
+ [InvokeStoreBase.PROTECTED_KEYS.REQUEST_ID]: "request-123",
146
+ [InvokeStoreBase.PROTECTED_KEYS.X_RAY_TRACE_ID]: "trace-456", // Optional X-Ray trace ID
139
147
  customField: "value", // Optional custom fields
140
148
  },
141
149
  () => {
@@ -1,66 +1,124 @@
1
1
  'use strict';
2
2
 
3
- var async_hooks = require('async_hooks');
4
-
5
- const noGlobalAwsLambda = process.env["AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA"] === "1" ||
6
- process.env["AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA"] === "true";
7
- if (!noGlobalAwsLambda) {
8
- globalThis.awslambda = globalThis.awslambda || {};
9
- }
10
3
  const PROTECTED_KEYS = {
11
- REQUEST_ID: Symbol("_AWS_LAMBDA_REQUEST_ID"),
12
- X_RAY_TRACE_ID: Symbol("_AWS_LAMBDA_X_RAY_TRACE_ID"),
13
- TENANT_ID: Symbol("_AWS_LAMBDA_TENANT_ID"),
4
+ REQUEST_ID: Symbol.for("_AWS_LAMBDA_REQUEST_ID"),
5
+ X_RAY_TRACE_ID: Symbol.for("_AWS_LAMBDA_X_RAY_TRACE_ID"),
6
+ TENANT_ID: Symbol.for("_AWS_LAMBDA_TENANT_ID"),
14
7
  };
15
- class InvokeStoreImpl {
16
- static storage = new async_hooks.AsyncLocalStorage();
8
+ const NO_GLOBAL_AWS_LAMBDA = ["true", "1"].includes(process.env?.AWS_LAMBDA_NODEJS_NO_GLOBAL_AWSLAMBDA ?? "");
9
+ if (!NO_GLOBAL_AWS_LAMBDA) {
10
+ globalThis.awslambda = globalThis.awslambda || {};
11
+ }
12
+ class InvokeStoreBase {
17
13
  static PROTECTED_KEYS = PROTECTED_KEYS;
18
- static run(context, fn) {
19
- return this.storage.run({ ...context }, fn);
14
+ isProtectedKey(key) {
15
+ return Object.values(PROTECTED_KEYS).includes(key);
16
+ }
17
+ getRequestId() {
18
+ return this.get(PROTECTED_KEYS.REQUEST_ID) ?? "-";
20
19
  }
21
- static getContext() {
22
- return this.storage.getStore();
20
+ getXRayTraceId() {
21
+ return this.get(PROTECTED_KEYS.X_RAY_TRACE_ID);
23
22
  }
24
- static get(key) {
25
- const context = this.storage.getStore();
26
- return context?.[key];
23
+ getTenantId() {
24
+ return this.get(PROTECTED_KEYS.TENANT_ID);
27
25
  }
28
- static set(key, value) {
26
+ }
27
+ class InvokeStoreSingle extends InvokeStoreBase {
28
+ currentContext;
29
+ getContext() {
30
+ return this.currentContext;
31
+ }
32
+ hasContext() {
33
+ return this.currentContext !== undefined;
34
+ }
35
+ get(key) {
36
+ return this.currentContext?.[key];
37
+ }
38
+ set(key, value) {
29
39
  if (this.isProtectedKey(key)) {
30
- throw new Error(`Cannot modify protected Lambda context field`);
40
+ throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);
31
41
  }
32
- const context = this.storage.getStore();
33
- if (context) {
34
- context[key] = value;
42
+ this.currentContext = this.currentContext || {};
43
+ this.currentContext[key] = value;
44
+ }
45
+ run(context, fn) {
46
+ this.currentContext = context;
47
+ try {
48
+ return fn();
35
49
  }
50
+ finally {
51
+ this.currentContext = undefined;
52
+ }
53
+ }
54
+ }
55
+ class InvokeStoreMulti extends InvokeStoreBase {
56
+ als;
57
+ static async create() {
58
+ const instance = new InvokeStoreMulti();
59
+ const asyncHooks = await import('node:async_hooks');
60
+ instance.als = new asyncHooks.AsyncLocalStorage();
61
+ return instance;
36
62
  }
37
- static getRequestId() {
38
- return this.get(this.PROTECTED_KEYS.REQUEST_ID) ?? "-";
63
+ getContext() {
64
+ return this.als.getStore();
39
65
  }
40
- static getXRayTraceId() {
41
- return this.get(this.PROTECTED_KEYS.X_RAY_TRACE_ID);
66
+ hasContext() {
67
+ return this.als.getStore() !== undefined;
42
68
  }
43
- static getTenantId() {
44
- return this.get(this.PROTECTED_KEYS.TENANT_ID);
69
+ get(key) {
70
+ return this.als.getStore()?.[key];
45
71
  }
46
- static hasContext() {
47
- return this.storage.getStore() !== undefined;
72
+ set(key, value) {
73
+ if (this.isProtectedKey(key)) {
74
+ throw new Error(`Cannot modify protected Lambda context field: ${String(key)}`);
75
+ }
76
+ const store = this.als.getStore();
77
+ if (!store) {
78
+ throw new Error("No context available");
79
+ }
80
+ store[key] = value;
48
81
  }
49
- static isProtectedKey(key) {
50
- return (key === this.PROTECTED_KEYS.REQUEST_ID ||
51
- key === this.PROTECTED_KEYS.X_RAY_TRACE_ID);
82
+ run(context, fn) {
83
+ return this.als.run(context, fn);
52
84
  }
53
85
  }
54
- let instance;
55
- if (!noGlobalAwsLambda && globalThis.awslambda?.InvokeStore) {
56
- instance = globalThis.awslambda.InvokeStore;
57
- }
58
- else {
59
- instance = InvokeStoreImpl;
60
- if (!noGlobalAwsLambda && globalThis.awslambda) {
61
- globalThis.awslambda.InvokeStore = instance;
86
+ exports.InvokeStore = void 0;
87
+ (function (InvokeStore) {
88
+ let instance = null;
89
+ async function getInstanceAsync() {
90
+ if (!instance) {
91
+ instance = (async () => {
92
+ const isMulti = "AWS_LAMBDA_MAX_CONCURRENCY" in process.env;
93
+ const newInstance = isMulti
94
+ ? await InvokeStoreMulti.create()
95
+ : new InvokeStoreSingle();
96
+ if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda?.InvokeStore) {
97
+ return globalThis.awslambda.InvokeStore;
98
+ }
99
+ else if (!NO_GLOBAL_AWS_LAMBDA && globalThis.awslambda) {
100
+ globalThis.awslambda.InvokeStore = newInstance;
101
+ return newInstance;
102
+ }
103
+ else {
104
+ return newInstance;
105
+ }
106
+ })();
107
+ }
108
+ return instance;
62
109
  }
63
- }
64
- const InvokeStore = instance;
110
+ InvokeStore.getInstanceAsync = getInstanceAsync;
111
+ InvokeStore._testing = process.env.AWS_LAMBDA_BENCHMARK_MODE === "1"
112
+ ? {
113
+ reset: () => {
114
+ instance = null;
115
+ if (globalThis.awslambda?.InvokeStore) {
116
+ delete globalThis.awslambda.InvokeStore;
117
+ }
118
+ globalThis.awslambda = {};
119
+ },
120
+ }
121
+ : undefined;
122
+ })(exports.InvokeStore || (exports.InvokeStore = {}));
65
123
 
66
- exports.InvokeStore = InvokeStore;
124
+ exports.InvokeStoreBase = InvokeStoreBase;