aws-cdk-lib 2.34.1 → 2.34.2

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 (867) hide show
  1. package/.jsii +1 -1
  2. package/alexa-ask/lib/ask.generated.js +1 -1
  3. package/assertions/lib/annotations.js +1 -1
  4. package/assertions/lib/capture.js +1 -1
  5. package/assertions/lib/match.js +1 -1
  6. package/assertions/lib/matcher.js +1 -1
  7. package/assertions/lib/template.js +1 -1
  8. package/assets/lib/staging.js +1 -1
  9. package/aws-accessanalyzer/lib/accessanalyzer.generated.js +1 -1
  10. package/aws-acmpca/lib/acmpca.generated.js +1 -1
  11. package/aws-acmpca/lib/certificate-authority.js +1 -1
  12. package/aws-amazonmq/lib/amazonmq.generated.js +1 -1
  13. package/aws-amplify/lib/amplify.generated.js +1 -1
  14. package/aws-amplifyuibuilder/lib/amplifyuibuilder.generated.js +1 -1
  15. package/aws-apigateway/lib/access-log.js +1 -1
  16. package/aws-apigateway/lib/api-definition.js +1 -1
  17. package/aws-apigateway/lib/api-key.js +1 -1
  18. package/aws-apigateway/lib/apigateway.generated.js +1 -1
  19. package/aws-apigateway/lib/apigatewayv2.js +1 -1
  20. package/aws-apigateway/lib/authorizer.js +1 -1
  21. package/aws-apigateway/lib/authorizers/cognito.js +1 -1
  22. package/aws-apigateway/lib/authorizers/identity-source.js +1 -1
  23. package/aws-apigateway/lib/authorizers/lambda.js +1 -1
  24. package/aws-apigateway/lib/base-path-mapping.js +1 -1
  25. package/aws-apigateway/lib/cors.js +1 -1
  26. package/aws-apigateway/lib/deployment.js +1 -1
  27. package/aws-apigateway/lib/domain-name.js +1 -1
  28. package/aws-apigateway/lib/gateway-response.js +1 -1
  29. package/aws-apigateway/lib/integration.js +1 -1
  30. package/aws-apigateway/lib/integrations/aws.js +1 -1
  31. package/aws-apigateway/lib/integrations/http.js +1 -1
  32. package/aws-apigateway/lib/integrations/lambda.js +1 -1
  33. package/aws-apigateway/lib/integrations/mock.js +1 -1
  34. package/aws-apigateway/lib/integrations/stepfunctions.js +1 -1
  35. package/aws-apigateway/lib/lambda-api.js +1 -1
  36. package/aws-apigateway/lib/method.js +1 -1
  37. package/aws-apigateway/lib/model.js +1 -1
  38. package/aws-apigateway/lib/requestvalidator.js +1 -1
  39. package/aws-apigateway/lib/resource.js +1 -1
  40. package/aws-apigateway/lib/restapi.js +1 -1
  41. package/aws-apigateway/lib/stage.js +1 -1
  42. package/aws-apigateway/lib/stepfunctions-api.js +1 -1
  43. package/aws-apigateway/lib/usage-plan.js +1 -1
  44. package/aws-apigateway/lib/vpc-link.js +1 -1
  45. package/aws-apigatewayv2/lib/apigatewayv2.generated.js +1 -1
  46. package/aws-appconfig/lib/appconfig.generated.js +1 -1
  47. package/aws-appflow/lib/appflow.generated.js +1 -1
  48. package/aws-appintegrations/lib/appintegrations.generated.js +1 -1
  49. package/aws-applicationautoscaling/lib/applicationautoscaling.generated.js +1 -1
  50. package/aws-applicationautoscaling/lib/base-scalable-attribute.js +1 -1
  51. package/aws-applicationautoscaling/lib/scalable-target.js +1 -1
  52. package/aws-applicationautoscaling/lib/schedule.js +1 -1
  53. package/aws-applicationautoscaling/lib/step-scaling-action.js +1 -1
  54. package/aws-applicationautoscaling/lib/step-scaling-policy.js +1 -1
  55. package/aws-applicationautoscaling/lib/target-tracking-scaling-policy.js +1 -1
  56. package/aws-applicationinsights/lib/applicationinsights.generated.js +1 -1
  57. package/aws-appmesh/lib/appmesh.generated.js +1 -1
  58. package/aws-appmesh/lib/gateway-route-spec.js +1 -1
  59. package/aws-appmesh/lib/gateway-route.js +1 -1
  60. package/aws-appmesh/lib/header-match.js +1 -1
  61. package/aws-appmesh/lib/health-checks.js +1 -1
  62. package/aws-appmesh/lib/http-route-path-match.js +1 -1
  63. package/aws-appmesh/lib/mesh.js +1 -1
  64. package/aws-appmesh/lib/query-parameter-match.js +1 -1
  65. package/aws-appmesh/lib/route-spec.js +1 -1
  66. package/aws-appmesh/lib/route.js +1 -1
  67. package/aws-appmesh/lib/service-discovery.js +1 -1
  68. package/aws-appmesh/lib/shared-interfaces.js +1 -1
  69. package/aws-appmesh/lib/tls-certificate.js +1 -1
  70. package/aws-appmesh/lib/tls-validation.js +1 -1
  71. package/aws-appmesh/lib/virtual-gateway-listener.js +1 -1
  72. package/aws-appmesh/lib/virtual-gateway.js +1 -1
  73. package/aws-appmesh/lib/virtual-node-listener.js +1 -1
  74. package/aws-appmesh/lib/virtual-node.js +1 -1
  75. package/aws-appmesh/lib/virtual-router-listener.js +1 -1
  76. package/aws-appmesh/lib/virtual-router.js +1 -1
  77. package/aws-appmesh/lib/virtual-service.js +1 -1
  78. package/aws-apprunner/lib/apprunner.generated.js +1 -1
  79. package/aws-appstream/lib/appstream.generated.js +1 -1
  80. package/aws-appsync/lib/appsync.generated.js +1 -1
  81. package/aws-aps/lib/aps.generated.js +1 -1
  82. package/aws-athena/lib/athena.generated.js +1 -1
  83. package/aws-auditmanager/lib/auditmanager.generated.js +1 -1
  84. package/aws-autoscaling/lib/aspects/require-imdsv2-aspect.js +1 -1
  85. package/aws-autoscaling/lib/auto-scaling-group.js +1 -1
  86. package/aws-autoscaling/lib/autoscaling.generated.js +1 -1
  87. package/aws-autoscaling/lib/lifecycle-hook.js +1 -1
  88. package/aws-autoscaling/lib/schedule.js +1 -1
  89. package/aws-autoscaling/lib/scheduled-action.js +1 -1
  90. package/aws-autoscaling/lib/step-scaling-action.js +1 -1
  91. package/aws-autoscaling/lib/step-scaling-policy.js +1 -1
  92. package/aws-autoscaling/lib/target-tracking-scaling-policy.js +1 -1
  93. package/aws-autoscaling/lib/volume.js +1 -1
  94. package/aws-autoscaling/lib/warm-pool.js +1 -1
  95. package/aws-autoscaling-hooktargets/lib/lambda-hook.js +1 -1
  96. package/aws-autoscaling-hooktargets/lib/queue-hook.js +1 -1
  97. package/aws-autoscaling-hooktargets/lib/topic-hook.js +1 -1
  98. package/aws-autoscalingplans/lib/autoscalingplans.generated.js +1 -1
  99. package/aws-backup/lib/backup.generated.js +1 -1
  100. package/aws-backup/lib/plan.js +1 -1
  101. package/aws-backup/lib/resource.js +1 -1
  102. package/aws-backup/lib/rule.js +1 -1
  103. package/aws-backup/lib/selection.js +1 -1
  104. package/aws-backup/lib/vault.js +1 -1
  105. package/aws-batch/lib/batch.generated.js +1 -1
  106. package/aws-billingconductor/lib/billingconductor.generated.js +1 -1
  107. package/aws-budgets/lib/budgets.generated.js +1 -1
  108. package/aws-cassandra/lib/cassandra.generated.js +1 -1
  109. package/aws-ce/lib/ce.generated.js +1 -1
  110. package/aws-certificatemanager/lib/certificate.js +1 -1
  111. package/aws-certificatemanager/lib/certificatemanager.generated.js +1 -1
  112. package/aws-certificatemanager/lib/dns-validated-certificate.js +1 -1
  113. package/aws-certificatemanager/lib/private-certificate.js +1 -1
  114. package/aws-chatbot/lib/chatbot.generated.js +1 -1
  115. package/aws-chatbot/lib/slack-channel-configuration.js +1 -1
  116. package/aws-cloud9/lib/cloud9.generated.js +1 -1
  117. package/aws-cloudformation/lib/cloudformation.generated.js +1 -1
  118. package/aws-cloudformation/lib/custom-resource.js +1 -1
  119. package/aws-cloudformation/lib/nested-stack.js +1 -1
  120. package/aws-cloudfront/lib/cache-policy.js +1 -1
  121. package/aws-cloudfront/lib/cloudfront.generated.js +1 -1
  122. package/aws-cloudfront/lib/distribution.js +1 -1
  123. package/aws-cloudfront/lib/experimental/edge-function.js +1 -1
  124. package/aws-cloudfront/lib/function.js +1 -1
  125. package/aws-cloudfront/lib/geo-restriction.js +1 -1
  126. package/aws-cloudfront/lib/key-group.js +1 -1
  127. package/aws-cloudfront/lib/origin-access-identity.js +1 -1
  128. package/aws-cloudfront/lib/origin-request-policy.js +1 -1
  129. package/aws-cloudfront/lib/origin.js +1 -1
  130. package/aws-cloudfront/lib/public-key.js +1 -1
  131. package/aws-cloudfront/lib/response-headers-policy.js +1 -1
  132. package/aws-cloudfront/lib/web-distribution.js +2 -2
  133. package/aws-cloudfront-origins/lib/http-origin.js +1 -1
  134. package/aws-cloudfront-origins/lib/load-balancer-origin.js +1 -1
  135. package/aws-cloudfront-origins/lib/origin-group.js +1 -1
  136. package/aws-cloudfront-origins/lib/rest-api-origin.js +1 -1
  137. package/aws-cloudfront-origins/lib/s3-origin.js +1 -1
  138. package/aws-cloudtrail/lib/cloudtrail.generated.js +1 -1
  139. package/aws-cloudtrail/lib/cloudtrail.js +1 -1
  140. package/aws-cloudwatch/lib/alarm-base.js +1 -1
  141. package/aws-cloudwatch/lib/alarm-rule.js +1 -1
  142. package/aws-cloudwatch/lib/alarm-status-widget.js +1 -1
  143. package/aws-cloudwatch/lib/alarm.js +1 -1
  144. package/aws-cloudwatch/lib/cloudwatch.generated.js +1 -1
  145. package/aws-cloudwatch/lib/composite-alarm.js +1 -1
  146. package/aws-cloudwatch/lib/dashboard.js +1 -1
  147. package/aws-cloudwatch/lib/graph.js +1 -1
  148. package/aws-cloudwatch/lib/layout.js +1 -1
  149. package/aws-cloudwatch/lib/log-query.js +1 -1
  150. package/aws-cloudwatch/lib/metric.js +1 -1
  151. package/aws-cloudwatch/lib/text.js +1 -1
  152. package/aws-cloudwatch/lib/widget.js +1 -1
  153. package/aws-cloudwatch-actions/lib/appscaling.js +1 -1
  154. package/aws-cloudwatch-actions/lib/autoscaling.js +1 -1
  155. package/aws-cloudwatch-actions/lib/ec2.js +1 -1
  156. package/aws-cloudwatch-actions/lib/sns.js +1 -1
  157. package/aws-cloudwatch-actions/lib/ssm.js +1 -1
  158. package/aws-codeartifact/lib/codeartifact.generated.js +1 -1
  159. package/aws-codebuild/lib/artifacts.js +1 -1
  160. package/aws-codebuild/lib/build-spec.js +1 -1
  161. package/aws-codebuild/lib/cache.js +1 -1
  162. package/aws-codebuild/lib/codebuild.generated.js +1 -1
  163. package/aws-codebuild/lib/events.js +1 -1
  164. package/aws-codebuild/lib/file-location.js +1 -1
  165. package/aws-codebuild/lib/linux-arm-build-image.js +1 -1
  166. package/aws-codebuild/lib/linux-gpu-build-image.js +1 -1
  167. package/aws-codebuild/lib/pipeline-project.js +1 -1
  168. package/aws-codebuild/lib/project.js +1 -1
  169. package/aws-codebuild/lib/report-group.js +1 -1
  170. package/aws-codebuild/lib/source-credentials.js +1 -1
  171. package/aws-codebuild/lib/source.js +1 -1
  172. package/aws-codebuild/lib/untrusted-code-boundary-policy.js +1 -1
  173. package/aws-codecommit/lib/code.js +1 -1
  174. package/aws-codecommit/lib/codecommit.generated.js +1 -1
  175. package/aws-codecommit/lib/events.js +1 -1
  176. package/aws-codecommit/lib/repository.js +1 -1
  177. package/aws-codedeploy/lib/codedeploy.generated.js +1 -1
  178. package/aws-codedeploy/lib/ecs/application.js +1 -1
  179. package/aws-codedeploy/lib/ecs/deployment-config.js +1 -1
  180. package/aws-codedeploy/lib/ecs/deployment-group.js +1 -1
  181. package/aws-codedeploy/lib/lambda/application.js +1 -1
  182. package/aws-codedeploy/lib/lambda/custom-deployment-config.js +1 -1
  183. package/aws-codedeploy/lib/lambda/deployment-config.js +1 -1
  184. package/aws-codedeploy/lib/lambda/deployment-group.js +1 -1
  185. package/aws-codedeploy/lib/server/application.js +1 -1
  186. package/aws-codedeploy/lib/server/deployment-config.js +1 -1
  187. package/aws-codedeploy/lib/server/deployment-group.js +1 -1
  188. package/aws-codedeploy/lib/server/load-balancer.js +1 -1
  189. package/aws-codeguruprofiler/lib/codeguruprofiler.generated.js +1 -1
  190. package/aws-codeguruprofiler/lib/profiling-group.js +1 -1
  191. package/aws-codegurureviewer/lib/codegurureviewer.generated.js +1 -1
  192. package/aws-codepipeline/lib/action.js +1 -1
  193. package/aws-codepipeline/lib/artifact.js +1 -1
  194. package/aws-codepipeline/lib/codepipeline.generated.js +1 -1
  195. package/aws-codepipeline/lib/custom-action-registration.js +1 -1
  196. package/aws-codepipeline/lib/pipeline.js +1 -1
  197. package/aws-codepipeline-actions/lib/action.js +1 -1
  198. package/aws-codepipeline-actions/lib/alexa-ask/deploy-action.js +1 -1
  199. package/aws-codepipeline-actions/lib/bitbucket/source-action.js +1 -1
  200. package/aws-codepipeline-actions/lib/cloudformation/pipeline-actions.js +1 -1
  201. package/aws-codepipeline-actions/lib/cloudformation/stackinstances-action.js +1 -1
  202. package/aws-codepipeline-actions/lib/cloudformation/stackset-action.js +1 -1
  203. package/aws-codepipeline-actions/lib/cloudformation/stackset-types.js +1 -1
  204. package/aws-codepipeline-actions/lib/codebuild/build-action.js +1 -1
  205. package/aws-codepipeline-actions/lib/codecommit/source-action.js +1 -1
  206. package/aws-codepipeline-actions/lib/codedeploy/ecs-deploy-action.js +1 -1
  207. package/aws-codepipeline-actions/lib/codedeploy/server-deploy-action.js +1 -1
  208. package/aws-codepipeline-actions/lib/codestar-connections/source-action.js +1 -1
  209. package/aws-codepipeline-actions/lib/ecr/source-action.js +1 -1
  210. package/aws-codepipeline-actions/lib/ecs/deploy-action.js +1 -1
  211. package/aws-codepipeline-actions/lib/github/source-action.js +1 -1
  212. package/aws-codepipeline-actions/lib/jenkins/jenkins-action.js +1 -1
  213. package/aws-codepipeline-actions/lib/jenkins/jenkins-provider.js +1 -1
  214. package/aws-codepipeline-actions/lib/lambda/invoke-action.js +1 -1
  215. package/aws-codepipeline-actions/lib/manual-approval-action.js +1 -1
  216. package/aws-codepipeline-actions/lib/s3/deploy-action.js +1 -1
  217. package/aws-codepipeline-actions/lib/s3/source-action.js +1 -1
  218. package/aws-codepipeline-actions/lib/servicecatalog/deploy-action-beta1.js +1 -1
  219. package/aws-codepipeline-actions/lib/stepfunctions/invoke-action.js +1 -1
  220. package/aws-codestar/lib/codestar.generated.js +1 -1
  221. package/aws-codestarconnections/lib/codestarconnections.generated.js +1 -1
  222. package/aws-codestarnotifications/lib/codestarnotifications.generated.js +1 -1
  223. package/aws-codestarnotifications/lib/notification-rule.js +1 -1
  224. package/aws-cognito/lib/cognito.generated.js +1 -1
  225. package/aws-cognito/lib/user-pool-attr.js +1 -1
  226. package/aws-cognito/lib/user-pool-client.js +1 -1
  227. package/aws-cognito/lib/user-pool-domain.js +1 -1
  228. package/aws-cognito/lib/user-pool-email.js +1 -1
  229. package/aws-cognito/lib/user-pool-idp.js +1 -1
  230. package/aws-cognito/lib/user-pool-idps/amazon.js +1 -1
  231. package/aws-cognito/lib/user-pool-idps/apple.js +1 -1
  232. package/aws-cognito/lib/user-pool-idps/base.js +1 -1
  233. package/aws-cognito/lib/user-pool-idps/facebook.js +1 -1
  234. package/aws-cognito/lib/user-pool-idps/google.js +1 -1
  235. package/aws-cognito/lib/user-pool-idps/oidc.js +1 -1
  236. package/aws-cognito/lib/user-pool-resource-server.js +1 -1
  237. package/aws-cognito/lib/user-pool.js +1 -1
  238. package/aws-config/lib/config.generated.js +1 -1
  239. package/aws-config/lib/managed-rules.js +1 -1
  240. package/aws-config/lib/rule.js +1 -1
  241. package/aws-connect/lib/connect.generated.js +1 -1
  242. package/aws-cur/lib/cur.generated.js +1 -1
  243. package/aws-customerprofiles/lib/customerprofiles.generated.js +1 -1
  244. package/aws-databrew/lib/databrew.generated.js +1 -1
  245. package/aws-datapipeline/lib/datapipeline.generated.js +1 -1
  246. package/aws-datasync/lib/datasync.generated.js +1 -1
  247. package/aws-dax/lib/dax.generated.js +1 -1
  248. package/aws-detective/lib/detective.generated.js +1 -1
  249. package/aws-devopsguru/lib/devopsguru.generated.js +1 -1
  250. package/aws-directoryservice/lib/directoryservice.generated.js +1 -1
  251. package/aws-dlm/lib/dlm.generated.js +1 -1
  252. package/aws-dms/lib/dms.generated.js +1 -1
  253. package/aws-docdb/lib/cluster.js +1 -1
  254. package/aws-docdb/lib/database-secret.js +1 -1
  255. package/aws-docdb/lib/docdb.generated.js +1 -1
  256. package/aws-docdb/lib/endpoint.js +1 -1
  257. package/aws-docdb/lib/instance.js +1 -1
  258. package/aws-docdb/lib/parameter-group.js +1 -1
  259. package/aws-dynamodb/lib/dynamodb.generated.js +1 -1
  260. package/aws-dynamodb/lib/table.js +1 -1
  261. package/aws-ec2/lib/aspects/require-imdsv2-aspect.js +1 -1
  262. package/aws-ec2/lib/bastion-host.js +1 -1
  263. package/aws-ec2/lib/cfn-init-elements.js +1 -1
  264. package/aws-ec2/lib/cfn-init.js +1 -1
  265. package/aws-ec2/lib/client-vpn-authorization-rule.js +1 -1
  266. package/aws-ec2/lib/client-vpn-endpoint.js +1 -1
  267. package/aws-ec2/lib/client-vpn-route.js +1 -1
  268. package/aws-ec2/lib/connections.js +1 -1
  269. package/aws-ec2/lib/ec2.generated.js +1 -1
  270. package/aws-ec2/lib/instance-types.js +1 -1
  271. package/aws-ec2/lib/instance.js +1 -1
  272. package/aws-ec2/lib/launch-template.js +1 -1
  273. package/aws-ec2/lib/machine-image.js +1 -1
  274. package/aws-ec2/lib/nat.js +1 -1
  275. package/aws-ec2/lib/network-acl-types.js +1 -1
  276. package/aws-ec2/lib/network-acl.js +1 -1
  277. package/aws-ec2/lib/peer.js +1 -1
  278. package/aws-ec2/lib/port.js +1 -1
  279. package/aws-ec2/lib/security-group.js +1 -1
  280. package/aws-ec2/lib/subnet.js +1 -1
  281. package/aws-ec2/lib/user-data.js +3 -3
  282. package/aws-ec2/lib/volume.js +1 -1
  283. package/aws-ec2/lib/vpc-endpoint-service.js +1 -1
  284. package/aws-ec2/lib/vpc-endpoint.js +1 -1
  285. package/aws-ec2/lib/vpc-flow-logs.js +1 -1
  286. package/aws-ec2/lib/vpc.js +1 -1
  287. package/aws-ec2/lib/vpn.js +1 -1
  288. package/aws-ecr/lib/auth-token.js +1 -1
  289. package/aws-ecr/lib/ecr.generated.js +1 -1
  290. package/aws-ecr/lib/repository.js +1 -1
  291. package/aws-ecr-assets/lib/image-asset.js +2 -2
  292. package/aws-ecr-assets/lib/tarball-asset.js +1 -1
  293. package/aws-ecs/lib/amis.js +1 -1
  294. package/aws-ecs/lib/base/base-service.js +1 -1
  295. package/aws-ecs/lib/base/scalable-task-count.js +1 -1
  296. package/aws-ecs/lib/base/task-definition.js +1 -1
  297. package/aws-ecs/lib/cluster.js +1 -1
  298. package/aws-ecs/lib/container-definition.js +1 -1
  299. package/aws-ecs/lib/container-image.js +1 -1
  300. package/aws-ecs/lib/ec2/ec2-service.js +1 -1
  301. package/aws-ecs/lib/ec2/ec2-task-definition.js +1 -1
  302. package/aws-ecs/lib/ecs.generated.js +1 -1
  303. package/aws-ecs/lib/environment-file.js +1 -1
  304. package/aws-ecs/lib/external/external-service.js +1 -1
  305. package/aws-ecs/lib/external/external-task-definition.js +1 -1
  306. package/aws-ecs/lib/fargate/fargate-service.js +1 -1
  307. package/aws-ecs/lib/fargate/fargate-task-definition.js +1 -1
  308. package/aws-ecs/lib/firelens-log-router.js +1 -1
  309. package/aws-ecs/lib/images/asset-image.js +1 -1
  310. package/aws-ecs/lib/images/ecr.js +1 -1
  311. package/aws-ecs/lib/images/repository.js +1 -1
  312. package/aws-ecs/lib/images/tag-parameter-container-image.js +1 -1
  313. package/aws-ecs/lib/linux-parameters.js +1 -1
  314. package/aws-ecs/lib/log-drivers/aws-log-driver.js +1 -1
  315. package/aws-ecs/lib/log-drivers/firelens-log-driver.js +1 -1
  316. package/aws-ecs/lib/log-drivers/fluentd-log-driver.js +1 -1
  317. package/aws-ecs/lib/log-drivers/gelf-log-driver.js +1 -1
  318. package/aws-ecs/lib/log-drivers/generic-log-driver.js +1 -1
  319. package/aws-ecs/lib/log-drivers/journald-log-driver.js +1 -1
  320. package/aws-ecs/lib/log-drivers/json-file-log-driver.js +1 -1
  321. package/aws-ecs/lib/log-drivers/log-driver.js +1 -1
  322. package/aws-ecs/lib/log-drivers/log-drivers.js +1 -1
  323. package/aws-ecs/lib/log-drivers/splunk-log-driver.js +1 -1
  324. package/aws-ecs/lib/log-drivers/syslog-log-driver.js +1 -1
  325. package/aws-ecs/lib/placement.js +1 -1
  326. package/aws-ecs/lib/proxy-configuration/app-mesh-proxy-configuration.js +1 -1
  327. package/aws-ecs/lib/proxy-configuration/proxy-configuration.js +1 -1
  328. package/aws-ecs/lib/proxy-configuration/proxy-configurations.js +1 -1
  329. package/aws-ecs/lib/runtime-platform.js +1 -1
  330. package/aws-ecs-patterns/lib/base/application-load-balanced-service-base.js +1 -1
  331. package/aws-ecs-patterns/lib/base/application-multiple-target-groups-service-base.js +1 -1
  332. package/aws-ecs-patterns/lib/base/network-load-balanced-service-base.js +1 -1
  333. package/aws-ecs-patterns/lib/base/network-multiple-target-groups-service-base.js +1 -1
  334. package/aws-ecs-patterns/lib/base/queue-processing-service-base.js +1 -1
  335. package/aws-ecs-patterns/lib/base/scheduled-task-base.js +1 -1
  336. package/aws-ecs-patterns/lib/ecs/application-load-balanced-ecs-service.js +1 -1
  337. package/aws-ecs-patterns/lib/ecs/application-multiple-target-groups-ecs-service.js +1 -1
  338. package/aws-ecs-patterns/lib/ecs/network-load-balanced-ecs-service.js +1 -1
  339. package/aws-ecs-patterns/lib/ecs/network-multiple-target-groups-ecs-service.js +1 -1
  340. package/aws-ecs-patterns/lib/ecs/queue-processing-ecs-service.js +1 -1
  341. package/aws-ecs-patterns/lib/ecs/scheduled-ecs-task.js +1 -1
  342. package/aws-ecs-patterns/lib/fargate/application-load-balanced-fargate-service.js +1 -1
  343. package/aws-ecs-patterns/lib/fargate/application-multiple-target-groups-fargate-service.js +1 -1
  344. package/aws-ecs-patterns/lib/fargate/network-load-balanced-fargate-service.js +1 -1
  345. package/aws-ecs-patterns/lib/fargate/network-multiple-target-groups-fargate-service.js +1 -1
  346. package/aws-ecs-patterns/lib/fargate/queue-processing-fargate-service.js +1 -1
  347. package/aws-ecs-patterns/lib/fargate/scheduled-fargate-task.js +1 -1
  348. package/aws-efs/lib/access-point.js +1 -1
  349. package/aws-efs/lib/efs-file-system.js +1 -1
  350. package/aws-efs/lib/efs.generated.js +1 -1
  351. package/aws-eks/lib/alb-controller.js +1 -1
  352. package/aws-eks/lib/aws-auth.js +1 -1
  353. package/aws-eks/lib/cluster.js +1 -1
  354. package/aws-eks/lib/eks.generated.js +1 -1
  355. package/aws-eks/lib/fargate-cluster.js +1 -1
  356. package/aws-eks/lib/fargate-profile.js +1 -1
  357. package/aws-eks/lib/helm-chart.js +1 -1
  358. package/aws-eks/lib/k8s-manifest.js +1 -1
  359. package/aws-eks/lib/k8s-object-value.js +1 -1
  360. package/aws-eks/lib/k8s-patch.js +1 -1
  361. package/aws-eks/lib/kubectl-provider.js +1 -1
  362. package/aws-eks/lib/managed-nodegroup.js +1 -1
  363. package/aws-eks/lib/oidc-provider.js +1 -1
  364. package/aws-eks/lib/service-account.js +1 -1
  365. package/aws-elasticache/lib/elasticache.generated.js +1 -1
  366. package/aws-elasticbeanstalk/lib/elasticbeanstalk.generated.js +1 -1
  367. package/aws-elasticloadbalancing/lib/elasticloadbalancing.generated.js +1 -1
  368. package/aws-elasticloadbalancing/lib/load-balancer.js +1 -1
  369. package/aws-elasticloadbalancingv2/lib/alb/application-listener-action.js +1 -1
  370. package/aws-elasticloadbalancingv2/lib/alb/application-listener-certificate.js +1 -1
  371. package/aws-elasticloadbalancingv2/lib/alb/application-listener-rule.js +1 -1
  372. package/aws-elasticloadbalancingv2/lib/alb/application-listener.js +1 -1
  373. package/aws-elasticloadbalancingv2/lib/alb/application-load-balancer.js +1 -1
  374. package/aws-elasticloadbalancingv2/lib/alb/application-target-group.js +1 -1
  375. package/aws-elasticloadbalancingv2/lib/alb/conditions.js +1 -1
  376. package/aws-elasticloadbalancingv2/lib/elasticloadbalancingv2.generated.js +1 -1
  377. package/aws-elasticloadbalancingv2/lib/nlb/network-listener-action.js +1 -1
  378. package/aws-elasticloadbalancingv2/lib/nlb/network-listener.js +1 -1
  379. package/aws-elasticloadbalancingv2/lib/nlb/network-load-balancer.js +1 -1
  380. package/aws-elasticloadbalancingv2/lib/nlb/network-target-group.js +1 -1
  381. package/aws-elasticloadbalancingv2/lib/shared/base-listener.js +1 -1
  382. package/aws-elasticloadbalancingv2/lib/shared/base-load-balancer.js +1 -1
  383. package/aws-elasticloadbalancingv2/lib/shared/base-target-group.js +1 -1
  384. package/aws-elasticloadbalancingv2/lib/shared/listener-certificate.js +1 -1
  385. package/aws-elasticloadbalancingv2/lib/shared/load-balancer-targets.js +1 -1
  386. package/aws-elasticloadbalancingv2-actions/lib/cognito-action.js +1 -1
  387. package/aws-elasticloadbalancingv2-targets/lib/alb-target.js +1 -1
  388. package/aws-elasticloadbalancingv2-targets/lib/instance-target.js +1 -1
  389. package/aws-elasticloadbalancingv2-targets/lib/ip-target.js +1 -1
  390. package/aws-elasticloadbalancingv2-targets/lib/lambda-target.js +1 -1
  391. package/aws-elasticsearch/lib/domain.js +1 -1
  392. package/aws-elasticsearch/lib/elasticsearch.generated.js +1 -1
  393. package/aws-emr/lib/emr.generated.js +1 -1
  394. package/aws-emrcontainers/lib/emrcontainers.generated.js +1 -1
  395. package/aws-emrserverless/lib/emrserverless.generated.js +1 -1
  396. package/aws-events/lib/api-destination.js +1 -1
  397. package/aws-events/lib/archive.js +1 -1
  398. package/aws-events/lib/connection.js +1 -1
  399. package/aws-events/lib/event-bus.js +1 -1
  400. package/aws-events/lib/events.generated.js +1 -1
  401. package/aws-events/lib/input.js +2 -2
  402. package/aws-events/lib/rule.js +1 -1
  403. package/aws-events/lib/schedule.js +1 -1
  404. package/aws-events-targets/lib/api-destination.js +1 -1
  405. package/aws-events-targets/lib/api-gateway.js +1 -1
  406. package/aws-events-targets/lib/aws-api.js +1 -1
  407. package/aws-events-targets/lib/batch.js +1 -1
  408. package/aws-events-targets/lib/codebuild.js +1 -1
  409. package/aws-events-targets/lib/codepipeline.js +1 -1
  410. package/aws-events-targets/lib/ecs-task.js +1 -1
  411. package/aws-events-targets/lib/event-bus.js +1 -1
  412. package/aws-events-targets/lib/kinesis-firehose-stream.js +1 -1
  413. package/aws-events-targets/lib/kinesis-stream.js +1 -1
  414. package/aws-events-targets/lib/lambda.js +1 -1
  415. package/aws-events-targets/lib/log-group.js +2 -2
  416. package/aws-events-targets/lib/sns.js +1 -1
  417. package/aws-events-targets/lib/sqs.js +1 -1
  418. package/aws-events-targets/lib/state-machine.js +1 -1
  419. package/aws-eventschemas/lib/eventschemas.generated.js +1 -1
  420. package/aws-evidently/lib/evidently.generated.js +1 -1
  421. package/aws-finspace/lib/finspace.generated.js +1 -1
  422. package/aws-fis/lib/fis.generated.js +1 -1
  423. package/aws-fms/lib/fms.generated.js +1 -1
  424. package/aws-forecast/lib/forecast.generated.js +1 -1
  425. package/aws-frauddetector/lib/frauddetector.generated.js +1 -1
  426. package/aws-fsx/lib/file-system.js +1 -1
  427. package/aws-fsx/lib/fsx.generated.js +1 -1
  428. package/aws-fsx/lib/lustre-file-system.js +1 -1
  429. package/aws-fsx/lib/maintenance-time.js +1 -1
  430. package/aws-gamelift/lib/gamelift.generated.js +1 -1
  431. package/aws-globalaccelerator/lib/accelerator.js +1 -1
  432. package/aws-globalaccelerator/lib/endpoint-group.js +1 -1
  433. package/aws-globalaccelerator/lib/endpoint.js +1 -1
  434. package/aws-globalaccelerator/lib/globalaccelerator.generated.js +1 -1
  435. package/aws-globalaccelerator/lib/listener.js +1 -1
  436. package/aws-globalaccelerator-endpoints/lib/alb.js +1 -1
  437. package/aws-globalaccelerator-endpoints/lib/eip.js +1 -1
  438. package/aws-globalaccelerator-endpoints/lib/instance.js +1 -1
  439. package/aws-globalaccelerator-endpoints/lib/nlb.js +1 -1
  440. package/aws-glue/lib/glue.generated.js +1 -1
  441. package/aws-greengrass/lib/greengrass.generated.js +1 -1
  442. package/aws-greengrassv2/lib/greengrassv2.generated.js +1 -1
  443. package/aws-groundstation/lib/groundstation.generated.js +1 -1
  444. package/aws-guardduty/lib/guardduty.generated.js +1 -1
  445. package/aws-healthlake/lib/healthlake.generated.js +1 -1
  446. package/aws-iam/lib/access-key.js +1 -1
  447. package/aws-iam/lib/grant.js +1 -1
  448. package/aws-iam/lib/group.js +1 -1
  449. package/aws-iam/lib/iam.generated.js +1 -1
  450. package/aws-iam/lib/lazy-role.js +1 -1
  451. package/aws-iam/lib/managed-policy.js +1 -1
  452. package/aws-iam/lib/oidc-provider.js +1 -1
  453. package/aws-iam/lib/permissions-boundary.js +1 -1
  454. package/aws-iam/lib/policy-document.js +1 -1
  455. package/aws-iam/lib/policy-statement.js +1 -1
  456. package/aws-iam/lib/policy.js +1 -1
  457. package/aws-iam/lib/principals.js +1 -1
  458. package/aws-iam/lib/role.js +1 -1
  459. package/aws-iam/lib/saml-provider.js +1 -1
  460. package/aws-iam/lib/unknown-principal.js +1 -1
  461. package/aws-iam/lib/user.js +1 -1
  462. package/aws-imagebuilder/lib/imagebuilder.generated.js +1 -1
  463. package/aws-inspector/lib/inspector.generated.js +1 -1
  464. package/aws-inspectorv2/lib/inspectorv2.generated.js +1 -1
  465. package/aws-iot/lib/iot.generated.js +1 -1
  466. package/aws-iot1click/lib/iot1click.generated.js +1 -1
  467. package/aws-iotanalytics/lib/iotanalytics.generated.js +1 -1
  468. package/aws-iotcoredeviceadvisor/lib/iotcoredeviceadvisor.generated.js +1 -1
  469. package/aws-iotevents/lib/iotevents.generated.js +1 -1
  470. package/aws-iotfleethub/lib/iotfleethub.generated.js +1 -1
  471. package/aws-iotsitewise/lib/iotsitewise.generated.js +1 -1
  472. package/aws-iotthingsgraph/lib/iotthingsgraph.generated.js +1 -1
  473. package/aws-iottwinmaker/lib/iottwinmaker.generated.js +1 -1
  474. package/aws-iotwireless/lib/iotwireless.generated.js +1 -1
  475. package/aws-ivs/lib/ivs.generated.js +1 -1
  476. package/aws-kafkaconnect/lib/kafkaconnect.generated.js +1 -1
  477. package/aws-kendra/lib/kendra.generated.js +1 -1
  478. package/aws-kinesis/lib/kinesis.generated.js +1 -1
  479. package/aws-kinesis/lib/stream.js +1 -1
  480. package/aws-kinesisanalytics/lib/kinesisanalytics.generated.js +1 -1
  481. package/aws-kinesisanalytics/lib/kinesisanalyticsv2.generated.js +1 -1
  482. package/aws-kinesisanalyticsv2/lib/kinesisanalyticsv2.generated.js +1 -1
  483. package/aws-kinesisfirehose/lib/kinesisfirehose.generated.js +1 -1
  484. package/aws-kinesisvideo/lib/kinesisvideo.generated.js +1 -1
  485. package/aws-kms/lib/alias.js +1 -1
  486. package/aws-kms/lib/key.js +1 -1
  487. package/aws-kms/lib/kms.generated.js +1 -1
  488. package/aws-kms/lib/via-service-principal.js +1 -1
  489. package/aws-lakeformation/lib/lakeformation.generated.js +1 -1
  490. package/aws-lambda/lib/alias.js +1 -1
  491. package/aws-lambda/lib/architecture.js +1 -1
  492. package/aws-lambda/lib/code-signing-config.js +1 -1
  493. package/aws-lambda/lib/code.js +1 -1
  494. package/aws-lambda/lib/event-invoke-config.js +1 -1
  495. package/aws-lambda/lib/event-source-mapping.js +1 -1
  496. package/aws-lambda/lib/filesystem.js +1 -1
  497. package/aws-lambda/lib/function-base.js +1 -1
  498. package/aws-lambda/lib/function-url.js +1 -1
  499. package/aws-lambda/lib/function.js +1 -1
  500. package/aws-lambda/lib/handler.js +1 -1
  501. package/aws-lambda/lib/image-function.js +1 -1
  502. package/aws-lambda/lib/lambda-insights.js +1 -1
  503. package/aws-lambda/lib/lambda-version.js +1 -1
  504. package/aws-lambda/lib/lambda.generated.js +1 -1
  505. package/aws-lambda/lib/layers.js +1 -1
  506. package/aws-lambda/lib/log-retention.js +1 -1
  507. package/aws-lambda/lib/runtime.js +1 -1
  508. package/aws-lambda/lib/singleton-lambda.js +1 -1
  509. package/aws-lambda-destinations/lib/event-bridge.js +1 -1
  510. package/aws-lambda-destinations/lib/lambda.js +1 -1
  511. package/aws-lambda-destinations/lib/sns.js +1 -1
  512. package/aws-lambda-destinations/lib/sqs.js +1 -1
  513. package/aws-lambda-event-sources/lib/api.js +1 -1
  514. package/aws-lambda-event-sources/lib/dynamodb.js +1 -1
  515. package/aws-lambda-event-sources/lib/kafka.js +1 -1
  516. package/aws-lambda-event-sources/lib/kinesis.js +1 -1
  517. package/aws-lambda-event-sources/lib/s3.js +1 -1
  518. package/aws-lambda-event-sources/lib/sns-dlq.js +1 -1
  519. package/aws-lambda-event-sources/lib/sns.js +1 -1
  520. package/aws-lambda-event-sources/lib/sqs-dlq.js +1 -1
  521. package/aws-lambda-event-sources/lib/sqs.js +1 -1
  522. package/aws-lambda-event-sources/lib/stream.js +1 -1
  523. package/aws-lambda-nodejs/lib/function.js +1 -1
  524. package/aws-lex/lib/lex.generated.js +1 -1
  525. package/aws-licensemanager/lib/licensemanager.generated.js +1 -1
  526. package/aws-lightsail/lib/lightsail.generated.js +1 -1
  527. package/aws-location/lib/location.generated.js +1 -1
  528. package/aws-logs/lib/cross-account-destination.js +1 -1
  529. package/aws-logs/lib/log-group.js +1 -1
  530. package/aws-logs/lib/log-retention.js +1 -1
  531. package/aws-logs/lib/log-stream.js +1 -1
  532. package/aws-logs/lib/logs.generated.js +1 -1
  533. package/aws-logs/lib/metric-filter.js +1 -1
  534. package/aws-logs/lib/pattern.js +1 -1
  535. package/aws-logs/lib/policy.js +1 -1
  536. package/aws-logs/lib/query-definition.js +1 -1
  537. package/aws-logs/lib/subscription-filter.js +1 -1
  538. package/aws-logs-destinations/lib/kinesis.js +1 -1
  539. package/aws-logs-destinations/lib/lambda.js +1 -1
  540. package/aws-lookoutequipment/lib/lookoutequipment.generated.js +1 -1
  541. package/aws-lookoutmetrics/lib/lookoutmetrics.generated.js +1 -1
  542. package/aws-lookoutvision/lib/lookoutvision.generated.js +1 -1
  543. package/aws-macie/lib/macie.generated.js +1 -1
  544. package/aws-managedblockchain/lib/managedblockchain.generated.js +1 -1
  545. package/aws-mediaconnect/lib/mediaconnect.generated.js +1 -1
  546. package/aws-mediaconvert/lib/mediaconvert.generated.js +1 -1
  547. package/aws-medialive/lib/medialive.generated.js +1 -1
  548. package/aws-mediapackage/lib/mediapackage.generated.js +1 -1
  549. package/aws-mediastore/lib/mediastore.generated.js +1 -1
  550. package/aws-mediatailor/lib/mediatailor.generated.js +1 -1
  551. package/aws-memorydb/lib/memorydb.generated.js +1 -1
  552. package/aws-msk/lib/msk.generated.js +1 -1
  553. package/aws-mwaa/lib/mwaa.generated.js +1 -1
  554. package/aws-neptune/lib/neptune.generated.js +1 -1
  555. package/aws-networkfirewall/lib/networkfirewall.generated.js +1 -1
  556. package/aws-networkmanager/lib/networkmanager.generated.js +1 -1
  557. package/aws-nimblestudio/lib/nimblestudio.generated.js +1 -1
  558. package/aws-opensearchservice/lib/domain.js +1 -1
  559. package/aws-opensearchservice/lib/opensearchservice.generated.js +1 -1
  560. package/aws-opensearchservice/lib/version.js +1 -1
  561. package/aws-opsworks/lib/opsworks.generated.js +1 -1
  562. package/aws-opsworkscm/lib/opsworkscm.generated.js +1 -1
  563. package/aws-panorama/lib/panorama.generated.js +1 -1
  564. package/aws-personalize/lib/personalize.generated.js +1 -1
  565. package/aws-pinpoint/lib/pinpoint.generated.js +1 -1
  566. package/aws-pinpointemail/lib/pinpointemail.generated.js +1 -1
  567. package/aws-qldb/lib/qldb.generated.js +1 -1
  568. package/aws-quicksight/lib/quicksight.generated.js +1 -1
  569. package/aws-ram/lib/ram.generated.js +1 -1
  570. package/aws-rds/lib/cluster-engine.js +1 -1
  571. package/aws-rds/lib/cluster.js +1 -1
  572. package/aws-rds/lib/database-secret.js +1 -1
  573. package/aws-rds/lib/endpoint.js +1 -1
  574. package/aws-rds/lib/instance-engine.js +1 -1
  575. package/aws-rds/lib/instance.js +1 -1
  576. package/aws-rds/lib/option-group.js +1 -1
  577. package/aws-rds/lib/parameter-group.js +1 -1
  578. package/aws-rds/lib/props.js +1 -1
  579. package/aws-rds/lib/proxy.js +1 -1
  580. package/aws-rds/lib/rds.generated.js +1 -1
  581. package/aws-rds/lib/serverless-cluster.js +1 -1
  582. package/aws-rds/lib/subnet-group.js +1 -1
  583. package/aws-redshift/lib/redshift.generated.js +1 -1
  584. package/aws-redshiftserverless/lib/redshiftserverless.generated.js +1 -1
  585. package/aws-refactorspaces/lib/refactorspaces.generated.js +1 -1
  586. package/aws-rekognition/lib/rekognition.generated.js +1 -1
  587. package/aws-resiliencehub/lib/resiliencehub.generated.js +1 -1
  588. package/aws-resourcegroups/lib/resourcegroups.generated.js +1 -1
  589. package/aws-robomaker/lib/robomaker.generated.js +1 -1
  590. package/aws-route53/lib/hosted-zone.js +1 -1
  591. package/aws-route53/lib/record-set.js +1 -1
  592. package/aws-route53/lib/route53.generated.js +1 -1
  593. package/aws-route53/lib/vpc-endpoint-service-domain-name.js +1 -1
  594. package/aws-route53-patterns/lib/website-redirect.js +1 -1
  595. package/aws-route53-targets/lib/api-gateway-domain-name.js +1 -1
  596. package/aws-route53-targets/lib/api-gatewayv2-domain-name.js +1 -1
  597. package/aws-route53-targets/lib/bucket-website-target.js +1 -1
  598. package/aws-route53-targets/lib/classic-load-balancer-target.js +1 -1
  599. package/aws-route53-targets/lib/cloudfront-target.js +1 -1
  600. package/aws-route53-targets/lib/elastic-beanstalk-environment-target.js +1 -1
  601. package/aws-route53-targets/lib/global-accelerator-target.js +1 -1
  602. package/aws-route53-targets/lib/interface-vpc-endpoint-target.js +1 -1
  603. package/aws-route53-targets/lib/load-balancer-target.js +1 -1
  604. package/aws-route53-targets/lib/route53-record.js +1 -1
  605. package/aws-route53-targets/lib/userpool-domain.js +1 -1
  606. package/aws-route53recoverycontrol/lib/route53recoverycontrol.generated.js +1 -1
  607. package/aws-route53recoveryreadiness/lib/route53recoveryreadiness.generated.js +1 -1
  608. package/aws-route53resolver/lib/route53resolver.generated.js +1 -1
  609. package/aws-rum/lib/rum.generated.js +1 -1
  610. package/aws-s3/lib/bucket-policy.js +1 -1
  611. package/aws-s3/lib/bucket.js +1 -1
  612. package/aws-s3/lib/rule.js +1 -1
  613. package/aws-s3/lib/s3.generated.js +1 -1
  614. package/aws-s3-assets/lib/asset.js +1 -1
  615. package/aws-s3-deployment/lib/bucket-deployment.js +1 -1
  616. package/aws-s3-deployment/lib/source.js +1 -1
  617. package/aws-s3-notifications/lib/lambda.js +1 -1
  618. package/aws-s3-notifications/lib/sns.js +1 -1
  619. package/aws-s3-notifications/lib/sqs.js +1 -1
  620. package/aws-s3objectlambda/lib/s3objectlambda.generated.js +1 -1
  621. package/aws-s3outposts/lib/s3outposts.generated.js +1 -1
  622. package/aws-sagemaker/lib/sagemaker.generated.js +1 -1
  623. package/aws-sam/lib/sam.generated.js +1 -1
  624. package/aws-sdb/lib/sdb.generated.js +1 -1
  625. package/aws-secretsmanager/lib/policy.js +1 -1
  626. package/aws-secretsmanager/lib/rotation-schedule.js +1 -1
  627. package/aws-secretsmanager/lib/secret-rotation.js +1 -1
  628. package/aws-secretsmanager/lib/secret.js +1 -1
  629. package/aws-secretsmanager/lib/secretsmanager.generated.js +1 -1
  630. package/aws-securityhub/lib/securityhub.generated.js +1 -1
  631. package/aws-servicecatalog/lib/cloudformation-template.js +1 -1
  632. package/aws-servicecatalog/lib/portfolio.js +1 -1
  633. package/aws-servicecatalog/lib/product-stack-history.js +1 -1
  634. package/aws-servicecatalog/lib/product-stack.js +1 -1
  635. package/aws-servicecatalog/lib/product.js +1 -1
  636. package/aws-servicecatalog/lib/servicecatalog.generated.js +1 -1
  637. package/aws-servicecatalog/lib/tag-options.js +1 -1
  638. package/aws-servicecatalogappregistry/lib/servicecatalogappregistry.generated.js +1 -1
  639. package/aws-servicediscovery/lib/alias-target-instance.js +1 -1
  640. package/aws-servicediscovery/lib/cname-instance.js +1 -1
  641. package/aws-servicediscovery/lib/http-namespace.js +1 -1
  642. package/aws-servicediscovery/lib/instance.js +1 -1
  643. package/aws-servicediscovery/lib/ip-instance.js +1 -1
  644. package/aws-servicediscovery/lib/non-ip-instance.js +1 -1
  645. package/aws-servicediscovery/lib/private-dns-namespace.js +1 -1
  646. package/aws-servicediscovery/lib/public-dns-namespace.js +1 -1
  647. package/aws-servicediscovery/lib/service.js +1 -1
  648. package/aws-servicediscovery/lib/servicediscovery.generated.js +1 -1
  649. package/aws-ses/lib/configuration-set.js +1 -1
  650. package/aws-ses/lib/dedicated-ip-pool.js +1 -1
  651. package/aws-ses/lib/email-identity.js +1 -1
  652. package/aws-ses/lib/receipt-filter.js +1 -1
  653. package/aws-ses/lib/receipt-rule-set.js +1 -1
  654. package/aws-ses/lib/receipt-rule.js +1 -1
  655. package/aws-ses/lib/ses.generated.js +1 -1
  656. package/aws-ses-actions/lib/add-header.js +1 -1
  657. package/aws-ses-actions/lib/bounce.js +1 -1
  658. package/aws-ses-actions/lib/lambda.js +1 -1
  659. package/aws-ses-actions/lib/s3.js +1 -1
  660. package/aws-ses-actions/lib/sns.js +1 -1
  661. package/aws-ses-actions/lib/stop.js +1 -1
  662. package/aws-signer/lib/signer.generated.js +1 -1
  663. package/aws-signer/lib/signing-profile.js +1 -1
  664. package/aws-sns/lib/policy.js +1 -1
  665. package/aws-sns/lib/sns.generated.js +1 -1
  666. package/aws-sns/lib/subscription-filter.js +1 -1
  667. package/aws-sns/lib/subscription.js +1 -1
  668. package/aws-sns/lib/topic-base.js +1 -1
  669. package/aws-sns/lib/topic.js +1 -1
  670. package/aws-sns-subscriptions/lib/email.js +1 -1
  671. package/aws-sns-subscriptions/lib/lambda.js +1 -1
  672. package/aws-sns-subscriptions/lib/sms.js +1 -1
  673. package/aws-sns-subscriptions/lib/sqs.js +1 -1
  674. package/aws-sns-subscriptions/lib/url.js +1 -1
  675. package/aws-sqs/lib/policy.js +1 -1
  676. package/aws-sqs/lib/queue-base.js +1 -1
  677. package/aws-sqs/lib/queue.js +1 -1
  678. package/aws-sqs/lib/sqs.generated.js +1 -1
  679. package/aws-ssm/lib/parameter.js +1 -1
  680. package/aws-ssm/lib/ssm.generated.js +1 -1
  681. package/aws-ssmcontacts/lib/ssmcontacts.generated.js +1 -1
  682. package/aws-ssmincidents/lib/ssmincidents.generated.js +1 -1
  683. package/aws-sso/lib/sso.generated.js +1 -1
  684. package/aws-stepfunctions/lib/activity.js +1 -1
  685. package/aws-stepfunctions/lib/chain.js +1 -1
  686. package/aws-stepfunctions/lib/condition.js +1 -1
  687. package/aws-stepfunctions/lib/fields.js +1 -1
  688. package/aws-stepfunctions/lib/input.js +1 -1
  689. package/aws-stepfunctions/lib/state-graph.js +1 -1
  690. package/aws-stepfunctions/lib/state-machine-fragment.js +1 -1
  691. package/aws-stepfunctions/lib/state-machine.js +1 -1
  692. package/aws-stepfunctions/lib/state-transition-metrics.js +1 -1
  693. package/aws-stepfunctions/lib/states/choice.js +1 -1
  694. package/aws-stepfunctions/lib/states/custom-state.js +1 -1
  695. package/aws-stepfunctions/lib/states/fail.js +1 -1
  696. package/aws-stepfunctions/lib/states/map.js +1 -1
  697. package/aws-stepfunctions/lib/states/parallel.js +1 -1
  698. package/aws-stepfunctions/lib/states/pass.js +1 -1
  699. package/aws-stepfunctions/lib/states/state.js +1 -1
  700. package/aws-stepfunctions/lib/states/succeed.js +1 -1
  701. package/aws-stepfunctions/lib/states/task-base.js +1 -1
  702. package/aws-stepfunctions/lib/states/task.js +1 -1
  703. package/aws-stepfunctions/lib/states/wait.js +1 -1
  704. package/aws-stepfunctions/lib/stepfunctions.generated.js +1 -1
  705. package/aws-stepfunctions/lib/types.js +1 -1
  706. package/aws-stepfunctions-tasks/lib/apigateway/call-http-api.js +1 -1
  707. package/aws-stepfunctions-tasks/lib/apigateway/call-rest-api.js +1 -1
  708. package/aws-stepfunctions-tasks/lib/athena/get-query-execution.js +1 -1
  709. package/aws-stepfunctions-tasks/lib/athena/get-query-results.js +1 -1
  710. package/aws-stepfunctions-tasks/lib/athena/start-query-execution.js +1 -1
  711. package/aws-stepfunctions-tasks/lib/athena/stop-query-execution.js +1 -1
  712. package/aws-stepfunctions-tasks/lib/aws-sdk/call-aws-service.js +1 -1
  713. package/aws-stepfunctions-tasks/lib/batch/run-batch-job.js +1 -1
  714. package/aws-stepfunctions-tasks/lib/batch/submit-job.js +1 -1
  715. package/aws-stepfunctions-tasks/lib/codebuild/start-build.js +1 -1
  716. package/aws-stepfunctions-tasks/lib/databrew/start-job-run.js +1 -1
  717. package/aws-stepfunctions-tasks/lib/dynamodb/delete-item.js +1 -1
  718. package/aws-stepfunctions-tasks/lib/dynamodb/get-item.js +1 -1
  719. package/aws-stepfunctions-tasks/lib/dynamodb/put-item.js +1 -1
  720. package/aws-stepfunctions-tasks/lib/dynamodb/shared-types.js +1 -1
  721. package/aws-stepfunctions-tasks/lib/dynamodb/update-item.js +1 -1
  722. package/aws-stepfunctions-tasks/lib/ecs/run-ecs-ec2-task.js +1 -1
  723. package/aws-stepfunctions-tasks/lib/ecs/run-ecs-fargate-task.js +1 -1
  724. package/aws-stepfunctions-tasks/lib/ecs/run-ecs-task-base.js +1 -1
  725. package/aws-stepfunctions-tasks/lib/ecs/run-task.js +1 -1
  726. package/aws-stepfunctions-tasks/lib/eks/call.js +1 -1
  727. package/aws-stepfunctions-tasks/lib/emr/emr-add-step.js +1 -1
  728. package/aws-stepfunctions-tasks/lib/emr/emr-cancel-step.js +1 -1
  729. package/aws-stepfunctions-tasks/lib/emr/emr-create-cluster.js +1 -1
  730. package/aws-stepfunctions-tasks/lib/emr/emr-modify-instance-fleet-by-name.js +1 -1
  731. package/aws-stepfunctions-tasks/lib/emr/emr-modify-instance-group-by-name.js +1 -1
  732. package/aws-stepfunctions-tasks/lib/emr/emr-set-cluster-termination-protection.js +1 -1
  733. package/aws-stepfunctions-tasks/lib/emr/emr-terminate-cluster.js +1 -1
  734. package/aws-stepfunctions-tasks/lib/emrcontainers/create-virtual-cluster.js +1 -1
  735. package/aws-stepfunctions-tasks/lib/emrcontainers/delete-virtual-cluster.js +1 -1
  736. package/aws-stepfunctions-tasks/lib/emrcontainers/start-job-run.js +1 -1
  737. package/aws-stepfunctions-tasks/lib/evaluate-expression.js +1 -1
  738. package/aws-stepfunctions-tasks/lib/eventbridge/put-events.js +1 -1
  739. package/aws-stepfunctions-tasks/lib/glue/run-glue-job-task.js +1 -1
  740. package/aws-stepfunctions-tasks/lib/glue/start-job-run.js +1 -1
  741. package/aws-stepfunctions-tasks/lib/invoke-activity.js +1 -1
  742. package/aws-stepfunctions-tasks/lib/lambda/invoke-function.js +1 -1
  743. package/aws-stepfunctions-tasks/lib/lambda/invoke.js +1 -1
  744. package/aws-stepfunctions-tasks/lib/lambda/run-lambda-task.js +1 -1
  745. package/aws-stepfunctions-tasks/lib/sagemaker/base-types.js +1 -1
  746. package/aws-stepfunctions-tasks/lib/sagemaker/create-endpoint-config.js +1 -1
  747. package/aws-stepfunctions-tasks/lib/sagemaker/create-endpoint.js +1 -1
  748. package/aws-stepfunctions-tasks/lib/sagemaker/create-model.js +1 -1
  749. package/aws-stepfunctions-tasks/lib/sagemaker/create-training-job.js +1 -1
  750. package/aws-stepfunctions-tasks/lib/sagemaker/create-transform-job.js +1 -1
  751. package/aws-stepfunctions-tasks/lib/sagemaker/update-endpoint.js +1 -1
  752. package/aws-stepfunctions-tasks/lib/sns/publish-to-topic.js +1 -1
  753. package/aws-stepfunctions-tasks/lib/sns/publish.js +1 -1
  754. package/aws-stepfunctions-tasks/lib/sqs/send-message.js +1 -1
  755. package/aws-stepfunctions-tasks/lib/sqs/send-to-queue.js +1 -1
  756. package/aws-stepfunctions-tasks/lib/start-execution.js +1 -1
  757. package/aws-stepfunctions-tasks/lib/stepfunctions/invoke-activity.js +1 -1
  758. package/aws-stepfunctions-tasks/lib/stepfunctions/start-execution.js +1 -1
  759. package/aws-synthetics/lib/synthetics.generated.js +1 -1
  760. package/aws-timestream/lib/timestream.generated.js +1 -1
  761. package/aws-transfer/lib/transfer.generated.js +1 -1
  762. package/aws-voiceid/lib/voiceid.generated.js +1 -1
  763. package/aws-waf/lib/waf.generated.js +1 -1
  764. package/aws-wafregional/lib/wafregional.generated.js +1 -1
  765. package/aws-wafv2/lib/wafv2.generated.js +1 -1
  766. package/aws-wisdom/lib/wisdom.generated.js +1 -1
  767. package/aws-workspaces/lib/workspaces.generated.js +1 -1
  768. package/aws-xray/lib/xray.generated.js +1 -1
  769. package/cloud-assembly-schema/lib/manifest.js +1 -1
  770. package/cloudformation-include/lib/cfn-include.js +1 -1
  771. package/core/lib/annotations.js +1 -1
  772. package/core/lib/app.js +1 -1
  773. package/core/lib/arn.js +1 -1
  774. package/core/lib/aspect.js +1 -1
  775. package/core/lib/asset-staging.js +1 -1
  776. package/core/lib/bundling.js +1 -1
  777. package/core/lib/cfn-codedeploy-blue-green-hook.js +1 -1
  778. package/core/lib/cfn-condition.js +1 -1
  779. package/core/lib/cfn-dynamic-reference.js +1 -1
  780. package/core/lib/cfn-element.js +1 -1
  781. package/core/lib/cfn-fn.js +1 -1
  782. package/core/lib/cfn-hook.js +1 -1
  783. package/core/lib/cfn-include.js +1 -1
  784. package/core/lib/cfn-json.js +1 -1
  785. package/core/lib/cfn-mapping.js +1 -1
  786. package/core/lib/cfn-output.js +1 -1
  787. package/core/lib/cfn-parameter.js +1 -1
  788. package/core/lib/cfn-pseudo.js +1 -1
  789. package/core/lib/cfn-resource.js +1 -1
  790. package/core/lib/cfn-rule.js +1 -1
  791. package/core/lib/cloudformation.generated.js +1 -1
  792. package/core/lib/context-provider.js +1 -1
  793. package/core/lib/custom-resource-provider/custom-resource-provider.js +1 -1
  794. package/core/lib/custom-resource.js +1 -1
  795. package/core/lib/duration.js +1 -1
  796. package/core/lib/expiration.js +1 -1
  797. package/core/lib/feature-flags.js +1 -1
  798. package/core/lib/fs/ignore.js +1 -1
  799. package/core/lib/fs/index.js +1 -1
  800. package/core/lib/lazy.js +1 -1
  801. package/core/lib/names.js +1 -1
  802. package/core/lib/nested-stack.js +1 -1
  803. package/core/lib/physical-name.js +1 -1
  804. package/core/lib/private/intrinsic.js +1 -1
  805. package/core/lib/reference.js +1 -1
  806. package/core/lib/resolvable.js +2 -2
  807. package/core/lib/resource.js +1 -1
  808. package/core/lib/runtime.js +2 -2
  809. package/core/lib/secret-value.js +1 -1
  810. package/core/lib/size.js +1 -1
  811. package/core/lib/stack-synthesizers/bootstrapless-synthesizer.js +1 -1
  812. package/core/lib/stack-synthesizers/cli-credentials-synthesizer.js +1 -1
  813. package/core/lib/stack-synthesizers/default-synthesizer.js +1 -1
  814. package/core/lib/stack-synthesizers/legacy.js +1 -1
  815. package/core/lib/stack-synthesizers/nested.js +1 -1
  816. package/core/lib/stack-synthesizers/stack-synthesizer.js +1 -1
  817. package/core/lib/stack.js +1 -1
  818. package/core/lib/stage.js +1 -1
  819. package/core/lib/string-fragments.js +1 -1
  820. package/core/lib/tag-aspect.js +1 -1
  821. package/core/lib/tag-manager.js +1 -1
  822. package/core/lib/token.js +1 -1
  823. package/core/lib/tree.js +1 -1
  824. package/custom-resources/lib/aws-custom-resource/aws-custom-resource.js +1 -1
  825. package/custom-resources/lib/provider-framework/provider.js +1 -1
  826. package/cx-api/lib/artifacts/asset-manifest-artifact.js +1 -1
  827. package/cx-api/lib/artifacts/cloudformation-artifact.js +1 -1
  828. package/cx-api/lib/artifacts/nested-cloud-assembly-artifact.js +1 -1
  829. package/cx-api/lib/artifacts/tree-cloud-artifact.js +1 -1
  830. package/cx-api/lib/cloud-artifact.js +1 -1
  831. package/cx-api/lib/cloud-assembly.js +1 -1
  832. package/cx-api/lib/environment.js +1 -1
  833. package/cx-api/lib/placeholders.js +1 -1
  834. package/lambda-layer-awscli/lib/awscli-layer.js +1 -1
  835. package/lambda-layer-awscli/lib/layer.zip +0 -0
  836. package/lambda-layer-kubectl/lib/kubectl-layer.js +1 -1
  837. package/lambda-layer-kubectl/lib/layer.zip +0 -0
  838. package/lambda-layer-node-proxy-agent/lib/layer.zip +0 -0
  839. package/lambda-layer-node-proxy-agent/lib/node-proxy-agent-layer.js +1 -1
  840. package/package.json +244 -244
  841. package/pipelines/lib/blueprint/file-set.js +1 -1
  842. package/pipelines/lib/blueprint/manual-approval.js +1 -1
  843. package/pipelines/lib/blueprint/shell-step.js +1 -1
  844. package/pipelines/lib/blueprint/stack-deployment.js +1 -1
  845. package/pipelines/lib/blueprint/stage-deployment.js +1 -1
  846. package/pipelines/lib/blueprint/step.js +1 -1
  847. package/pipelines/lib/blueprint/wave.js +1 -1
  848. package/pipelines/lib/codepipeline/artifact-map.js +1 -1
  849. package/pipelines/lib/codepipeline/codebuild-step.js +1 -1
  850. package/pipelines/lib/codepipeline/codepipeline-source.js +1 -1
  851. package/pipelines/lib/codepipeline/codepipeline.js +1 -1
  852. package/pipelines/lib/codepipeline/confirm-permissions-broadening.js +1 -1
  853. package/pipelines/lib/docker-credentials.js +1 -1
  854. package/pipelines/lib/legacy/actions/deploy-cdk-stack-action.js +1 -1
  855. package/pipelines/lib/legacy/actions/publish-assets-action.js +1 -1
  856. package/pipelines/lib/legacy/actions/update-pipeline-action.js +1 -1
  857. package/pipelines/lib/legacy/pipeline.js +1 -1
  858. package/pipelines/lib/legacy/stage.js +1 -1
  859. package/pipelines/lib/legacy/synths/simple-synth-action.js +1 -1
  860. package/pipelines/lib/legacy/validation/shell-script-action.js +1 -1
  861. package/pipelines/lib/main/pipeline-base.js +1 -1
  862. package/region-info/lib/built-ins.generated.d.ts +1 -1
  863. package/region-info/lib/default.js +1 -1
  864. package/region-info/lib/fact.js +1 -1
  865. package/region-info/lib/region-info.js +1 -1
  866. package/triggers/lib/trigger-function.js +1 -1
  867. package/triggers/lib/trigger.js +1 -1
@@ -1,3 +1,3 @@
1
1
  "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.deriveEstimateSizeOptions=exports.Effect=exports.PolicyStatement=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),group_1=require("./group"),principals_1=require("./principals"),postprocess_policy_document_1=require("./private/postprocess-policy-document"),util_1=require("./util"),ensureArrayOrUndefined=field=>{if(field!==void 0){if(typeof field!="string"&&!Array.isArray(field))throw new Error("Fields must be either a string or an array of strings");if(Array.isArray(field)&&!!field.find(f=>typeof f!="string"))throw new Error("Fields must be either a string or an array of strings");return Array.isArray(field)?field:[field]}},DEFAULT_ARN_SIZE_ESTIMATE=150,ARN_SIZE_ESTIMATE_CONTEXT_KEY="@aws-cdk/aws-iam.arnSizeEstimate";class PolicyStatement{constructor(props={}){this._action=new OrderedSet,this._notAction=new OrderedSet,this._principal={},this._notPrincipal={},this._resource=new OrderedSet,this._notResource=new OrderedSet,this._condition={},this._principals=new OrderedSet,this._notPrincipals=new OrderedSet,this._frozen=!1;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatementProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,PolicyStatement),error}for(const action of[...props.actions||[],...props.notActions||[]])if(!/^(\*|[a-zA-Z0-9-]+:[a-zA-Z0-9*]+)$/.test(action)&&!cdk.Token.isUnresolved(action))throw new Error(`Action '${action}' is invalid. An action string consists of a service namespace, a colon, and the name of an action. Action names can include wildcards.`);this._sid=props.sid,this._effect=props.effect||Effect.ALLOW,this.addActions(...props.actions||[]),this.addNotActions(...props.notActions||[]),this.addPrincipals(...props.principals||[]),this.addNotPrincipals(...props.notPrincipals||[]),this.addResources(...props.resources||[]),this.addNotResources(...props.notResources||[]),props.conditions!==void 0&&this.addConditions(props.conditions)}static fromJson(obj){const ret=new PolicyStatement({sid:obj.Sid,actions:ensureArrayOrUndefined(obj.Action),resources:ensureArrayOrUndefined(obj.Resource),conditions:obj.Condition,effect:obj.Effect,notActions:ensureArrayOrUndefined(obj.NotAction),notResources:ensureArrayOrUndefined(obj.NotResource),principals:obj.Principal?[new JsonPrincipal(obj.Principal)]:void 0,notPrincipals:obj.NotPrincipal?[new JsonPrincipal(obj.NotPrincipal)]:void 0}),errors=ret.validateForAnyPolicy();if(errors.length>0)throw new Error("Incorrect Policy Statement: "+errors.join(`
2
- `));return ret}get sid(){return this._sid}set sid(sid){this.assertNotFrozen("sid"),this._sid=sid}get effect(){return this._effect}set effect(effect){this.assertNotFrozen("effect"),this._effect=effect}addActions(...actions){if(this.assertNotFrozen("addActions"),actions.length>0&&this._notAction.length>0)throw new Error("Cannot add 'Actions' to policy statement if 'NotActions' have been added");this._action.push(...actions)}addNotActions(...notActions){if(this.assertNotFrozen("addNotActions"),notActions.length>0&&this._action.length>0)throw new Error("Cannot add 'NotActions' to policy statement if 'Actions' have been added");this._notAction.push(...notActions)}get hasPrincipal(){return this._principals.length+this._notPrincipals.length>0}addPrincipals(...principals){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addPrincipals),error}if(this.assertNotFrozen("addPrincipals"),principals.length>0&&this._notPrincipals.length>0)throw new Error("Cannot add 'Principals' to policy statement if 'NotPrincipals' have been added");for(const principal of principals)this.validatePolicyPrincipal(principal);const added=this._principals.push(...principals);for(const principal of added){const fragment=principal.policyFragment;util_1.mergePrincipal(this._principal,fragment.principalJson),this.addPrincipalConditions(fragment.conditions)}}addNotPrincipals(...notPrincipals){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(notPrincipals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addNotPrincipals),error}if(this.assertNotFrozen("addNotPrincipals"),notPrincipals.length>0&&this._principals.length>0)throw new Error("Cannot add 'NotPrincipals' to policy statement if 'Principals' have been added");for(const notPrincipal of notPrincipals)this.validatePolicyPrincipal(notPrincipal);const added=this._notPrincipals.push(...notPrincipals);for(const notPrincipal of added){const fragment=notPrincipal.policyFragment;util_1.mergePrincipal(this._notPrincipal,fragment.principalJson),this.addPrincipalConditions(fragment.conditions)}}validatePolicyPrincipal(principal){if(principal instanceof group_1.Group)throw new Error("Cannot use an IAM Group as the 'Principal' or 'NotPrincipal' in an IAM Policy")}addAwsAccountPrincipal(accountId){this.addPrincipals(new principals_1.AccountPrincipal(accountId))}addArnPrincipal(arn){this.addPrincipals(new principals_1.ArnPrincipal(arn))}addServicePrincipal(service,opts){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ServicePrincipalOpts(opts)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addServicePrincipal),error}this.addPrincipals(new principals_1.ServicePrincipal(service,opts))}addFederatedPrincipal(federated,conditions){this.addPrincipals(new principals_1.FederatedPrincipal(federated,conditions))}addAccountRootPrincipal(){this.addPrincipals(new principals_1.AccountRootPrincipal)}addCanonicalUserPrincipal(canonicalUserId){this.addPrincipals(new principals_1.CanonicalUserPrincipal(canonicalUserId))}addAnyPrincipal(){this.addPrincipals(new principals_1.AnyPrincipal)}addResources(...arns){if(this.assertNotFrozen("addResources"),arns.length>0&&this._notResource.length>0)throw new Error("Cannot add 'Resources' to policy statement if 'NotResources' have been added");this._resource.push(...arns)}addNotResources(...arns){if(this.assertNotFrozen("addNotResources"),arns.length>0&&this._resource.length>0)throw new Error("Cannot add 'NotResources' to policy statement if 'Resources' have been added");this._notResource.push(...arns)}addAllResources(){this.addResources("*")}get hasResource(){return this._resource&&this._resource.length>0}addCondition(key,value){this.assertNotFrozen("addCondition"),principals_1.validateConditionObject(value);const existingValue=this._condition[key];this._condition[key]=existingValue?{...existingValue,...value}:value}addConditions(conditions){Object.keys(conditions).map(key=>{this.addCondition(key,conditions[key])})}addAccountCondition(accountId){this.addCondition("StringEquals",{"sts:ExternalId":accountId})}copy(overrides={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatementProps(overrides)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.copy),error}return new PolicyStatement({sid:overrides.sid??this.sid,effect:overrides.effect??this.effect,actions:overrides.actions??this.actions,notActions:overrides.notActions??this.notActions,principals:overrides.principals??this.principals,notPrincipals:overrides.notPrincipals??this.notPrincipals,resources:overrides.resources??this.resources,notResources:overrides.notResources??this.notResources,conditions:overrides.conditions??this.conditions})}toStatementJson(){return postprocess_policy_document_1.normalizeStatement({Action:this._action.direct(),NotAction:this._notAction.direct(),Condition:this._condition,Effect:this.effect,Principal:this._principal,NotPrincipal:this._notPrincipal,Resource:this._resource.direct(),NotResource:this._notResource.direct(),Sid:this.sid})}toString(){return cdk.Token.asString(this,{displayHint:"PolicyStatement"})}toJSON(){return this.toStatementJson()}addPrincipalConditions(conditions){const theseConditions=JSON.stringify(conditions);if(this.principalConditionsJson===void 0)this.principalConditionsJson=theseConditions;else if(this.principalConditionsJson!==theseConditions)throw new Error(`All principals in a PolicyStatement must have the same Conditions (got '${this.principalConditionsJson}' and '${theseConditions}'). Use multiple statements instead.`);this.addConditions(conditions)}validateForAnyPolicy(){const errors=new Array;return this._action.length===0&&this._notAction.length===0&&errors.push("A PolicyStatement must specify at least one 'action' or 'notAction'."),errors}validateForResourcePolicy(){const errors=this.validateForAnyPolicy();return this._principals.length===0&&this._notPrincipals.length===0&&errors.push("A PolicyStatement used in a resource-based policy must specify at least one IAM principal."),errors}validateForIdentityPolicy(){const errors=this.validateForAnyPolicy();return(this._principals.length>0||this._notPrincipals.length>0)&&errors.push("A PolicyStatement used in an identity-based policy cannot specify any IAM principals."),this._resource.length===0&&this._notResource.length===0&&errors.push("A PolicyStatement used in an identity-based policy must specify at least one resource."),errors}get actions(){return this._action.copy()}get notActions(){return this._notAction.copy()}get principals(){return this._principals.copy()}get notPrincipals(){return this._notPrincipals.copy()}get resources(){return this._resource.copy()}get notResources(){return this._notResource.copy()}get conditions(){return{...this._condition}}freeze(){return this._frozen=!0,this}get frozen(){return this._frozen}_estimateSize(options){let ret=0;const{actionEstimate,arnEstimate}=options;return ret+=`"Effect": "${this.effect}",`.length,count("Action",this.actions,actionEstimate),count("NotAction",this.notActions,actionEstimate),count("Resource",this.resources,arnEstimate),count("NotResource",this.notResources,arnEstimate),ret+=this.principals.length*arnEstimate,ret+=this.notPrincipals.length*arnEstimate,ret+=JSON.stringify(this.conditions).length,ret;function count(key,values,tokenSize){values.length>0&&(ret+=key.length+5+util_1.sum(values.map(v=>(cdk.Token.isUnresolved(v)?tokenSize:v.length)+3)))}}assertNotFrozen(method){if(this._frozen)throw new Error(`${method}: freeze() has been called on this PolicyStatement previously, so it can no longer be modified`)}}exports.PolicyStatement=PolicyStatement,_a=JSII_RTTI_SYMBOL_1,PolicyStatement[_a]={fqn:"aws-cdk-lib.aws_iam.PolicyStatement",version:"2.34.1"};var Effect;(function(Effect2){Effect2.ALLOW="Allow",Effect2.DENY="Deny"})(Effect=exports.Effect||(exports.Effect={}));class JsonPrincipal extends principals_1.PrincipalBase{constructor(json={}){if(super(),typeof json=="string"&&(json={[util_1.LITERAL_STRING_KEY]:[json]}),typeof json!="object")throw new Error(`JSON IAM principal should be an object, got ${JSON.stringify(json)}`);this.policyFragment={principalJson:json,conditions:{}}}dedupeString(){return JSON.stringify(this.policyFragment)}}function deriveEstimateSizeOptions(scope){const arnEstimate=scope.node.tryGetContext(ARN_SIZE_ESTIMATE_CONTEXT_KEY)??DEFAULT_ARN_SIZE_ESTIMATE;if(typeof arnEstimate!="number")throw new Error(`Context value ${ARN_SIZE_ESTIMATE_CONTEXT_KEY} should be a number, got ${JSON.stringify(arnEstimate)}`);return{actionEstimate:20,arnEstimate}}exports.deriveEstimateSizeOptions=deriveEstimateSizeOptions;class OrderedSet{constructor(){this.set=new Set,this.array=new Array}push(...xs){const ret=new Array;for(const x of xs)this.set.has(x)||(this.set.add(x),this.array.push(x),ret.push(x));return ret}get length(){return this.array.length}copy(){return[...this.array]}direct(){return this.array}}
2
+ `));return ret}get sid(){return this._sid}set sid(sid){this.assertNotFrozen("sid"),this._sid=sid}get effect(){return this._effect}set effect(effect){this.assertNotFrozen("effect"),this._effect=effect}addActions(...actions){if(this.assertNotFrozen("addActions"),actions.length>0&&this._notAction.length>0)throw new Error("Cannot add 'Actions' to policy statement if 'NotActions' have been added");this._action.push(...actions)}addNotActions(...notActions){if(this.assertNotFrozen("addNotActions"),notActions.length>0&&this._action.length>0)throw new Error("Cannot add 'NotActions' to policy statement if 'Actions' have been added");this._notAction.push(...notActions)}get hasPrincipal(){return this._principals.length+this._notPrincipals.length>0}addPrincipals(...principals){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addPrincipals),error}if(this.assertNotFrozen("addPrincipals"),principals.length>0&&this._notPrincipals.length>0)throw new Error("Cannot add 'Principals' to policy statement if 'NotPrincipals' have been added");for(const principal of principals)this.validatePolicyPrincipal(principal);const added=this._principals.push(...principals);for(const principal of added){const fragment=principal.policyFragment;util_1.mergePrincipal(this._principal,fragment.principalJson),this.addPrincipalConditions(fragment.conditions)}}addNotPrincipals(...notPrincipals){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(notPrincipals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addNotPrincipals),error}if(this.assertNotFrozen("addNotPrincipals"),notPrincipals.length>0&&this._principals.length>0)throw new Error("Cannot add 'NotPrincipals' to policy statement if 'Principals' have been added");for(const notPrincipal of notPrincipals)this.validatePolicyPrincipal(notPrincipal);const added=this._notPrincipals.push(...notPrincipals);for(const notPrincipal of added){const fragment=notPrincipal.policyFragment;util_1.mergePrincipal(this._notPrincipal,fragment.principalJson),this.addPrincipalConditions(fragment.conditions)}}validatePolicyPrincipal(principal){if(principal instanceof group_1.Group)throw new Error("Cannot use an IAM Group as the 'Principal' or 'NotPrincipal' in an IAM Policy")}addAwsAccountPrincipal(accountId){this.addPrincipals(new principals_1.AccountPrincipal(accountId))}addArnPrincipal(arn){this.addPrincipals(new principals_1.ArnPrincipal(arn))}addServicePrincipal(service,opts){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ServicePrincipalOpts(opts)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addServicePrincipal),error}this.addPrincipals(new principals_1.ServicePrincipal(service,opts))}addFederatedPrincipal(federated,conditions){this.addPrincipals(new principals_1.FederatedPrincipal(federated,conditions))}addAccountRootPrincipal(){this.addPrincipals(new principals_1.AccountRootPrincipal)}addCanonicalUserPrincipal(canonicalUserId){this.addPrincipals(new principals_1.CanonicalUserPrincipal(canonicalUserId))}addAnyPrincipal(){this.addPrincipals(new principals_1.AnyPrincipal)}addResources(...arns){if(this.assertNotFrozen("addResources"),arns.length>0&&this._notResource.length>0)throw new Error("Cannot add 'Resources' to policy statement if 'NotResources' have been added");this._resource.push(...arns)}addNotResources(...arns){if(this.assertNotFrozen("addNotResources"),arns.length>0&&this._resource.length>0)throw new Error("Cannot add 'NotResources' to policy statement if 'Resources' have been added");this._notResource.push(...arns)}addAllResources(){this.addResources("*")}get hasResource(){return this._resource&&this._resource.length>0}addCondition(key,value){this.assertNotFrozen("addCondition"),principals_1.validateConditionObject(value);const existingValue=this._condition[key];this._condition[key]=existingValue?{...existingValue,...value}:value}addConditions(conditions){Object.keys(conditions).map(key=>{this.addCondition(key,conditions[key])})}addAccountCondition(accountId){this.addCondition("StringEquals",{"sts:ExternalId":accountId})}copy(overrides={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatementProps(overrides)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.copy),error}return new PolicyStatement({sid:overrides.sid??this.sid,effect:overrides.effect??this.effect,actions:overrides.actions??this.actions,notActions:overrides.notActions??this.notActions,principals:overrides.principals??this.principals,notPrincipals:overrides.notPrincipals??this.notPrincipals,resources:overrides.resources??this.resources,notResources:overrides.notResources??this.notResources,conditions:overrides.conditions??this.conditions})}toStatementJson(){return postprocess_policy_document_1.normalizeStatement({Action:this._action.direct(),NotAction:this._notAction.direct(),Condition:this._condition,Effect:this.effect,Principal:this._principal,NotPrincipal:this._notPrincipal,Resource:this._resource.direct(),NotResource:this._notResource.direct(),Sid:this.sid})}toString(){return cdk.Token.asString(this,{displayHint:"PolicyStatement"})}toJSON(){return this.toStatementJson()}addPrincipalConditions(conditions){const theseConditions=JSON.stringify(conditions);if(this.principalConditionsJson===void 0)this.principalConditionsJson=theseConditions;else if(this.principalConditionsJson!==theseConditions)throw new Error(`All principals in a PolicyStatement must have the same Conditions (got '${this.principalConditionsJson}' and '${theseConditions}'). Use multiple statements instead.`);this.addConditions(conditions)}validateForAnyPolicy(){const errors=new Array;return this._action.length===0&&this._notAction.length===0&&errors.push("A PolicyStatement must specify at least one 'action' or 'notAction'."),errors}validateForResourcePolicy(){const errors=this.validateForAnyPolicy();return this._principals.length===0&&this._notPrincipals.length===0&&errors.push("A PolicyStatement used in a resource-based policy must specify at least one IAM principal."),errors}validateForIdentityPolicy(){const errors=this.validateForAnyPolicy();return(this._principals.length>0||this._notPrincipals.length>0)&&errors.push("A PolicyStatement used in an identity-based policy cannot specify any IAM principals."),this._resource.length===0&&this._notResource.length===0&&errors.push("A PolicyStatement used in an identity-based policy must specify at least one resource."),errors}get actions(){return this._action.copy()}get notActions(){return this._notAction.copy()}get principals(){return this._principals.copy()}get notPrincipals(){return this._notPrincipals.copy()}get resources(){return this._resource.copy()}get notResources(){return this._notResource.copy()}get conditions(){return{...this._condition}}freeze(){return this._frozen=!0,this}get frozen(){return this._frozen}_estimateSize(options){let ret=0;const{actionEstimate,arnEstimate}=options;return ret+=`"Effect": "${this.effect}",`.length,count("Action",this.actions,actionEstimate),count("NotAction",this.notActions,actionEstimate),count("Resource",this.resources,arnEstimate),count("NotResource",this.notResources,arnEstimate),ret+=this.principals.length*arnEstimate,ret+=this.notPrincipals.length*arnEstimate,ret+=JSON.stringify(this.conditions).length,ret;function count(key,values,tokenSize){values.length>0&&(ret+=key.length+5+util_1.sum(values.map(v=>(cdk.Token.isUnresolved(v)?tokenSize:v.length)+3)))}}assertNotFrozen(method){if(this._frozen)throw new Error(`${method}: freeze() has been called on this PolicyStatement previously, so it can no longer be modified`)}}exports.PolicyStatement=PolicyStatement,_a=JSII_RTTI_SYMBOL_1,PolicyStatement[_a]={fqn:"aws-cdk-lib.aws_iam.PolicyStatement",version:"2.34.2"};var Effect;(function(Effect2){Effect2.ALLOW="Allow",Effect2.DENY="Deny"})(Effect=exports.Effect||(exports.Effect={}));class JsonPrincipal extends principals_1.PrincipalBase{constructor(json={}){if(super(),typeof json=="string"&&(json={[util_1.LITERAL_STRING_KEY]:[json]}),typeof json!="object")throw new Error(`JSON IAM principal should be an object, got ${JSON.stringify(json)}`);this.policyFragment={principalJson:json,conditions:{}}}dedupeString(){return JSON.stringify(this.policyFragment)}}function deriveEstimateSizeOptions(scope){const arnEstimate=scope.node.tryGetContext(ARN_SIZE_ESTIMATE_CONTEXT_KEY)??DEFAULT_ARN_SIZE_ESTIMATE;if(typeof arnEstimate!="number")throw new Error(`Context value ${ARN_SIZE_ESTIMATE_CONTEXT_KEY} should be a number, got ${JSON.stringify(arnEstimate)}`);return{actionEstimate:20,arnEstimate}}exports.deriveEstimateSizeOptions=deriveEstimateSizeOptions;class OrderedSet{constructor(){this.set=new Set,this.array=new Array}push(...xs){const ret=new Array;for(const x of xs)this.set.has(x)||(this.set.add(x),this.array.push(x),ret.push(x));return ret}get length(){return this.array.length}copy(){return[...this.array]}direct(){return this.array}}
3
3
  //# sourceMappingURL=policy-statement.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.Policy=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),iam_generated_1=require("./iam.generated"),policy_document_1=require("./policy-document"),util_1=require("./util");class Policy extends core_1.Resource{constructor(scope,id,props={}){super(scope,id,{physicalName:props.policyName||core_1.Lazy.string({produce:()=>util_1.generatePolicyName(scope,resource.logicalId)})}),this.document=new policy_document_1.PolicyDocument,this.roles=new Array,this.users=new Array,this.groups=new Array,this.referenceTaken=!1;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Policy),error}const self=this;class CfnPolicyConditional extends iam_generated_1.CfnPolicy{shouldSynthesize(){return self.force||self.referenceTaken||!self.document.isEmpty&&self.isAttached}}props.document&&(this.document=props.document);const resource=new CfnPolicyConditional(this,"Resource",{policyDocument:this.document,policyName:this.physicalName,roles:util_1.undefinedIfEmpty(()=>this.roles.map(r=>r.roleName)),users:util_1.undefinedIfEmpty(()=>this.users.map(u=>u.userName)),groups:util_1.undefinedIfEmpty(()=>this.groups.map(g=>g.groupName))});this._policyName=this.physicalName,this.force=props.force??!1,props.users&&props.users.forEach(u=>this.attachToUser(u)),props.groups&&props.groups.forEach(g=>this.attachToGroup(g)),props.roles&&props.roles.forEach(r=>this.attachToRole(r)),props.statements&&props.statements.forEach(p=>this.addStatements(p)),this.node.addValidation({validate:()=>this.validatePolicy()})}static fromPolicyName(scope,id,policyName){class Import extends core_1.Resource{constructor(){super(...arguments),this.policyName=policyName}}return new Import(scope,id)}addStatements(...statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addStatements),error}this.document.addStatements(...statement)}attachToUser(user){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IUser(user)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachToUser),error}this.users.find(u=>u===user)||(this.users.push(user),user.attachInlinePolicy(this))}attachToRole(role){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IRole(role)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachToRole),error}this.roles.find(r=>r===role)||(this.roles.push(role),role.attachInlinePolicy(this))}attachToGroup(group){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IGroup(group)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachToGroup),error}this.groups.find(g=>g===group)||(this.groups.push(group),group.attachInlinePolicy(this))}get policyName(){return this.referenceTaken=!0,this._policyName}validatePolicy(){const result=new Array;return this.document.isEmpty&&(this.force&&result.push("Policy created with force=true is empty. You must add statements to the policy"),!this.force&&this.referenceTaken&&result.push("This Policy has been referenced by a resource, so it must contain at least one statement.")),this.isAttached||(this.force&&result.push("Policy created with force=true must be attached to at least one principal: user, group or role"),!this.force&&this.referenceTaken&&result.push("This Policy has been referenced by a resource, so it must be attached to at least one user, group or role.")),result.push(...this.document.validateForIdentityPolicy()),result}get isAttached(){return this.groups.length+this.users.length+this.roles.length>0}}exports.Policy=Policy,_a=JSII_RTTI_SYMBOL_1,Policy[_a]={fqn:"aws-cdk-lib.aws_iam.Policy",version:"2.34.1"};
1
+ "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.Policy=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),iam_generated_1=require("./iam.generated"),policy_document_1=require("./policy-document"),util_1=require("./util");class Policy extends core_1.Resource{constructor(scope,id,props={}){super(scope,id,{physicalName:props.policyName||core_1.Lazy.string({produce:()=>util_1.generatePolicyName(scope,resource.logicalId)})}),this.document=new policy_document_1.PolicyDocument,this.roles=new Array,this.users=new Array,this.groups=new Array,this.referenceTaken=!1;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Policy),error}const self=this;class CfnPolicyConditional extends iam_generated_1.CfnPolicy{shouldSynthesize(){return self.force||self.referenceTaken||!self.document.isEmpty&&self.isAttached}}props.document&&(this.document=props.document);const resource=new CfnPolicyConditional(this,"Resource",{policyDocument:this.document,policyName:this.physicalName,roles:util_1.undefinedIfEmpty(()=>this.roles.map(r=>r.roleName)),users:util_1.undefinedIfEmpty(()=>this.users.map(u=>u.userName)),groups:util_1.undefinedIfEmpty(()=>this.groups.map(g=>g.groupName))});this._policyName=this.physicalName,this.force=props.force??!1,props.users&&props.users.forEach(u=>this.attachToUser(u)),props.groups&&props.groups.forEach(g=>this.attachToGroup(g)),props.roles&&props.roles.forEach(r=>this.attachToRole(r)),props.statements&&props.statements.forEach(p=>this.addStatements(p)),this.node.addValidation({validate:()=>this.validatePolicy()})}static fromPolicyName(scope,id,policyName){class Import extends core_1.Resource{constructor(){super(...arguments),this.policyName=policyName}}return new Import(scope,id)}addStatements(...statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addStatements),error}this.document.addStatements(...statement)}attachToUser(user){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IUser(user)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachToUser),error}this.users.find(u=>u===user)||(this.users.push(user),user.attachInlinePolicy(this))}attachToRole(role){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IRole(role)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachToRole),error}this.roles.find(r=>r===role)||(this.roles.push(role),role.attachInlinePolicy(this))}attachToGroup(group){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IGroup(group)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachToGroup),error}this.groups.find(g=>g===group)||(this.groups.push(group),group.attachInlinePolicy(this))}get policyName(){return this.referenceTaken=!0,this._policyName}validatePolicy(){const result=new Array;return this.document.isEmpty&&(this.force&&result.push("Policy created with force=true is empty. You must add statements to the policy"),!this.force&&this.referenceTaken&&result.push("This Policy has been referenced by a resource, so it must contain at least one statement.")),this.isAttached||(this.force&&result.push("Policy created with force=true must be attached to at least one principal: user, group or role"),!this.force&&this.referenceTaken&&result.push("This Policy has been referenced by a resource, so it must be attached to at least one user, group or role.")),result.push(...this.document.validateForIdentityPolicy()),result}get isAttached(){return this.groups.length+this.users.length+this.roles.length>0}}exports.Policy=Policy,_a=JSII_RTTI_SYMBOL_1,Policy[_a]={fqn:"aws-cdk-lib.aws_iam.Policy",version:"2.34.2"};
2
2
  //# sourceMappingURL=policy.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k,_l,_m,_o,_p,_q,_r,_s,_t,_u,_v;Object.defineProperty(exports,"__esModule",{value:!0}),exports.validateConditionObject=exports.CompositePrincipal=exports.StarPrincipal=exports.Anyone=exports.AnyPrincipal=exports.AccountRootPrincipal=exports.SamlConsolePrincipal=exports.SamlPrincipal=exports.OpenIdConnectPrincipal=exports.WebIdentityPrincipal=exports.FederatedPrincipal=exports.CanonicalUserPrincipal=exports.OrganizationPrincipal=exports.ServicePrincipal=exports.AccountPrincipal=exports.ArnPrincipal=exports.PrincipalPolicyFragment=exports.SessionTagsPrincipal=exports.PrincipalWithConditions=exports.PrincipalBase=exports.ComparablePrincipal=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),region_info_1=require("../../region-info"),policy_statement_1=require("./policy-statement"),assume_role_policy_1=require("./private/assume-role-policy"),util_1=require("./util");class ComparablePrincipal{static isComparablePrincipal(x){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(x)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.isComparablePrincipal),error}return"dedupeString"in x}static dedupeStringFor(x){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(x)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.dedupeStringFor),error}return ComparablePrincipal.isComparablePrincipal(x)?x.dedupeString():void 0}}exports.ComparablePrincipal=ComparablePrincipal,_a=JSII_RTTI_SYMBOL_1,ComparablePrincipal[_a]={fqn:"aws-cdk-lib.aws_iam.ComparablePrincipal",version:"2.34.1"};class PrincipalBase{constructor(){this.grantPrincipal=this,this.principalAccount=void 0,this.assumeRoleAction="sts:AssumeRole"}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}addToPrincipalPolicy(_statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(_statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}return{statementAdded:!1}}addToAssumeRolePolicy(document){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyDocument(document)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToAssumeRolePolicy),error}document.addStatements(new policy_statement_1.PolicyStatement({actions:[this.assumeRoleAction],principals:[this]}))}toString(){return JSON.stringify(this.policyFragment.principalJson)}toJSON(){return this.policyFragment.principalJson}withConditions(conditions){return new PrincipalWithConditions(this,conditions)}withSessionTags(){return new SessionTagsPrincipal(this)}}exports.PrincipalBase=PrincipalBase,_b=JSII_RTTI_SYMBOL_1,PrincipalBase[_b]={fqn:"aws-cdk-lib.aws_iam.PrincipalBase",version:"2.34.1"};class PrincipalAdapter extends PrincipalBase{constructor(wrapped){super(),this.wrapped=wrapped,this.assumeRoleAction=this.wrapped.assumeRoleAction,this.principalAccount=this.wrapped.principalAccount}get policyFragment(){return this.wrapped.policyFragment}addToPolicy(statement){return this.wrapped.addToPolicy(statement)}addToPrincipalPolicy(statement){return this.wrapped.addToPrincipalPolicy(statement)}appendDedupe(append){const inner=ComparablePrincipal.dedupeStringFor(this.wrapped);return inner!==void 0?`${this.constructor.name}:${inner}:${append}`:void 0}}class PrincipalWithConditions extends PrincipalAdapter{constructor(principal,conditions){super(principal);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principal)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,PrincipalWithConditions),error}this.additionalConditions=conditions}addCondition(key,value){validateConditionObject(value);const existingValue=this.additionalConditions[key];existingValue||(this.additionalConditions[key]=value),validateConditionObject(existingValue),this.additionalConditions[key]={...existingValue,...value}}addConditions(conditions){Object.entries(conditions).forEach(([key,value])=>{this.addCondition(key,value)})}get conditions(){return this.mergeConditions(this.wrapped.policyFragment.conditions,this.additionalConditions)}get policyFragment(){return new PrincipalPolicyFragment(this.wrapped.policyFragment.principalJson,this.conditions)}toString(){return this.wrapped.toString()}toJSON(){return this.policyFragment.principalJson}dedupeString(){return this.appendDedupe(JSON.stringify(this.conditions))}mergeConditions(principalConditions,additionalConditions){const mergedConditions={};return Object.entries(principalConditions).forEach(([operator,condition])=>{mergedConditions[operator]=condition}),Object.entries(additionalConditions).forEach(([operator,condition])=>{const existing=mergedConditions[operator];if(!existing){mergedConditions[operator]=condition;return}if(cdk.Token.isUnresolved(condition)||cdk.Token.isUnresolved(existing))throw new Error(`multiple "${operator}" conditions cannot be merged if one of them contains an unresolved token`);validateConditionObject(existing),validateConditionObject(condition),mergedConditions[operator]={...existing,...condition}}),mergedConditions}}exports.PrincipalWithConditions=PrincipalWithConditions,_c=JSII_RTTI_SYMBOL_1,PrincipalWithConditions[_c]={fqn:"aws-cdk-lib.aws_iam.PrincipalWithConditions",version:"2.34.1"};class SessionTagsPrincipal extends PrincipalAdapter{constructor(principal){super(principal);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principal)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SessionTagsPrincipal),error}}addToAssumeRolePolicy(doc){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyDocument(doc)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToAssumeRolePolicy),error}const adapter=require("./private/policydoc-adapter");assume_role_policy_1.defaultAddPrincipalToAssumeRole(this.wrapped,new adapter.MutatingPolicyDocumentAdapter(doc,statement=>(statement.addActions("sts:TagSession"),statement)))}dedupeString(){return this.appendDedupe("")}}exports.SessionTagsPrincipal=SessionTagsPrincipal,_d=JSII_RTTI_SYMBOL_1,SessionTagsPrincipal[_d]={fqn:"aws-cdk-lib.aws_iam.SessionTagsPrincipal",version:"2.34.1"};class PrincipalPolicyFragment{constructor(principalJson,conditions={}){this.principalJson=principalJson,this.conditions=conditions}}exports.PrincipalPolicyFragment=PrincipalPolicyFragment,_e=JSII_RTTI_SYMBOL_1,PrincipalPolicyFragment[_e]={fqn:"aws-cdk-lib.aws_iam.PrincipalPolicyFragment",version:"2.34.1"};class ArnPrincipal extends PrincipalBase{constructor(arn){super(),this.arn=arn}get policyFragment(){return new PrincipalPolicyFragment({AWS:[this.arn]})}toString(){return`ArnPrincipal(${this.arn})`}inOrganization(organizationId){return this.withConditions({StringEquals:{"aws:PrincipalOrgID":organizationId}})}dedupeString(){return`ArnPrincipal:${this.arn}`}}exports.ArnPrincipal=ArnPrincipal,_f=JSII_RTTI_SYMBOL_1,ArnPrincipal[_f]={fqn:"aws-cdk-lib.aws_iam.ArnPrincipal",version:"2.34.1"};class AccountPrincipal extends ArnPrincipal{constructor(accountId){if(super(new StackDependentToken(stack=>`arn:${stack.partition}:iam::${accountId}:root`).toString()),this.accountId=accountId,!cdk.Token.isUnresolved(accountId)&&typeof accountId!="string")throw new Error("accountId should be of type string");this.principalAccount=accountId}toString(){return`AccountPrincipal(${this.accountId})`}}exports.AccountPrincipal=AccountPrincipal,_g=JSII_RTTI_SYMBOL_1,AccountPrincipal[_g]={fqn:"aws-cdk-lib.aws_iam.AccountPrincipal",version:"2.34.1"};class ServicePrincipal extends PrincipalBase{constructor(service,opts={}){super(),this.service=service,this.opts=opts;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ServicePrincipalOpts(opts)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,ServicePrincipal),error}}static servicePrincipalName(service){return new ServicePrincipalToken(service,{}).toString()}get policyFragment(){return new PrincipalPolicyFragment({Service:[new ServicePrincipalToken(this.service,this.opts).toString()]},this.opts.conditions)}toString(){return`ServicePrincipal(${this.service})`}dedupeString(){return`ServicePrincipal:${this.service}:${JSON.stringify(this.opts)}`}}exports.ServicePrincipal=ServicePrincipal,_h=JSII_RTTI_SYMBOL_1,ServicePrincipal[_h]={fqn:"aws-cdk-lib.aws_iam.ServicePrincipal",version:"2.34.1"};class OrganizationPrincipal extends PrincipalBase{constructor(organizationId){super(),this.organizationId=organizationId}get policyFragment(){return new PrincipalPolicyFragment({AWS:["*"]},{StringEquals:{"aws:PrincipalOrgID":this.organizationId}})}toString(){return`OrganizationPrincipal(${this.organizationId})`}dedupeString(){return`OrganizationPrincipal:${this.organizationId}`}}exports.OrganizationPrincipal=OrganizationPrincipal,_j=JSII_RTTI_SYMBOL_1,OrganizationPrincipal[_j]={fqn:"aws-cdk-lib.aws_iam.OrganizationPrincipal",version:"2.34.1"};class CanonicalUserPrincipal extends PrincipalBase{constructor(canonicalUserId){super(),this.canonicalUserId=canonicalUserId}get policyFragment(){return new PrincipalPolicyFragment({CanonicalUser:[this.canonicalUserId]})}toString(){return`CanonicalUserPrincipal(${this.canonicalUserId})`}dedupeString(){return`CanonicalUserPrincipal:${this.canonicalUserId}`}}exports.CanonicalUserPrincipal=CanonicalUserPrincipal,_k=JSII_RTTI_SYMBOL_1,CanonicalUserPrincipal[_k]={fqn:"aws-cdk-lib.aws_iam.CanonicalUserPrincipal",version:"2.34.1"};class FederatedPrincipal extends PrincipalBase{constructor(federated,conditions={},assumeRoleAction="sts:AssumeRole"){super(),this.federated=federated,this.conditions=conditions,this.assumeRoleAction=assumeRoleAction}get policyFragment(){return new PrincipalPolicyFragment({Federated:[this.federated]},this.conditions)}toString(){return`FederatedPrincipal(${this.federated})`}dedupeString(){return`FederatedPrincipal:${this.federated}:${this.assumeRoleAction}:${JSON.stringify(this.conditions)}`}}exports.FederatedPrincipal=FederatedPrincipal,_l=JSII_RTTI_SYMBOL_1,FederatedPrincipal[_l]={fqn:"aws-cdk-lib.aws_iam.FederatedPrincipal",version:"2.34.1"};class WebIdentityPrincipal extends FederatedPrincipal{constructor(identityProvider,conditions={}){super(identityProvider,conditions??{},"sts:AssumeRoleWithWebIdentity")}get policyFragment(){return new PrincipalPolicyFragment({Federated:[this.federated]},this.conditions)}toString(){return`WebIdentityPrincipal(${this.federated})`}}exports.WebIdentityPrincipal=WebIdentityPrincipal,_m=JSII_RTTI_SYMBOL_1,WebIdentityPrincipal[_m]={fqn:"aws-cdk-lib.aws_iam.WebIdentityPrincipal",version:"2.34.1"};class OpenIdConnectPrincipal extends WebIdentityPrincipal{constructor(openIdConnectProvider,conditions={}){super(openIdConnectProvider.openIdConnectProviderArn,conditions??{});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IOpenIdConnectProvider(openIdConnectProvider)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,OpenIdConnectPrincipal),error}}get policyFragment(){return new PrincipalPolicyFragment({Federated:[this.federated]},this.conditions)}toString(){return`OpenIdConnectPrincipal(${this.federated})`}}exports.OpenIdConnectPrincipal=OpenIdConnectPrincipal,_o=JSII_RTTI_SYMBOL_1,OpenIdConnectPrincipal[_o]={fqn:"aws-cdk-lib.aws_iam.OpenIdConnectPrincipal",version:"2.34.1"};class SamlPrincipal extends FederatedPrincipal{constructor(samlProvider,conditions){super(samlProvider.samlProviderArn,conditions,"sts:AssumeRoleWithSAML");try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ISamlProvider(samlProvider)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SamlPrincipal),error}}toString(){return`SamlPrincipal(${this.federated})`}}exports.SamlPrincipal=SamlPrincipal,_p=JSII_RTTI_SYMBOL_1,SamlPrincipal[_p]={fqn:"aws-cdk-lib.aws_iam.SamlPrincipal",version:"2.34.1"};class SamlConsolePrincipal extends SamlPrincipal{constructor(samlProvider,conditions={}){super(samlProvider,{...conditions,StringEquals:{"SAML:aud":"https://signin.aws.amazon.com/saml"}});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ISamlProvider(samlProvider)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SamlConsolePrincipal),error}}toString(){return`SamlConsolePrincipal(${this.federated})`}}exports.SamlConsolePrincipal=SamlConsolePrincipal,_q=JSII_RTTI_SYMBOL_1,SamlConsolePrincipal[_q]={fqn:"aws-cdk-lib.aws_iam.SamlConsolePrincipal",version:"2.34.1"};class AccountRootPrincipal extends AccountPrincipal{constructor(){super(new StackDependentToken(stack=>stack.account).toString())}toString(){return"AccountRootPrincipal()"}}exports.AccountRootPrincipal=AccountRootPrincipal,_r=JSII_RTTI_SYMBOL_1,AccountRootPrincipal[_r]={fqn:"aws-cdk-lib.aws_iam.AccountRootPrincipal",version:"2.34.1"};class AnyPrincipal extends ArnPrincipal{constructor(){super("*")}toString(){return"AnyPrincipal()"}}exports.AnyPrincipal=AnyPrincipal,_s=JSII_RTTI_SYMBOL_1,AnyPrincipal[_s]={fqn:"aws-cdk-lib.aws_iam.AnyPrincipal",version:"2.34.1"};class Anyone extends AnyPrincipal{}exports.Anyone=Anyone,_t=JSII_RTTI_SYMBOL_1,Anyone[_t]={fqn:"aws-cdk-lib.aws_iam.Anyone",version:"2.34.1"};class StarPrincipal extends PrincipalBase{constructor(){super(...arguments),this.policyFragment={principalJson:{[util_1.LITERAL_STRING_KEY]:["*"]},conditions:{}}}toString(){return"StarPrincipal()"}dedupeString(){return"StarPrincipal"}}exports.StarPrincipal=StarPrincipal,_u=JSII_RTTI_SYMBOL_1,StarPrincipal[_u]={fqn:"aws-cdk-lib.aws_iam.StarPrincipal",version:"2.34.1"};class CompositePrincipal extends PrincipalBase{constructor(...principals){super(),this.principals=new Array;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CompositePrincipal),error}if(principals.length===0)throw new Error("CompositePrincipals must be constructed with at least 1 Principal but none were passed.");this.assumeRoleAction=principals[0].assumeRoleAction,this.addPrincipals(...principals)}addPrincipals(...principals){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addPrincipals),error}return this.principals.push(...principals),this}addToAssumeRolePolicy(doc){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyDocument(doc)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToAssumeRolePolicy),error}for(const p of this.principals)assume_role_policy_1.defaultAddPrincipalToAssumeRole(p,doc)}get policyFragment(){for(const p of this.principals){const fragment=p.policyFragment;if(fragment.conditions&&Object.keys(fragment.conditions).length>0)throw new Error(`Components of a CompositePrincipal must not have conditions. Tried to add the following fragment: ${JSON.stringify(fragment)}`)}const principalJson={};for(const p of this.principals)util_1.mergePrincipal(principalJson,p.policyFragment.principalJson);return new PrincipalPolicyFragment(principalJson)}toString(){return`CompositePrincipal(${this.principals})`}dedupeString(){const inner=this.principals.map(ComparablePrincipal.dedupeStringFor);if(!inner.some(x=>x===void 0))return`CompositePrincipal[${inner.join(",")}]`}}exports.CompositePrincipal=CompositePrincipal,_v=JSII_RTTI_SYMBOL_1,CompositePrincipal[_v]={fqn:"aws-cdk-lib.aws_iam.CompositePrincipal",version:"2.34.1"};class StackDependentToken{constructor(fn){this.fn=fn,this.creationStack=cdk.captureStackTrace()}resolve(context){return this.fn(cdk.Stack.of(context.scope))}toString(){return cdk.Token.asString(this)}toJSON(){return"<unresolved-token>"}}class ServicePrincipalToken{constructor(service,opts){this.service=service,this.opts=opts,this.creationStack=cdk.captureStackTrace()}resolve(ctx){if(this.opts.region)return region_info_1.RegionInfo.get(this.opts.region).servicePrincipal(this.service)??region_info_1.Default.servicePrincipal(this.service,this.opts.region,cdk.Aws.URL_SUFFIX);const stack=cdk.Stack.of(ctx.scope);return stack.regionalFact(region_info_1.FactName.servicePrincipal(this.service),region_info_1.Default.servicePrincipal(this.service,stack.region,cdk.Aws.URL_SUFFIX))}toString(){return cdk.Token.asString(this,{displayHint:this.service})}toJSON(){return`<${this.service}>`}}function validateConditionObject(x){if(!x||typeof x!="object"||Array.isArray(x))throw new Error("A Condition should be represented as a map of operator to value")}exports.validateConditionObject=validateConditionObject;
1
+ "use strict";var _a,_b,_c,_d,_e,_f,_g,_h,_j,_k,_l,_m,_o,_p,_q,_r,_s,_t,_u,_v;Object.defineProperty(exports,"__esModule",{value:!0}),exports.validateConditionObject=exports.CompositePrincipal=exports.StarPrincipal=exports.Anyone=exports.AnyPrincipal=exports.AccountRootPrincipal=exports.SamlConsolePrincipal=exports.SamlPrincipal=exports.OpenIdConnectPrincipal=exports.WebIdentityPrincipal=exports.FederatedPrincipal=exports.CanonicalUserPrincipal=exports.OrganizationPrincipal=exports.ServicePrincipal=exports.AccountPrincipal=exports.ArnPrincipal=exports.PrincipalPolicyFragment=exports.SessionTagsPrincipal=exports.PrincipalWithConditions=exports.PrincipalBase=exports.ComparablePrincipal=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),cdk=require("../../core"),region_info_1=require("../../region-info"),policy_statement_1=require("./policy-statement"),assume_role_policy_1=require("./private/assume-role-policy"),util_1=require("./util");class ComparablePrincipal{static isComparablePrincipal(x){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(x)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.isComparablePrincipal),error}return"dedupeString"in x}static dedupeStringFor(x){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(x)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.dedupeStringFor),error}return ComparablePrincipal.isComparablePrincipal(x)?x.dedupeString():void 0}}exports.ComparablePrincipal=ComparablePrincipal,_a=JSII_RTTI_SYMBOL_1,ComparablePrincipal[_a]={fqn:"aws-cdk-lib.aws_iam.ComparablePrincipal",version:"2.34.2"};class PrincipalBase{constructor(){this.grantPrincipal=this,this.principalAccount=void 0,this.assumeRoleAction="sts:AssumeRole"}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}addToPrincipalPolicy(_statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(_statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}return{statementAdded:!1}}addToAssumeRolePolicy(document){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyDocument(document)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToAssumeRolePolicy),error}document.addStatements(new policy_statement_1.PolicyStatement({actions:[this.assumeRoleAction],principals:[this]}))}toString(){return JSON.stringify(this.policyFragment.principalJson)}toJSON(){return this.policyFragment.principalJson}withConditions(conditions){return new PrincipalWithConditions(this,conditions)}withSessionTags(){return new SessionTagsPrincipal(this)}}exports.PrincipalBase=PrincipalBase,_b=JSII_RTTI_SYMBOL_1,PrincipalBase[_b]={fqn:"aws-cdk-lib.aws_iam.PrincipalBase",version:"2.34.2"};class PrincipalAdapter extends PrincipalBase{constructor(wrapped){super(),this.wrapped=wrapped,this.assumeRoleAction=this.wrapped.assumeRoleAction,this.principalAccount=this.wrapped.principalAccount}get policyFragment(){return this.wrapped.policyFragment}addToPolicy(statement){return this.wrapped.addToPolicy(statement)}addToPrincipalPolicy(statement){return this.wrapped.addToPrincipalPolicy(statement)}appendDedupe(append){const inner=ComparablePrincipal.dedupeStringFor(this.wrapped);return inner!==void 0?`${this.constructor.name}:${inner}:${append}`:void 0}}class PrincipalWithConditions extends PrincipalAdapter{constructor(principal,conditions){super(principal);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principal)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,PrincipalWithConditions),error}this.additionalConditions=conditions}addCondition(key,value){validateConditionObject(value);const existingValue=this.additionalConditions[key];existingValue||(this.additionalConditions[key]=value),validateConditionObject(existingValue),this.additionalConditions[key]={...existingValue,...value}}addConditions(conditions){Object.entries(conditions).forEach(([key,value])=>{this.addCondition(key,value)})}get conditions(){return this.mergeConditions(this.wrapped.policyFragment.conditions,this.additionalConditions)}get policyFragment(){return new PrincipalPolicyFragment(this.wrapped.policyFragment.principalJson,this.conditions)}toString(){return this.wrapped.toString()}toJSON(){return this.policyFragment.principalJson}dedupeString(){return this.appendDedupe(JSON.stringify(this.conditions))}mergeConditions(principalConditions,additionalConditions){const mergedConditions={};return Object.entries(principalConditions).forEach(([operator,condition])=>{mergedConditions[operator]=condition}),Object.entries(additionalConditions).forEach(([operator,condition])=>{const existing=mergedConditions[operator];if(!existing){mergedConditions[operator]=condition;return}if(cdk.Token.isUnresolved(condition)||cdk.Token.isUnresolved(existing))throw new Error(`multiple "${operator}" conditions cannot be merged if one of them contains an unresolved token`);validateConditionObject(existing),validateConditionObject(condition),mergedConditions[operator]={...existing,...condition}}),mergedConditions}}exports.PrincipalWithConditions=PrincipalWithConditions,_c=JSII_RTTI_SYMBOL_1,PrincipalWithConditions[_c]={fqn:"aws-cdk-lib.aws_iam.PrincipalWithConditions",version:"2.34.2"};class SessionTagsPrincipal extends PrincipalAdapter{constructor(principal){super(principal);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principal)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SessionTagsPrincipal),error}}addToAssumeRolePolicy(doc){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyDocument(doc)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToAssumeRolePolicy),error}const adapter=require("./private/policydoc-adapter");assume_role_policy_1.defaultAddPrincipalToAssumeRole(this.wrapped,new adapter.MutatingPolicyDocumentAdapter(doc,statement=>(statement.addActions("sts:TagSession"),statement)))}dedupeString(){return this.appendDedupe("")}}exports.SessionTagsPrincipal=SessionTagsPrincipal,_d=JSII_RTTI_SYMBOL_1,SessionTagsPrincipal[_d]={fqn:"aws-cdk-lib.aws_iam.SessionTagsPrincipal",version:"2.34.2"};class PrincipalPolicyFragment{constructor(principalJson,conditions={}){this.principalJson=principalJson,this.conditions=conditions}}exports.PrincipalPolicyFragment=PrincipalPolicyFragment,_e=JSII_RTTI_SYMBOL_1,PrincipalPolicyFragment[_e]={fqn:"aws-cdk-lib.aws_iam.PrincipalPolicyFragment",version:"2.34.2"};class ArnPrincipal extends PrincipalBase{constructor(arn){super(),this.arn=arn}get policyFragment(){return new PrincipalPolicyFragment({AWS:[this.arn]})}toString(){return`ArnPrincipal(${this.arn})`}inOrganization(organizationId){return this.withConditions({StringEquals:{"aws:PrincipalOrgID":organizationId}})}dedupeString(){return`ArnPrincipal:${this.arn}`}}exports.ArnPrincipal=ArnPrincipal,_f=JSII_RTTI_SYMBOL_1,ArnPrincipal[_f]={fqn:"aws-cdk-lib.aws_iam.ArnPrincipal",version:"2.34.2"};class AccountPrincipal extends ArnPrincipal{constructor(accountId){if(super(new StackDependentToken(stack=>`arn:${stack.partition}:iam::${accountId}:root`).toString()),this.accountId=accountId,!cdk.Token.isUnresolved(accountId)&&typeof accountId!="string")throw new Error("accountId should be of type string");this.principalAccount=accountId}toString(){return`AccountPrincipal(${this.accountId})`}}exports.AccountPrincipal=AccountPrincipal,_g=JSII_RTTI_SYMBOL_1,AccountPrincipal[_g]={fqn:"aws-cdk-lib.aws_iam.AccountPrincipal",version:"2.34.2"};class ServicePrincipal extends PrincipalBase{constructor(service,opts={}){super(),this.service=service,this.opts=opts;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ServicePrincipalOpts(opts)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,ServicePrincipal),error}}static servicePrincipalName(service){return new ServicePrincipalToken(service,{}).toString()}get policyFragment(){return new PrincipalPolicyFragment({Service:[new ServicePrincipalToken(this.service,this.opts).toString()]},this.opts.conditions)}toString(){return`ServicePrincipal(${this.service})`}dedupeString(){return`ServicePrincipal:${this.service}:${JSON.stringify(this.opts)}`}}exports.ServicePrincipal=ServicePrincipal,_h=JSII_RTTI_SYMBOL_1,ServicePrincipal[_h]={fqn:"aws-cdk-lib.aws_iam.ServicePrincipal",version:"2.34.2"};class OrganizationPrincipal extends PrincipalBase{constructor(organizationId){super(),this.organizationId=organizationId}get policyFragment(){return new PrincipalPolicyFragment({AWS:["*"]},{StringEquals:{"aws:PrincipalOrgID":this.organizationId}})}toString(){return`OrganizationPrincipal(${this.organizationId})`}dedupeString(){return`OrganizationPrincipal:${this.organizationId}`}}exports.OrganizationPrincipal=OrganizationPrincipal,_j=JSII_RTTI_SYMBOL_1,OrganizationPrincipal[_j]={fqn:"aws-cdk-lib.aws_iam.OrganizationPrincipal",version:"2.34.2"};class CanonicalUserPrincipal extends PrincipalBase{constructor(canonicalUserId){super(),this.canonicalUserId=canonicalUserId}get policyFragment(){return new PrincipalPolicyFragment({CanonicalUser:[this.canonicalUserId]})}toString(){return`CanonicalUserPrincipal(${this.canonicalUserId})`}dedupeString(){return`CanonicalUserPrincipal:${this.canonicalUserId}`}}exports.CanonicalUserPrincipal=CanonicalUserPrincipal,_k=JSII_RTTI_SYMBOL_1,CanonicalUserPrincipal[_k]={fqn:"aws-cdk-lib.aws_iam.CanonicalUserPrincipal",version:"2.34.2"};class FederatedPrincipal extends PrincipalBase{constructor(federated,conditions={},assumeRoleAction="sts:AssumeRole"){super(),this.federated=federated,this.conditions=conditions,this.assumeRoleAction=assumeRoleAction}get policyFragment(){return new PrincipalPolicyFragment({Federated:[this.federated]},this.conditions)}toString(){return`FederatedPrincipal(${this.federated})`}dedupeString(){return`FederatedPrincipal:${this.federated}:${this.assumeRoleAction}:${JSON.stringify(this.conditions)}`}}exports.FederatedPrincipal=FederatedPrincipal,_l=JSII_RTTI_SYMBOL_1,FederatedPrincipal[_l]={fqn:"aws-cdk-lib.aws_iam.FederatedPrincipal",version:"2.34.2"};class WebIdentityPrincipal extends FederatedPrincipal{constructor(identityProvider,conditions={}){super(identityProvider,conditions??{},"sts:AssumeRoleWithWebIdentity")}get policyFragment(){return new PrincipalPolicyFragment({Federated:[this.federated]},this.conditions)}toString(){return`WebIdentityPrincipal(${this.federated})`}}exports.WebIdentityPrincipal=WebIdentityPrincipal,_m=JSII_RTTI_SYMBOL_1,WebIdentityPrincipal[_m]={fqn:"aws-cdk-lib.aws_iam.WebIdentityPrincipal",version:"2.34.2"};class OpenIdConnectPrincipal extends WebIdentityPrincipal{constructor(openIdConnectProvider,conditions={}){super(openIdConnectProvider.openIdConnectProviderArn,conditions??{});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IOpenIdConnectProvider(openIdConnectProvider)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,OpenIdConnectPrincipal),error}}get policyFragment(){return new PrincipalPolicyFragment({Federated:[this.federated]},this.conditions)}toString(){return`OpenIdConnectPrincipal(${this.federated})`}}exports.OpenIdConnectPrincipal=OpenIdConnectPrincipal,_o=JSII_RTTI_SYMBOL_1,OpenIdConnectPrincipal[_o]={fqn:"aws-cdk-lib.aws_iam.OpenIdConnectPrincipal",version:"2.34.2"};class SamlPrincipal extends FederatedPrincipal{constructor(samlProvider,conditions){super(samlProvider.samlProviderArn,conditions,"sts:AssumeRoleWithSAML");try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ISamlProvider(samlProvider)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SamlPrincipal),error}}toString(){return`SamlPrincipal(${this.federated})`}}exports.SamlPrincipal=SamlPrincipal,_p=JSII_RTTI_SYMBOL_1,SamlPrincipal[_p]={fqn:"aws-cdk-lib.aws_iam.SamlPrincipal",version:"2.34.2"};class SamlConsolePrincipal extends SamlPrincipal{constructor(samlProvider,conditions={}){super(samlProvider,{...conditions,StringEquals:{"SAML:aud":"https://signin.aws.amazon.com/saml"}});try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_ISamlProvider(samlProvider)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SamlConsolePrincipal),error}}toString(){return`SamlConsolePrincipal(${this.federated})`}}exports.SamlConsolePrincipal=SamlConsolePrincipal,_q=JSII_RTTI_SYMBOL_1,SamlConsolePrincipal[_q]={fqn:"aws-cdk-lib.aws_iam.SamlConsolePrincipal",version:"2.34.2"};class AccountRootPrincipal extends AccountPrincipal{constructor(){super(new StackDependentToken(stack=>stack.account).toString())}toString(){return"AccountRootPrincipal()"}}exports.AccountRootPrincipal=AccountRootPrincipal,_r=JSII_RTTI_SYMBOL_1,AccountRootPrincipal[_r]={fqn:"aws-cdk-lib.aws_iam.AccountRootPrincipal",version:"2.34.2"};class AnyPrincipal extends ArnPrincipal{constructor(){super("*")}toString(){return"AnyPrincipal()"}}exports.AnyPrincipal=AnyPrincipal,_s=JSII_RTTI_SYMBOL_1,AnyPrincipal[_s]={fqn:"aws-cdk-lib.aws_iam.AnyPrincipal",version:"2.34.2"};class Anyone extends AnyPrincipal{}exports.Anyone=Anyone,_t=JSII_RTTI_SYMBOL_1,Anyone[_t]={fqn:"aws-cdk-lib.aws_iam.Anyone",version:"2.34.2"};class StarPrincipal extends PrincipalBase{constructor(){super(...arguments),this.policyFragment={principalJson:{[util_1.LITERAL_STRING_KEY]:["*"]},conditions:{}}}toString(){return"StarPrincipal()"}dedupeString(){return"StarPrincipal"}}exports.StarPrincipal=StarPrincipal,_u=JSII_RTTI_SYMBOL_1,StarPrincipal[_u]={fqn:"aws-cdk-lib.aws_iam.StarPrincipal",version:"2.34.2"};class CompositePrincipal extends PrincipalBase{constructor(...principals){super(),this.principals=new Array;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,CompositePrincipal),error}if(principals.length===0)throw new Error("CompositePrincipals must be constructed with at least 1 Principal but none were passed.");this.assumeRoleAction=principals[0].assumeRoleAction,this.addPrincipals(...principals)}addPrincipals(...principals){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(principals)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addPrincipals),error}return this.principals.push(...principals),this}addToAssumeRolePolicy(doc){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyDocument(doc)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToAssumeRolePolicy),error}for(const p of this.principals)assume_role_policy_1.defaultAddPrincipalToAssumeRole(p,doc)}get policyFragment(){for(const p of this.principals){const fragment=p.policyFragment;if(fragment.conditions&&Object.keys(fragment.conditions).length>0)throw new Error(`Components of a CompositePrincipal must not have conditions. Tried to add the following fragment: ${JSON.stringify(fragment)}`)}const principalJson={};for(const p of this.principals)util_1.mergePrincipal(principalJson,p.policyFragment.principalJson);return new PrincipalPolicyFragment(principalJson)}toString(){return`CompositePrincipal(${this.principals})`}dedupeString(){const inner=this.principals.map(ComparablePrincipal.dedupeStringFor);if(!inner.some(x=>x===void 0))return`CompositePrincipal[${inner.join(",")}]`}}exports.CompositePrincipal=CompositePrincipal,_v=JSII_RTTI_SYMBOL_1,CompositePrincipal[_v]={fqn:"aws-cdk-lib.aws_iam.CompositePrincipal",version:"2.34.2"};class StackDependentToken{constructor(fn){this.fn=fn,this.creationStack=cdk.captureStackTrace()}resolve(context){return this.fn(cdk.Stack.of(context.scope))}toString(){return cdk.Token.asString(this)}toJSON(){return"<unresolved-token>"}}class ServicePrincipalToken{constructor(service,opts){this.service=service,this.opts=opts,this.creationStack=cdk.captureStackTrace()}resolve(ctx){if(this.opts.region)return region_info_1.RegionInfo.get(this.opts.region).servicePrincipal(this.service)??region_info_1.Default.servicePrincipal(this.service,this.opts.region,cdk.Aws.URL_SUFFIX);const stack=cdk.Stack.of(ctx.scope);return stack.regionalFact(region_info_1.FactName.servicePrincipal(this.service),region_info_1.Default.servicePrincipal(this.service,stack.region,cdk.Aws.URL_SUFFIX))}toString(){return cdk.Token.asString(this,{displayHint:this.service})}toJSON(){return`<${this.service}>`}}function validateConditionObject(x){if(!x||typeof x!="object"||Array.isArray(x))throw new Error("A Condition should be represented as a map of operator to value")}exports.validateConditionObject=validateConditionObject;
2
2
  //# sourceMappingURL=principals.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.Role=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),constructs_1=require("constructs"),grant_1=require("./grant"),iam_generated_1=require("./iam.generated"),managed_policy_1=require("./managed-policy"),policy_1=require("./policy"),policy_document_1=require("./policy-document"),principals_1=require("./principals"),assume_role_policy_1=require("./private/assume-role-policy"),immutable_role_1=require("./private/immutable-role"),policydoc_adapter_1=require("./private/policydoc-adapter"),util_1=require("./util"),MAX_INLINE_SIZE=1e4,MAX_MANAGEDPOL_SIZE=6e3;class Role extends core_1.Resource{constructor(scope,id,props){super(scope,id,{physicalName:props.roleName}),this.grantPrincipal=this,this.principalAccount=this.env.account,this.assumeRoleAction="sts:AssumeRole",this.managedPolicies=[],this.attachedPolicies=new util_1.AttachedPolicies,this.dependables=new Map,this._didSplit=!1;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_RoleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Role),error}const externalIds=props.externalIds||[];props.externalId&&externalIds.push(props.externalId),this.assumeRolePolicy=createAssumeRolePolicy(props.assumedBy,externalIds),this.managedPolicies.push(...props.managedPolicies||[]),this.inlinePolicies=props.inlinePolicies||{},this.permissionsBoundary=props.permissionsBoundary;const maxSessionDuration=props.maxSessionDuration&&props.maxSessionDuration.toSeconds();validateMaxSessionDuration(maxSessionDuration);const description=props.description&&props.description?.length>0?props.description:void 0;if(description&&description.length>1e3)throw new Error("Role description must be no longer than 1000 characters.");validateRolePath(props.path);const role=new iam_generated_1.CfnRole(this,"Resource",{assumeRolePolicyDocument:this.assumeRolePolicy,managedPolicyArns:util_1.UniqueStringSet.from(()=>this.managedPolicies.map(p=>p.managedPolicyArn)),policies:_flatten(this.inlinePolicies),path:props.path,permissionsBoundary:this.permissionsBoundary?this.permissionsBoundary.managedPolicyArn:void 0,roleName:this.physicalName,maxSessionDuration,description});this.roleId=role.attrRoleId,this.roleArn=this.getResourceArnAttribute(role.attrArn,{region:"",service:"iam",resource:"role",resourceName:`${props.path?props.path.substr(props.path.charAt(0)==="/"?1:0):""}${this.physicalName}`}),this.roleName=this.getResourceNameAttribute(role.ref),this.policyFragment=new principals_1.ArnPrincipal(this.roleArn).policyFragment;function _flatten(policies){if(policies==null||Object.keys(policies).length===0)return;const result=new Array;for(const policyName of Object.keys(policies)){const policyDocument=policies[policyName];result.push({policyName,policyDocument})}return result}core_1.Aspects.of(this).add({visit:c=>{c===this&&this.splitLargePolicy()}}),this.node.addValidation({validate:()=>this.validateRole()})}static fromRoleArn(scope,id,roleArn,options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_FromRoleArnOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromRoleArn),error}const scopeStack=core_1.Stack.of(scope),parsedArn=scopeStack.splitArn(roleArn,core_1.ArnFormat.SLASH_RESOURCE_NAME),resourceName=parsedArn.resourceName,roleAccount=parsedArn.account,roleName=resourceName.split("/").pop();class Import extends core_1.Resource{constructor(_scope,_id){super(_scope,_id,{account:roleAccount}),this.grantPrincipal=this,this.principalAccount=roleAccount,this.assumeRoleAction="sts:AssumeRole",this.policyFragment=new principals_1.ArnPrincipal(roleArn).policyFragment,this.roleArn=roleArn,this.roleName=roleName,this.attachedPolicies=new util_1.AttachedPolicies,this.defaultPolicyName=options.defaultPolicyName}addToPolicy(statement){return this.addToPrincipalPolicy(statement).statementAdded}addToPrincipalPolicy(statement){return this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,this.defaultPolicyName??"Policy"),this.attachInlinePolicy(this.defaultPolicy)),this.defaultPolicy.addStatements(statement),{statementAdded:!0,policyDependable:this.defaultPolicy}}attachInlinePolicy(policy){const thisAndPolicyAccountComparison=core_1.Token.compareStrings(this.env.account,policy.env.account);(thisAndPolicyAccountComparison===core_1.TokenComparison.SAME||thisAndPolicyAccountComparison===core_1.TokenComparison.BOTH_UNRESOLVED||thisAndPolicyAccountComparison===core_1.TokenComparison.ONE_UNRESOLVED)&&(this.attachedPolicies.attach(policy),policy.attachToRole(this))}addManagedPolicy(_policy){}grantPassRole(identity){return this.grant(identity,"iam:PassRole")}grantAssumeRole(identity){return this.grant(identity,"sts:AssumeRole")}grant(grantee,...actions){return grant_1.Grant.addToPrincipal({grantee,actions,resourceArns:[this.roleArn],scope:this})}dedupeString(){return`ImportedRole:${roleArn}`}}if(options.addGrantsToResources!==void 0&&options.mutable!==!1)throw new Error("'addGrantsToResources' can only be passed if 'mutable: false'");const roleArnAndScopeStackAccountComparison=core_1.Token.compareStrings(roleAccount??"",scopeStack.account),equalOrAnyUnresolved=roleArnAndScopeStackAccountComparison===core_1.TokenComparison.SAME||roleArnAndScopeStackAccountComparison===core_1.TokenComparison.BOTH_UNRESOLVED||roleArnAndScopeStackAccountComparison===core_1.TokenComparison.ONE_UNRESOLVED,mutableRoleId=options.mutable!==!1&&equalOrAnyUnresolved?id:`MutableRole${id}`,importedRole=new Import(scope,mutableRoleId);return options.mutable!==!1&&equalOrAnyUnresolved?importedRole:new immutable_role_1.ImmutableRole(scope,id,importedRole,options.addGrantsToResources??!1)}static fromRoleName(scope,id,roleName,options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_FromRoleNameOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromRoleName),error}return Role.fromRoleArn(scope,id,core_1.Stack.of(scope).formatArn({region:"",service:"iam",resource:"role",resourceName:roleName}),options)}addToPrincipalPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,"DefaultPolicy"),this.attachInlinePolicy(this.defaultPolicy)),this.defaultPolicy.addStatements(statement);const policyDependable=new constructs_1.DependencyGroup;return this.dependables.set(statement,policyDependable),{statementAdded:!0,policyDependable}}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}addManagedPolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IManagedPolicy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addManagedPolicy),error}this.managedPolicies.find(mp=>mp===policy)||this.managedPolicies.push(policy)}attachInlinePolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_Policy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachInlinePolicy),error}this.attachedPolicies.attach(policy),policy.attachToRole(this)}grant(grantee,...actions){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(grantee)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.grant),error}return grant_1.Grant.addToPrincipal({grantee,actions,resourceArns:[this.roleArn],scope:this})}grantPassRole(identity){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(identity)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.grantPassRole),error}return this.grant(identity,"iam:PassRole")}grantAssumeRole(identity){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(identity)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.grantAssumeRole),error}return this.grant(identity,"sts:AssumeRole")}withoutPolicyUpdates(options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_WithoutPolicyUpdatesOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.withoutPolicyUpdates),error}return this.immutableRole||(this.immutableRole=new immutable_role_1.ImmutableRole(constructs_1.Node.of(this).scope,`ImmutableRole${this.node.id}`,this,options.addGrantsToResources??!1)),this.immutableRole}validateRole(){const errors=new Array;errors.push(...this.assumeRolePolicy?.validateForResourcePolicy()??[]);for(const policy of Object.values(this.inlinePolicies))errors.push(...policy.validateForIdentityPolicy());return errors}splitLargePolicy(){if(!this.defaultPolicy||this._didSplit)return;this._didSplit=!0;const self=this,originalDoc=this.defaultPolicy.document,splitOffDocs=originalDoc._splitDocument(this,MAX_INLINE_SIZE,MAX_MANAGEDPOL_SIZE),mpCount=this.managedPolicies.length+(splitOffDocs.size-1);mpCount>20?core_1.Annotations.of(this).addWarning(`Policy too large: ${mpCount} exceeds the maximum of 20 managed policies attached to a Role`):mpCount>10&&core_1.Annotations.of(this).addWarning(`Policy large: ${mpCount} exceeds 10 managed policies attached to a Role, this requires a quota increase`),markDeclaringConstruct(originalDoc,this.defaultPolicy);let i=1;for(const newDoc of splitOffDocs.keys()){if(newDoc===originalDoc)continue;const mp=new managed_policy_1.ManagedPolicy(this,`OverflowPolicy${i++}`,{description:`Part of the policies for ${this.node.path}`,document:newDoc,roles:[this]});markDeclaringConstruct(newDoc,mp)}function markDeclaringConstruct(doc,declaringConstruct){for(const original of splitOffDocs.get(doc)??[])self.dependables.get(original)?.add(declaringConstruct)}}}exports.Role=Role,_a=JSII_RTTI_SYMBOL_1,Role[_a]={fqn:"aws-cdk-lib.aws_iam.Role",version:"2.34.1"};function createAssumeRolePolicy(principal,externalIds){const actualDoc=new policy_document_1.PolicyDocument,addDoc=externalIds.length===0?actualDoc:new policydoc_adapter_1.MutatingPolicyDocumentAdapter(actualDoc,statement=>(statement.addCondition("StringEquals",{"sts:ExternalId":externalIds.length===1?externalIds[0]:externalIds}),statement));return assume_role_policy_1.defaultAddPrincipalToAssumeRole(principal,addDoc),actualDoc}function validateRolePath(path){if(path===void 0||core_1.Token.isUnresolved(path))return;const validRolePath=/^(\/|\/[\u0021-\u007F]+\/)$/;if(path.length==0||path.length>512)throw new Error(`Role path must be between 1 and 512 characters. The provided role path is ${path.length} characters.`);if(!validRolePath.test(path))throw new Error(`Role path must be either a slash or valid characters (alphanumerics and symbols) surrounded by slashes. Valid characters are unicode characters in [\\u0021-\\u007F]. However, ${path} is provided.`)}function validateMaxSessionDuration(duration){if(duration!==void 0&&(duration<3600||duration>43200))throw new Error(`maxSessionDuration is set to ${duration}, but must be >= 3600sec (1hr) and <= 43200sec (12hrs)`)}
1
+ "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.Role=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),constructs_1=require("constructs"),grant_1=require("./grant"),iam_generated_1=require("./iam.generated"),managed_policy_1=require("./managed-policy"),policy_1=require("./policy"),policy_document_1=require("./policy-document"),principals_1=require("./principals"),assume_role_policy_1=require("./private/assume-role-policy"),immutable_role_1=require("./private/immutable-role"),policydoc_adapter_1=require("./private/policydoc-adapter"),util_1=require("./util"),MAX_INLINE_SIZE=1e4,MAX_MANAGEDPOL_SIZE=6e3;class Role extends core_1.Resource{constructor(scope,id,props){super(scope,id,{physicalName:props.roleName}),this.grantPrincipal=this,this.principalAccount=this.env.account,this.assumeRoleAction="sts:AssumeRole",this.managedPolicies=[],this.attachedPolicies=new util_1.AttachedPolicies,this.dependables=new Map,this._didSplit=!1;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_RoleProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,Role),error}const externalIds=props.externalIds||[];props.externalId&&externalIds.push(props.externalId),this.assumeRolePolicy=createAssumeRolePolicy(props.assumedBy,externalIds),this.managedPolicies.push(...props.managedPolicies||[]),this.inlinePolicies=props.inlinePolicies||{},this.permissionsBoundary=props.permissionsBoundary;const maxSessionDuration=props.maxSessionDuration&&props.maxSessionDuration.toSeconds();validateMaxSessionDuration(maxSessionDuration);const description=props.description&&props.description?.length>0?props.description:void 0;if(description&&description.length>1e3)throw new Error("Role description must be no longer than 1000 characters.");validateRolePath(props.path);const role=new iam_generated_1.CfnRole(this,"Resource",{assumeRolePolicyDocument:this.assumeRolePolicy,managedPolicyArns:util_1.UniqueStringSet.from(()=>this.managedPolicies.map(p=>p.managedPolicyArn)),policies:_flatten(this.inlinePolicies),path:props.path,permissionsBoundary:this.permissionsBoundary?this.permissionsBoundary.managedPolicyArn:void 0,roleName:this.physicalName,maxSessionDuration,description});this.roleId=role.attrRoleId,this.roleArn=this.getResourceArnAttribute(role.attrArn,{region:"",service:"iam",resource:"role",resourceName:`${props.path?props.path.substr(props.path.charAt(0)==="/"?1:0):""}${this.physicalName}`}),this.roleName=this.getResourceNameAttribute(role.ref),this.policyFragment=new principals_1.ArnPrincipal(this.roleArn).policyFragment;function _flatten(policies){if(policies==null||Object.keys(policies).length===0)return;const result=new Array;for(const policyName of Object.keys(policies)){const policyDocument=policies[policyName];result.push({policyName,policyDocument})}return result}core_1.Aspects.of(this).add({visit:c=>{c===this&&this.splitLargePolicy()}}),this.node.addValidation({validate:()=>this.validateRole()})}static fromRoleArn(scope,id,roleArn,options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_FromRoleArnOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromRoleArn),error}const scopeStack=core_1.Stack.of(scope),parsedArn=scopeStack.splitArn(roleArn,core_1.ArnFormat.SLASH_RESOURCE_NAME),resourceName=parsedArn.resourceName,roleAccount=parsedArn.account,roleName=resourceName.split("/").pop();class Import extends core_1.Resource{constructor(_scope,_id){super(_scope,_id,{account:roleAccount}),this.grantPrincipal=this,this.principalAccount=roleAccount,this.assumeRoleAction="sts:AssumeRole",this.policyFragment=new principals_1.ArnPrincipal(roleArn).policyFragment,this.roleArn=roleArn,this.roleName=roleName,this.attachedPolicies=new util_1.AttachedPolicies,this.defaultPolicyName=options.defaultPolicyName}addToPolicy(statement){return this.addToPrincipalPolicy(statement).statementAdded}addToPrincipalPolicy(statement){return this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,this.defaultPolicyName??"Policy"),this.attachInlinePolicy(this.defaultPolicy)),this.defaultPolicy.addStatements(statement),{statementAdded:!0,policyDependable:this.defaultPolicy}}attachInlinePolicy(policy){const thisAndPolicyAccountComparison=core_1.Token.compareStrings(this.env.account,policy.env.account);(thisAndPolicyAccountComparison===core_1.TokenComparison.SAME||thisAndPolicyAccountComparison===core_1.TokenComparison.BOTH_UNRESOLVED||thisAndPolicyAccountComparison===core_1.TokenComparison.ONE_UNRESOLVED)&&(this.attachedPolicies.attach(policy),policy.attachToRole(this))}addManagedPolicy(_policy){}grantPassRole(identity){return this.grant(identity,"iam:PassRole")}grantAssumeRole(identity){return this.grant(identity,"sts:AssumeRole")}grant(grantee,...actions){return grant_1.Grant.addToPrincipal({grantee,actions,resourceArns:[this.roleArn],scope:this})}dedupeString(){return`ImportedRole:${roleArn}`}}if(options.addGrantsToResources!==void 0&&options.mutable!==!1)throw new Error("'addGrantsToResources' can only be passed if 'mutable: false'");const roleArnAndScopeStackAccountComparison=core_1.Token.compareStrings(roleAccount??"",scopeStack.account),equalOrAnyUnresolved=roleArnAndScopeStackAccountComparison===core_1.TokenComparison.SAME||roleArnAndScopeStackAccountComparison===core_1.TokenComparison.BOTH_UNRESOLVED||roleArnAndScopeStackAccountComparison===core_1.TokenComparison.ONE_UNRESOLVED,mutableRoleId=options.mutable!==!1&&equalOrAnyUnresolved?id:`MutableRole${id}`,importedRole=new Import(scope,mutableRoleId);return options.mutable!==!1&&equalOrAnyUnresolved?importedRole:new immutable_role_1.ImmutableRole(scope,id,importedRole,options.addGrantsToResources??!1)}static fromRoleName(scope,id,roleName,options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_FromRoleNameOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromRoleName),error}return Role.fromRoleArn(scope,id,core_1.Stack.of(scope).formatArn({region:"",service:"iam",resource:"role",resourceName:roleName}),options)}addToPrincipalPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,"DefaultPolicy"),this.attachInlinePolicy(this.defaultPolicy)),this.defaultPolicy.addStatements(statement);const policyDependable=new constructs_1.DependencyGroup;return this.dependables.set(statement,policyDependable),{statementAdded:!0,policyDependable}}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}addManagedPolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IManagedPolicy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addManagedPolicy),error}this.managedPolicies.find(mp=>mp===policy)||this.managedPolicies.push(policy)}attachInlinePolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_Policy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachInlinePolicy),error}this.attachedPolicies.attach(policy),policy.attachToRole(this)}grant(grantee,...actions){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(grantee)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.grant),error}return grant_1.Grant.addToPrincipal({grantee,actions,resourceArns:[this.roleArn],scope:this})}grantPassRole(identity){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(identity)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.grantPassRole),error}return this.grant(identity,"iam:PassRole")}grantAssumeRole(identity){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IPrincipal(identity)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.grantAssumeRole),error}return this.grant(identity,"sts:AssumeRole")}withoutPolicyUpdates(options={}){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_WithoutPolicyUpdatesOptions(options)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.withoutPolicyUpdates),error}return this.immutableRole||(this.immutableRole=new immutable_role_1.ImmutableRole(constructs_1.Node.of(this).scope,`ImmutableRole${this.node.id}`,this,options.addGrantsToResources??!1)),this.immutableRole}validateRole(){const errors=new Array;errors.push(...this.assumeRolePolicy?.validateForResourcePolicy()??[]);for(const policy of Object.values(this.inlinePolicies))errors.push(...policy.validateForIdentityPolicy());return errors}splitLargePolicy(){if(!this.defaultPolicy||this._didSplit)return;this._didSplit=!0;const self=this,originalDoc=this.defaultPolicy.document,splitOffDocs=originalDoc._splitDocument(this,MAX_INLINE_SIZE,MAX_MANAGEDPOL_SIZE),mpCount=this.managedPolicies.length+(splitOffDocs.size-1);mpCount>20?core_1.Annotations.of(this).addWarning(`Policy too large: ${mpCount} exceeds the maximum of 20 managed policies attached to a Role`):mpCount>10&&core_1.Annotations.of(this).addWarning(`Policy large: ${mpCount} exceeds 10 managed policies attached to a Role, this requires a quota increase`),markDeclaringConstruct(originalDoc,this.defaultPolicy);let i=1;for(const newDoc of splitOffDocs.keys()){if(newDoc===originalDoc)continue;const mp=new managed_policy_1.ManagedPolicy(this,`OverflowPolicy${i++}`,{description:`Part of the policies for ${this.node.path}`,document:newDoc,roles:[this]});markDeclaringConstruct(newDoc,mp)}function markDeclaringConstruct(doc,declaringConstruct){for(const original of splitOffDocs.get(doc)??[])self.dependables.get(original)?.add(declaringConstruct)}}}exports.Role=Role,_a=JSII_RTTI_SYMBOL_1,Role[_a]={fqn:"aws-cdk-lib.aws_iam.Role",version:"2.34.2"};function createAssumeRolePolicy(principal,externalIds){const actualDoc=new policy_document_1.PolicyDocument,addDoc=externalIds.length===0?actualDoc:new policydoc_adapter_1.MutatingPolicyDocumentAdapter(actualDoc,statement=>(statement.addCondition("StringEquals",{"sts:ExternalId":externalIds.length===1?externalIds[0]:externalIds}),statement));return assume_role_policy_1.defaultAddPrincipalToAssumeRole(principal,addDoc),actualDoc}function validateRolePath(path){if(path===void 0||core_1.Token.isUnresolved(path))return;const validRolePath=/^(\/|\/[\u0021-\u007F]+\/)$/;if(path.length==0||path.length>512)throw new Error(`Role path must be between 1 and 512 characters. The provided role path is ${path.length} characters.`);if(!validRolePath.test(path))throw new Error(`Role path must be either a slash or valid characters (alphanumerics and symbols) surrounded by slashes. Valid characters are unicode characters in [\\u0021-\\u007F]. However, ${path} is provided.`)}function validateMaxSessionDuration(duration){if(duration!==void 0&&(duration<3600||duration>43200))throw new Error(`maxSessionDuration is set to ${duration}, but must be >= 3600sec (1hr) and <= 43200sec (12hrs)`)}
2
2
  //# sourceMappingURL=role.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.SamlProvider=exports.SamlMetadataDocument=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),fs=require("fs"),core_1=require("../../core"),iam_generated_1=require("./iam.generated");class SamlMetadataDocument{static fromXml(xml){return{xml}}static fromFile(path){return{xml:fs.readFileSync(path,"utf-8")}}}exports.SamlMetadataDocument=SamlMetadataDocument,_a=JSII_RTTI_SYMBOL_1,SamlMetadataDocument[_a]={fqn:"aws-cdk-lib.aws_iam.SamlMetadataDocument",version:"2.34.1"};class SamlProvider extends core_1.Resource{constructor(scope,id,props){super(scope,id);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_SamlProviderProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SamlProvider),error}if(props.name&&!core_1.Token.isUnresolved(props.name)&&!/^[\w+=,.@-]{1,128}$/.test(props.name))throw new Error("Invalid SAML provider name. The name must be a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-. Length must be between 1 and 128 characters.");const samlProvider=new iam_generated_1.CfnSAMLProvider(this,"Resource",{name:props.name,samlMetadataDocument:props.metadataDocument.xml});this.samlProviderArn=samlProvider.ref}static fromSamlProviderArn(scope,id,samlProviderArn){class Import extends core_1.Resource{constructor(){super(...arguments),this.samlProviderArn=samlProviderArn}}return new Import(scope,id)}}exports.SamlProvider=SamlProvider,_b=JSII_RTTI_SYMBOL_1,SamlProvider[_b]={fqn:"aws-cdk-lib.aws_iam.SamlProvider",version:"2.34.1"};
1
+ "use strict";var _a,_b;Object.defineProperty(exports,"__esModule",{value:!0}),exports.SamlProvider=exports.SamlMetadataDocument=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),fs=require("fs"),core_1=require("../../core"),iam_generated_1=require("./iam.generated");class SamlMetadataDocument{static fromXml(xml){return{xml}}static fromFile(path){return{xml:fs.readFileSync(path,"utf-8")}}}exports.SamlMetadataDocument=SamlMetadataDocument,_a=JSII_RTTI_SYMBOL_1,SamlMetadataDocument[_a]={fqn:"aws-cdk-lib.aws_iam.SamlMetadataDocument",version:"2.34.2"};class SamlProvider extends core_1.Resource{constructor(scope,id,props){super(scope,id);try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_SamlProviderProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,SamlProvider),error}if(props.name&&!core_1.Token.isUnresolved(props.name)&&!/^[\w+=,.@-]{1,128}$/.test(props.name))throw new Error("Invalid SAML provider name. The name must be a string of characters consisting of upper and lowercase alphanumeric characters with no spaces. You can also include any of the following characters: _+=,.@-. Length must be between 1 and 128 characters.");const samlProvider=new iam_generated_1.CfnSAMLProvider(this,"Resource",{name:props.name,samlMetadataDocument:props.metadataDocument.xml});this.samlProviderArn=samlProvider.ref}static fromSamlProviderArn(scope,id,samlProviderArn){class Import extends core_1.Resource{constructor(){super(...arguments),this.samlProviderArn=samlProviderArn}}return new Import(scope,id)}}exports.SamlProvider=SamlProvider,_b=JSII_RTTI_SYMBOL_1,SamlProvider[_b]={fqn:"aws-cdk-lib.aws_iam.SamlProvider",version:"2.34.2"};
2
2
  //# sourceMappingURL=saml-provider.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.UnknownPrincipal=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),constructs_1=require("constructs");class UnknownPrincipal{constructor(props){this.assumeRoleAction="sts:AssumeRole";try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_UnknownPrincipalProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,UnknownPrincipal),error}this.resource=props.resource,this.grantPrincipal=this}get policyFragment(){throw new Error(`Cannot get policy fragment of ${constructs_1.Node.of(this.resource).path}, resource imported without a role`)}addToPrincipalPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}const stack=core_1.Stack.of(this.resource),repr=JSON.stringify(stack.resolve(statement));return core_1.Annotations.of(this.resource).addWarning(`Add statement to this resource's role: ${repr}`),{statementAdded:!0,policyDependable:new constructs_1.DependencyGroup}}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}}exports.UnknownPrincipal=UnknownPrincipal,_a=JSII_RTTI_SYMBOL_1,UnknownPrincipal[_a]={fqn:"aws-cdk-lib.aws_iam.UnknownPrincipal",version:"2.34.1"};
1
+ "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.UnknownPrincipal=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),constructs_1=require("constructs");class UnknownPrincipal{constructor(props){this.assumeRoleAction="sts:AssumeRole";try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_UnknownPrincipalProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,UnknownPrincipal),error}this.resource=props.resource,this.grantPrincipal=this}get policyFragment(){throw new Error(`Cannot get policy fragment of ${constructs_1.Node.of(this.resource).path}, resource imported without a role`)}addToPrincipalPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}const stack=core_1.Stack.of(this.resource),repr=JSON.stringify(stack.resolve(statement));return core_1.Annotations.of(this.resource).addWarning(`Add statement to this resource's role: ${repr}`),{statementAdded:!0,policyDependable:new constructs_1.DependencyGroup}}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}}exports.UnknownPrincipal=UnknownPrincipal,_a=JSII_RTTI_SYMBOL_1,UnknownPrincipal[_a]={fqn:"aws-cdk-lib.aws_iam.UnknownPrincipal",version:"2.34.2"};
2
2
  //# sourceMappingURL=unknown-principal.js.map
@@ -1,2 +1,2 @@
1
- "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.User=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),iam_generated_1=require("./iam.generated"),policy_1=require("./policy"),principals_1=require("./principals"),util_1=require("./util");class User extends core_1.Resource{constructor(scope,id,props={}){super(scope,id,{physicalName:props.userName}),this.grantPrincipal=this,this.principalAccount=this.env.account,this.assumeRoleAction="sts:AssumeRole",this.groups=new Array,this.managedPolicies=new Array,this.attachedPolicies=new util_1.AttachedPolicies;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_UserProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,User),error}this.managedPolicies.push(...props.managedPolicies||[]),this.permissionsBoundary=props.permissionsBoundary;const user=new iam_generated_1.CfnUser(this,"Resource",{userName:this.physicalName,groups:util_1.undefinedIfEmpty(()=>this.groups),managedPolicyArns:core_1.Lazy.list({produce:()=>this.managedPolicies.map(p=>p.managedPolicyArn)},{omitEmpty:!0}),path:props.path,permissionsBoundary:this.permissionsBoundary?this.permissionsBoundary.managedPolicyArn:void 0,loginProfile:this.parseLoginProfile(props)});this.userName=this.getResourceNameAttribute(user.ref),this.userArn=this.getResourceArnAttribute(user.attrArn,{region:"",service:"iam",resource:"user",resourceName:`${props.path?props.path.substr(props.path.charAt(0)==="/"?1:0):""}${this.physicalName}`}),this.policyFragment=new principals_1.ArnPrincipal(this.userArn).policyFragment,props.groups&&props.groups.forEach(g=>this.addToGroup(g))}static fromUserName(scope,id,userName){const userArn=core_1.Stack.of(scope).formatArn({service:"iam",region:"",resource:"user",resourceName:userName});return User.fromUserAttributes(scope,id,{userArn})}static fromUserArn(scope,id,userArn){return User.fromUserAttributes(scope,id,{userArn})}static fromUserAttributes(scope,id,attrs){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_UserAttributes(attrs)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromUserAttributes),error}class Import extends core_1.Resource{constructor(){super(...arguments),this.grantPrincipal=this,this.principalAccount=core_1.Aws.ACCOUNT_ID,this.userName=core_1.Arn.extractResourceName(attrs.userArn,"user").split("/").pop(),this.userArn=attrs.userArn,this.assumeRoleAction="sts:AssumeRole",this.policyFragment=new principals_1.ArnPrincipal(attrs.userArn).policyFragment,this.attachedPolicies=new util_1.AttachedPolicies,this.groupId=0}addToPolicy(statement){return this.addToPrincipalPolicy(statement).statementAdded}addToPrincipalPolicy(statement){return this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,"Policy"),this.defaultPolicy.attachToUser(this)),this.defaultPolicy.addStatements(statement),{statementAdded:!0,policyDependable:this.defaultPolicy}}addToGroup(group){new iam_generated_1.CfnUserToGroupAddition(core_1.Stack.of(group),`${this.userName}Group${this.groupId}`,{groupName:group.groupName,users:[this.userName]}),this.groupId+=1}attachInlinePolicy(policy){this.attachedPolicies.attach(policy),policy.attachToUser(this)}addManagedPolicy(_policy){throw new Error("Cannot add managed policy to imported User")}}return new Import(scope,id)}addToGroup(group){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IGroup(group)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToGroup),error}this.groups.push(group.groupName)}addManagedPolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IManagedPolicy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addManagedPolicy),error}this.managedPolicies.find(mp=>mp===policy)||this.managedPolicies.push(policy)}attachInlinePolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_Policy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachInlinePolicy),error}this.attachedPolicies.attach(policy),policy.attachToUser(this)}addToPrincipalPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}return this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,"DefaultPolicy"),this.defaultPolicy.attachToUser(this)),this.defaultPolicy.addStatements(statement),{statementAdded:!0,policyDependable:this.defaultPolicy}}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}parseLoginProfile(props){if(props.password)return{password:props.password.unsafeUnwrap(),passwordResetRequired:props.passwordResetRequired};if(props.passwordResetRequired)throw new Error('Cannot set "passwordResetRequired" without specifying "initialPassword"')}}exports.User=User,_a=JSII_RTTI_SYMBOL_1,User[_a]={fqn:"aws-cdk-lib.aws_iam.User",version:"2.34.1"};
1
+ "use strict";var _a;Object.defineProperty(exports,"__esModule",{value:!0}),exports.User=void 0;const jsiiDeprecationWarnings=require("../../.warnings.jsii.js"),JSII_RTTI_SYMBOL_1=Symbol.for("jsii.rtti"),core_1=require("../../core"),iam_generated_1=require("./iam.generated"),policy_1=require("./policy"),principals_1=require("./principals"),util_1=require("./util");class User extends core_1.Resource{constructor(scope,id,props={}){super(scope,id,{physicalName:props.userName}),this.grantPrincipal=this,this.principalAccount=this.env.account,this.assumeRoleAction="sts:AssumeRole",this.groups=new Array,this.managedPolicies=new Array,this.attachedPolicies=new util_1.AttachedPolicies;try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_UserProps(props)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,User),error}this.managedPolicies.push(...props.managedPolicies||[]),this.permissionsBoundary=props.permissionsBoundary;const user=new iam_generated_1.CfnUser(this,"Resource",{userName:this.physicalName,groups:util_1.undefinedIfEmpty(()=>this.groups),managedPolicyArns:core_1.Lazy.list({produce:()=>this.managedPolicies.map(p=>p.managedPolicyArn)},{omitEmpty:!0}),path:props.path,permissionsBoundary:this.permissionsBoundary?this.permissionsBoundary.managedPolicyArn:void 0,loginProfile:this.parseLoginProfile(props)});this.userName=this.getResourceNameAttribute(user.ref),this.userArn=this.getResourceArnAttribute(user.attrArn,{region:"",service:"iam",resource:"user",resourceName:`${props.path?props.path.substr(props.path.charAt(0)==="/"?1:0):""}${this.physicalName}`}),this.policyFragment=new principals_1.ArnPrincipal(this.userArn).policyFragment,props.groups&&props.groups.forEach(g=>this.addToGroup(g))}static fromUserName(scope,id,userName){const userArn=core_1.Stack.of(scope).formatArn({service:"iam",region:"",resource:"user",resourceName:userName});return User.fromUserAttributes(scope,id,{userArn})}static fromUserArn(scope,id,userArn){return User.fromUserAttributes(scope,id,{userArn})}static fromUserAttributes(scope,id,attrs){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_UserAttributes(attrs)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.fromUserAttributes),error}class Import extends core_1.Resource{constructor(){super(...arguments),this.grantPrincipal=this,this.principalAccount=core_1.Aws.ACCOUNT_ID,this.userName=core_1.Arn.extractResourceName(attrs.userArn,"user").split("/").pop(),this.userArn=attrs.userArn,this.assumeRoleAction="sts:AssumeRole",this.policyFragment=new principals_1.ArnPrincipal(attrs.userArn).policyFragment,this.attachedPolicies=new util_1.AttachedPolicies,this.groupId=0}addToPolicy(statement){return this.addToPrincipalPolicy(statement).statementAdded}addToPrincipalPolicy(statement){return this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,"Policy"),this.defaultPolicy.attachToUser(this)),this.defaultPolicy.addStatements(statement),{statementAdded:!0,policyDependable:this.defaultPolicy}}addToGroup(group){new iam_generated_1.CfnUserToGroupAddition(core_1.Stack.of(group),`${this.userName}Group${this.groupId}`,{groupName:group.groupName,users:[this.userName]}),this.groupId+=1}attachInlinePolicy(policy){this.attachedPolicies.attach(policy),policy.attachToUser(this)}addManagedPolicy(_policy){throw new Error("Cannot add managed policy to imported User")}}return new Import(scope,id)}addToGroup(group){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IGroup(group)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToGroup),error}this.groups.push(group.groupName)}addManagedPolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_IManagedPolicy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addManagedPolicy),error}this.managedPolicies.find(mp=>mp===policy)||this.managedPolicies.push(policy)}attachInlinePolicy(policy){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_Policy(policy)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.attachInlinePolicy),error}this.attachedPolicies.attach(policy),policy.attachToUser(this)}addToPrincipalPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPrincipalPolicy),error}return this.defaultPolicy||(this.defaultPolicy=new policy_1.Policy(this,"DefaultPolicy"),this.defaultPolicy.attachToUser(this)),this.defaultPolicy.addStatements(statement),{statementAdded:!0,policyDependable:this.defaultPolicy}}addToPolicy(statement){try{jsiiDeprecationWarnings.aws_cdk_lib_aws_iam_PolicyStatement(statement)}catch(error){throw process.env.JSII_DEBUG!=="1"&&error.name==="DeprecationError"&&Error.captureStackTrace(error,this.addToPolicy),error}return this.addToPrincipalPolicy(statement).statementAdded}parseLoginProfile(props){if(props.password)return{password:props.password.unsafeUnwrap(),passwordResetRequired:props.passwordResetRequired};if(props.passwordResetRequired)throw new Error('Cannot set "passwordResetRequired" without specifying "initialPassword"')}}exports.User=User,_a=JSII_RTTI_SYMBOL_1,User[_a]={fqn:"aws-cdk-lib.aws_iam.User",version:"2.34.2"};
2
2
  //# sourceMappingURL=user.js.map