@kensio/yulin 1.20.13 → 1.20.15
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.
- package/{dist/config/oxlint/cffjs2.oxlintrc.json → cffjs2.oxlintrc.json} +1 -1
- package/dist/config/oxlint/cffjs2.oxlint.config.js +4 -3
- package/dist/service/acm/cfn/certificate/sim-cfn-acm-cert-creator.js +6 -4
- package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.d.ts +2 -2
- package/dist/service/acm/cfn/sim-cfn-acm-resource-factory.js +3 -4
- package/dist/service/acm/cfn/validation/sim-cfn-acm-cert-validation.d.ts +2 -1
- package/dist/service/acm/cfn/validation/sim-cfn-acm-cert-validation.js +2 -2
- package/dist/service/acm/cfn/validation/sim-cfn-acm-validation-records.d.ts +2 -1
- package/dist/service/acm/cfn/validation/sim-cfn-acm-validation-records.js +4 -4
- package/dist/service/acm/sim-acm.d.ts +1 -1
- package/dist/service/acm/sim-acm.js +3 -2
- package/dist/service/apigateway/cfn/api/sim-cfn-rest-api-creator.d.ts +2 -1
- package/dist/service/apigateway/cfn/api/sim-cfn-rest-api-creator.js +11 -13
- package/dist/service/apigateway/cfn/authorizer/sim-cfn-rest-api-authorizer-creator.d.ts +2 -1
- package/dist/service/apigateway/cfn/authorizer/sim-cfn-rest-api-authorizer-creator.js +2 -4
- package/dist/service/apigateway/cfn/deployment/sim-cfn-rest-api-deployment-creator.d.ts +2 -1
- package/dist/service/apigateway/cfn/deployment/sim-cfn-rest-api-deployment-creator.js +2 -4
- package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-creator.d.ts +2 -1
- package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-creator.js +3 -5
- package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-integration.d.ts +2 -1
- package/dist/service/apigateway/cfn/method/sim-cfn-rest-api-method-integration.js +3 -3
- package/dist/service/apigateway/cfn/resource/sim-cfn-rest-api-resource-creator.d.ts +2 -1
- package/dist/service/apigateway/cfn/resource/sim-cfn-rest-api-resource-creator.js +2 -4
- package/dist/service/apigateway/cfn/sim-cfn-api-gateway-resource-deleter.d.ts +2 -1
- package/dist/service/apigateway/cfn/sim-cfn-api-gateway-resource-deleter.js +3 -5
- package/dist/service/apigateway/cfn/sim-cfn-api-gateway-resource-factory.js +9 -7
- package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-deleter.d.ts +2 -7
- package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-deleter.js +12 -42
- package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-values.d.ts +10 -0
- package/dist/service/apigateway/cfn/sim-cfn-rest-api-part-values.js +21 -0
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-creator.d.ts +2 -1
- package/dist/service/apigateway/cfn/stage/sim-cfn-rest-api-stage-creator.js +2 -4
- package/dist/service/apigateway/serve/sim-api-gateway-router.js +5 -2
- package/dist/service/apigateway/sim-api-gateway-commands.d.ts +1 -1
- package/dist/service/apigateway/sim-api-gateway-commands.js +3 -2
- package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-creator.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/api/sim-cfn-http-api-creator.js +5 -9
- package/dist/service/apigatewayv2/cfn/authorizer/sim-cfn-http-api-authorizer-creator.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/authorizer/sim-cfn-http-api-authorizer-creator.js +2 -4
- package/dist/service/apigatewayv2/cfn/domain/sim-cfn-api-mapping-creator.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/domain/sim-cfn-api-mapping-creator.js +2 -4
- package/dist/service/apigatewayv2/cfn/domain/sim-cfn-http-api-domain-creator.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/domain/sim-cfn-http-api-domain-creator.js +2 -4
- package/dist/service/apigatewayv2/cfn/integration/sim-cfn-http-api-integration-creator.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/integration/sim-cfn-http-api-integration-creator.js +2 -4
- package/dist/service/apigatewayv2/cfn/route/sim-cfn-http-api-route-creator.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/route/sim-cfn-http-api-route-creator.js +2 -4
- package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.d.ts +2 -9
- package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-deleter.js +19 -25
- package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.d.ts +0 -5
- package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-resource-factory.js +13 -29
- package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-unsupported.d.ts +5 -0
- package/dist/service/apigatewayv2/cfn/sim-cfn-api-gateway-v2-unsupported.js +19 -0
- package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/sim-cfn-http-api-part-deleter.js +5 -13
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-creator.d.ts +2 -1
- package/dist/service/apigatewayv2/cfn/stage/sim-cfn-http-api-stage-creator.js +2 -4
- package/dist/service/apigatewayv2/serve/sim-api-gateway-v2-router.js +5 -2
- package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.d.ts +1 -1
- package/dist/service/apigatewayv2/sim-api-gateway-v2-commands.js +3 -2
- package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.d.ts +3 -2
- package/dist/service/athena/cfn/named-query/sim-cfn-athena-named-query-creator.js +4 -6
- package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.d.ts +2 -2
- package/dist/service/athena/cfn/sim-athena-cfn-resource-factory.js +7 -6
- package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.d.ts +3 -2
- package/dist/service/athena/cfn/work-group/sim-cfn-athena-work-group-creator.js +7 -11
- package/dist/service/athena/engine/sim-athena-aggregate-shims.d.ts +10 -5
- package/dist/service/athena/engine/sim-athena-aggregate-shims.js +19 -16
- package/dist/service/athena/engine/sim-athena-binary-shims.d.ts +16 -0
- package/dist/service/athena/engine/sim-athena-binary-shims.js +49 -0
- package/dist/service/athena/engine/sim-athena-binary-text.d.ts +21 -0
- package/dist/service/athena/engine/sim-athena-binary-text.js +87 -0
- package/dist/service/athena/engine/sim-athena-count-distinct.d.ts +15 -0
- package/dist/service/athena/engine/sim-athena-count-distinct.js +103 -0
- package/dist/service/athena/engine/sim-athena-distinct-values.d.ts +19 -0
- package/dist/service/athena/engine/sim-athena-distinct-values.js +37 -0
- package/dist/service/athena/engine/sim-athena-hash-words.d.ts +14 -0
- package/dist/service/athena/engine/sim-athena-hash-words.js +22 -0
- package/dist/service/athena/engine/sim-athena-murmur3-mixing.d.ts +15 -0
- package/dist/service/athena/engine/sim-athena-murmur3-mixing.js +37 -0
- package/dist/service/athena/engine/sim-athena-murmur3.d.ts +11 -0
- package/dist/service/athena/engine/sim-athena-murmur3.js +51 -0
- package/dist/service/athena/engine/sim-athena-shim-registry.d.ts +9 -0
- package/dist/service/athena/engine/sim-athena-shim-registry.js +30 -1
- package/dist/service/athena/engine/sim-athena-shims.js +2 -0
- package/dist/service/athena/engine/sim-athena-sql-rewrites.d.ts +4 -2
- package/dist/service/athena/engine/sim-athena-sql-rewrites.js +6 -3
- package/dist/service/athena/engine/sim-athena-xxhash64.d.ts +8 -0
- package/dist/service/athena/engine/sim-athena-xxhash64.js +82 -0
- package/dist/service/athena/sim-athena-executions.d.ts +1 -1
- package/dist/service/athena/sim-athena-executions.js +3 -2
- package/dist/service/bedrock/sim-bedrock.d.ts +1 -1
- package/dist/service/bedrock/sim-bedrock.js +3 -2
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.d.ts +8 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js +6 -4
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.d.ts +4 -0
- package/dist/service/cloudformation/command/create-stack/create-stack.handler.js +4 -1
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.d.ts +7 -0
- package/dist/service/cloudformation/command/update-stack/update-stack.handler.js +3 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-deployer.js +2 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.d.ts +9 -2
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-plan.js +2 -1
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.d.ts +10 -3
- package/dist/service/cloudformation/deploy/sim-cfn-cdk-out-stack-options.js +4 -7
- package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.d.ts +10 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-deployer.js +4 -2
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.d.ts +11 -0
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-loader.js +2 -1
- package/dist/service/cloudformation/deploy/sim-cfn-template-file-updater.js +1 -0
- package/dist/service/cloudformation/resource/caller/sim-cfn-resource-caller-options.d.ts +16 -0
- package/dist/service/cloudformation/resource/caller/sim-cfn-resource-caller-options.js +6 -0
- package/dist/service/cloudformation/resource/cfn/scheduler/sim-scheduler-cfn-value-adapter.js +50 -0
- package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.d.ts +11 -4
- package/dist/service/cloudformation/resource/resolve/property/sim-cfn-resource-property-resolver.js +21 -8
- package/dist/service/cloudformation/resource/sim-cfn-resource.type.d.ts +21 -0
- package/dist/service/cloudformation/sim-cloudformation.d.ts +1 -1
- package/dist/service/cloudformation/sim-cloudformation.js +3 -2
- package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.d.ts +3 -0
- package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-batch-creator.js +4 -1
- package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.d.ts +2 -0
- package/dist/service/cloudformation/stack/deploy/sim-cfn-stack-resource-creator.js +2 -1
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.d.ts +17 -2
- package/dist/service/cloudformation/stack/sim-cfn-stack-resource-operations.js +15 -4
- package/dist/service/cloudformation/stack/sim-cfn-stack.js +5 -5
- package/dist/service/cloudformation/stack/sim-cfn-stack.type.d.ts +12 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.d.ts +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-batch-deleter.js +3 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.d.ts +2 -0
- package/dist/service/cloudformation/stack/teardown/sim-cfn-stack-resource-deleter.js +2 -1
- package/dist/service/cloudformation/template/dynamic/make-sim-cfn-dynamic-references.d.ts +2 -0
- package/dist/service/cloudformation/template/dynamic/make-sim-cfn-dynamic-references.js +2 -2
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference-resolvers.d.ts +10 -0
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference-resolvers.js +4 -3
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference-scan.d.ts +11 -0
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-reference-scan.js +21 -0
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-references.d.ts +24 -2
- package/dist/service/cloudformation/template/dynamic/sim-cfn-dynamic-references.js +50 -11
- package/dist/service/cloudformation/template/dynamic/sim-cfn-prefetched-dynamic-references.d.ts +42 -0
- package/dist/service/cloudformation/template/dynamic/sim-cfn-prefetched-dynamic-references.js +80 -0
- package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-creator.d.ts +5 -0
- package/dist/service/cloudfront/cfn/cff/sim-cfn-cff-creator.js +10 -3
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-creator.js +2 -1
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.d.ts +2 -1
- package/dist/service/cloudfront/cfn/distro/sim-cfn-cf-distro-deleter.js +5 -7
- package/dist/service/cloudfront/cfn/key-value-store/sim-cfn-cf-kvs-creator.d.ts +3 -2
- package/dist/service/cloudfront/cfn/key-value-store/sim-cfn-cf-kvs-creator.js +6 -6
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.d.ts +2 -4
- package/dist/service/cloudfront/cfn/sim-cfn-cloudfront-resource-factory.js +7 -15
- package/dist/service/cloudfront/edge/sim-aws-cf-edge-functions.js +3 -2
- package/dist/service/cloudfront/sim-cloudfront-commands.d.ts +1 -1
- package/dist/service/cloudfront/sim-cloudfront-commands.js +5 -2
- package/dist/service/cloudwatch/cfn/alarm/sim-cfn-alarm-creator.d.ts +3 -2
- package/dist/service/cloudwatch/cfn/alarm/sim-cfn-alarm-creator.js +4 -6
- package/dist/service/cloudwatch/cfn/sim-cloudwatch-cfn-resource-factory.d.ts +2 -2
- package/dist/service/cloudwatch/cfn/sim-cloudwatch-cfn-resource-factory.js +4 -3
- package/dist/service/cloudwatch/sim-cloudwatch-commands.d.ts +1 -1
- package/dist/service/cloudwatch/sim-cloudwatch-commands.js +3 -2
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-creator.d.ts +2 -1
- package/dist/service/cognito/cfn/client/sim-cfn-cognito-client-creator.js +2 -4
- package/dist/service/cognito/cfn/domain/sim-cfn-cognito-domain-creator.d.ts +2 -1
- package/dist/service/cognito/cfn/domain/sim-cfn-cognito-domain-creator.js +2 -4
- package/dist/service/cognito/cfn/group/sim-cfn-cognito-group-creator.d.ts +2 -1
- package/dist/service/cognito/cfn/group/sim-cfn-cognito-group-creator.js +2 -4
- package/dist/service/cognito/cfn/idp/sim-cfn-cognito-idp-creator.d.ts +2 -1
- package/dist/service/cognito/cfn/idp/sim-cfn-cognito-idp-creator.js +2 -4
- package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.d.ts +2 -1
- package/dist/service/cognito/cfn/sim-cfn-cognito-resource-deleter.js +18 -24
- package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.d.ts +2 -2
- package/dist/service/cognito/cfn/sim-cfn-cognito-resource-factory.js +9 -7
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-creator.d.ts +2 -1
- package/dist/service/cognito/cfn/user-pool/sim-cfn-cognito-user-pool-creator.js +5 -7
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts +1 -1
- package/dist/service/cognito/sim-cognito-identity-provider.js +3 -2
- package/dist/service/cognito/user-pool/trigger/sim-aws-cognito-trigger-functions.js +2 -1
- package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.d.ts +2 -1
- package/dist/service/dynamodb/cfn/global-table/sim-cfn-dynamodb-global-table-creator.js +2 -2
- package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.d.ts +2 -1
- package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-deleter.js +2 -4
- package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.d.ts +2 -2
- package/dist/service/dynamodb/cfn/sim-cfn-dynamodb-resource-factory.js +6 -4
- package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.d.ts +2 -1
- package/dist/service/dynamodb/cfn/table/sim-cfn-dynamodb-table-creator.js +5 -7
- package/dist/service/dynamodb/sim-dynamodb.js +3 -2
- package/dist/service/ecs/cfn/cluster/sim-cfn-ecs-cluster-creator.d.ts +3 -2
- package/dist/service/ecs/cfn/cluster/sim-cfn-ecs-cluster-creator.js +4 -6
- package/dist/service/ecs/cfn/service/sim-cfn-ecs-service-creator.d.ts +3 -2
- package/dist/service/ecs/cfn/service/sim-cfn-ecs-service-creator.js +4 -4
- package/dist/service/ecs/cfn/sim-cfn-ecs-created-resource.d.ts +5 -0
- package/dist/service/ecs/cfn/sim-cfn-ecs-created-resource.js +9 -0
- package/dist/service/ecs/cfn/sim-ecs-cfn-resource-factory.d.ts +2 -2
- package/dist/service/ecs/cfn/sim-ecs-cfn-resource-factory.js +11 -16
- package/dist/service/ecs/cfn/task-definition/sim-cfn-ecs-task-definition-creator.d.ts +3 -2
- package/dist/service/ecs/cfn/task-definition/sim-cfn-ecs-task-definition-creator.js +4 -6
- package/dist/service/ecs/sim-ecs-commands.js +3 -2
- package/dist/service/ecs/task/run/sim-ecs-container-environment.d.ts +12 -10
- package/dist/service/ecs/task/run/sim-ecs-container-environment.js +16 -18
- package/dist/service/elbv2/cfn/listener/sim-cfn-elbv2-listener-creator.d.ts +3 -2
- package/dist/service/elbv2/cfn/listener/sim-cfn-elbv2-listener-creator.js +4 -6
- package/dist/service/elbv2/cfn/load-balancer/sim-cfn-elbv2-load-balancer-creator.d.ts +3 -2
- package/dist/service/elbv2/cfn/load-balancer/sim-cfn-elbv2-load-balancer-creator.js +4 -6
- package/dist/service/elbv2/cfn/rule/sim-cfn-elbv2-listener-rule-creator.d.ts +3 -2
- package/dist/service/elbv2/cfn/rule/sim-cfn-elbv2-listener-rule-creator.js +4 -4
- package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-deleter.d.ts +2 -1
- package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-deleter.js +5 -5
- package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-factory.d.ts +2 -2
- package/dist/service/elbv2/cfn/sim-elbv2-cfn-resource-factory.js +8 -6
- package/dist/service/elbv2/cfn/target-group/sim-cfn-elbv2-target-group-creator.d.ts +3 -2
- package/dist/service/elbv2/cfn/target-group/sim-cfn-elbv2-target-group-creator.js +7 -11
- package/dist/service/elbv2/serve/sim-elbv2-router.js +2 -1
- package/dist/service/elbv2/sim-elbv2.js +3 -3
- package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.d.ts +2 -1
- package/dist/service/eventbridge/cfn/bus/sim-cfn-event-bus-creator.js +2 -4
- package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.d.ts +2 -1
- package/dist/service/eventbridge/cfn/rule/sim-cfn-event-rule-creator.js +5 -5
- package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.d.ts +2 -1
- package/dist/service/eventbridge/cfn/sim-cfn-event-bridge-resource-deleter.js +7 -7
- package/dist/service/eventbridge/cfn/sim-event-bridge-cfn-resource-factory.js +5 -3
- package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-failures.d.ts +16 -0
- package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-failures.js +19 -0
- package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-function.js +2 -1
- package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-queue.js +2 -1
- package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-task.js +4 -1
- package/dist/service/eventbridge/delivery/sim-event-bridge-delivery-topic.js +2 -1
- package/dist/service/eventbridge/delivery/sim-event-bridge-target-role.d.ts +8 -3
- package/dist/service/eventbridge/delivery/sim-event-bridge-target-role.js +9 -3
- package/dist/service/eventbridge/sim-event-bridge.d.ts +1 -1
- package/dist/service/eventbridge/sim-event-bridge.js +3 -2
- package/dist/service/firehose/cfn/delivery-stream/sim-cfn-firehose-delivery-stream-creator.d.ts +2 -1
- package/dist/service/firehose/cfn/delivery-stream/sim-cfn-firehose-delivery-stream-creator.js +2 -2
- package/dist/service/firehose/cfn/sim-cfn-firehose-resource-deleter.d.ts +2 -1
- package/dist/service/firehose/cfn/sim-cfn-firehose-resource-deleter.js +2 -4
- package/dist/service/firehose/cfn/sim-firehose-cfn-resource-factory.d.ts +1 -1
- package/dist/service/firehose/cfn/sim-firehose-cfn-resource-factory.js +4 -3
- package/dist/service/firehose/sim-firehose.d.ts +1 -1
- package/dist/service/firehose/sim-firehose.js +3 -2
- package/dist/service/glue/sim-glue.d.ts +1 -1
- package/dist/service/glue/sim-glue.js +3 -2
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts +15 -11
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js +5 -18
- package/dist/service/iam/authorize/context/sim-iam-derived-conditions.d.ts +42 -0
- package/dist/service/iam/authorize/context/sim-iam-derived-conditions.js +44 -0
- package/dist/service/iam/authorize/match/condition/arn/equals/sim-iam-arn-equals.js +2 -2
- package/dist/service/iam/authorize/match/condition/arn/like/sim-iam-arn-like.js +2 -2
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-all-values-string-operator.d.ts +20 -0
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-all-values-string-operator.js +27 -0
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-any-value-string-operator.d.ts +21 -0
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-for-any-value-string-operator.js +28 -0
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-operator-factories.d.ts +5 -0
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-operator-factories.js +36 -0
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-scalar-string-operator.d.ts +20 -0
- package/dist/service/iam/authorize/match/condition/negated/sim-iam-negated-scalar-string-operator.js +29 -0
- package/dist/service/iam/authorize/match/condition/numeric/less-than-equals/sim-iam-number-lte.d.ts +1 -0
- package/dist/service/iam/authorize/match/condition/numeric/less-than-equals/sim-iam-number-lte.js +1 -0
- package/dist/service/iam/authorize/match/condition/sim-iam-condition-match.d.ts +26 -0
- package/dist/service/iam/authorize/match/condition/sim-iam-condition-match.js +1 -0
- package/dist/service/iam/authorize/match/condition/sim-iam-condition-operator-parser.js +2 -0
- package/dist/service/iam/authorize/match/condition/sim-iam-condition-operator.d.ts +15 -0
- package/dist/service/iam/authorize/match/condition/sim-iam-policy-condition-matcher.d.ts +11 -3
- package/dist/service/iam/authorize/match/condition/sim-iam-policy-condition-matcher.js +29 -11
- package/dist/service/iam/authorize/match/condition/sim-iam-string-comparison.d.ts +24 -0
- package/dist/service/iam/authorize/match/condition/sim-iam-string-comparison.js +17 -0
- package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-condition-operator.d.ts +1 -0
- package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-condition-operator.js +1 -0
- package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-equals.js +2 -1
- package/dist/service/iam/authorize/match/condition/string/all-values/sim-iam-for-all-values-string-like.js +2 -4
- package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-condition-operator.d.ts +1 -0
- package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-condition-operator.js +1 -0
- package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-equals.js +2 -1
- package/dist/service/iam/authorize/match/condition/string/any-value/sim-iam-for-any-value-string-like.js +2 -4
- package/dist/service/iam/authorize/match/condition/string/equals/sim-iam-string-equals.js +2 -1
- package/dist/service/iam/authorize/match/condition/string/like/sim-iam-string-like.js +2 -4
- package/dist/service/iam/authorize/match/condition/string/sim-iam-scalar-string-condition-operator.d.ts +1 -0
- package/dist/service/iam/authorize/match/condition/string/sim-iam-scalar-string-condition-operator.js +1 -0
- package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.d.ts +18 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.js +32 -4
- package/dist/service/iam/authorize/sim-iam-decision.d.ts +12 -0
- package/dist/service/iam/authorize/sim-iam-decision.js +14 -0
- package/dist/service/iam/authorize/sim-iam-region-auth-z.d.ts +31 -0
- package/dist/service/iam/authorize/sim-iam-region-auth-z.js +65 -0
- package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statement.type.d.ts +31 -0
- package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statement.type.js +1 -0
- package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statements.d.ts +31 -0
- package/dist/service/iam/authorize/unevaluated/sim-iam-unevaluated-statements.js +43 -0
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.d.ts +2 -1
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-attacher.js +2 -4
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.d.ts +2 -1
- package/dist/service/iam/cfn/managed-policy/sim-cfn-iam-managed-policy-creator.js +3 -3
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.d.ts +2 -1
- package/dist/service/iam/cfn/policy/sim-cfn-iam-policy-creator.js +7 -7
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-creator.d.ts +2 -1
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-creator.js +8 -8
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.d.ts +2 -1
- package/dist/service/iam/cfn/role/sim-cfn-iam-role-deleter.js +10 -12
- package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.d.ts +2 -1
- package/dist/service/iam/cfn/sim-cfn-iam-resource-deleter.js +12 -16
- package/dist/service/iam/cfn/sim-cfn-iam-resource-factory.js +8 -5
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.d.ts +2 -1
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-creator.js +11 -11
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.d.ts +4 -2
- package/dist/service/iam/cfn/user/sim-cfn-iam-user-deleter.js +17 -3
- package/dist/service/iam/command/policy/create-policy/create-policy-input-resolver.js +4 -1
- package/dist/service/iam/command/policy/put-role-policy/put-role-policy.handler.js +5 -1
- package/dist/service/iam/command/policy/put-user-policy/put-user-policy.handler.js +5 -1
- package/dist/service/iam/command/sim-iam-command-handlers.js +6 -1
- package/dist/service/iam/policy/parse/sim-iam-document-parser.d.ts +4 -1
- package/dist/service/iam/policy/parse/sim-iam-document-parser.js +13 -15
- package/dist/service/iam/policy/sim-iam-statement-label.d.ts +28 -0
- package/dist/service/iam/policy/sim-iam-statement-label.js +17 -0
- package/dist/service/iam/policy/sim-iam-statement-strings.d.ts +11 -0
- package/dist/service/iam/policy/sim-iam-statement-strings.js +27 -0
- package/dist/service/iam/validate/sim-iam-policy-document-validator.d.ts +9 -2
- package/dist/service/iam/validate/sim-iam-policy-document-validator.js +37 -19
- package/dist/service/kinesis/cfn/sim-cfn-kinesis-resource-deleter.d.ts +2 -1
- package/dist/service/kinesis/cfn/sim-cfn-kinesis-resource-deleter.js +2 -2
- package/dist/service/kinesis/cfn/sim-kinesis-cfn-resource-factory.d.ts +1 -1
- package/dist/service/kinesis/cfn/sim-kinesis-cfn-resource-factory.js +4 -3
- package/dist/service/kinesis/cfn/stream/sim-cfn-kinesis-stream-creator.d.ts +2 -1
- package/dist/service/kinesis/cfn/stream/sim-cfn-kinesis-stream-creator.js +5 -7
- package/dist/service/kinesis/sim-kinesis.d.ts +1 -1
- package/dist/service/kinesis/sim-kinesis.js +3 -2
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.d.ts +2 -1
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.js +2 -2
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.d.ts +6 -6
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.js +11 -11
- package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.d.ts +2 -1
- package/dist/service/kms/cfn/sim-cfn-kms-resource-deleter.js +3 -5
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts +2 -1
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js +6 -4
- package/dist/service/kms/sim-kms-commands.d.ts +1 -1
- package/dist/service/kms/sim-kms-commands.js +3 -2
- package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.d.ts +2 -1
- package/dist/service/lambda/cfn/alias/sim-cfn-lambda-alias-creator.js +2 -2
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.d.ts +2 -1
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-creator.js +2 -2
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.d.ts +2 -1
- package/dist/service/lambda/cfn/event-invoke-config/sim-cfn-lambda-event-invoke-config-remover.js +2 -4
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.d.ts +2 -1
- package/dist/service/lambda/cfn/event-source-mapping/sim-cfn-lambda-event-source-mapping-creator.js +2 -2
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts +2 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.js +3 -4
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts +2 -1
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js +2 -2
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.d.ts +2 -1
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-revoker.js +2 -2
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.d.ts +2 -8
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-deleter.js +18 -38
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +2 -2
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +12 -9
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.d.ts +2 -1
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +2 -2
- package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.d.ts +2 -1
- package/dist/service/lambda/cfn/version/sim-cfn-lambda-version-creator.js +2 -2
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-function.factory.d.ts +7 -0
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-function.factory.js +1 -0
- package/dist/service/lambda/function/code/vm/sdk/sim-lambda-provided-sdk-module.d.ts +19 -0
- package/dist/service/lambda/function/code/vm/sdk/sim-lambda-provided-sdk-module.js +78 -0
- package/dist/service/lambda/function/code/vm/sdk/sim-lambda-sdk-packages-not-installed.error.d.ts +15 -0
- package/dist/service/lambda/function/code/vm/sdk/sim-lambda-sdk-packages-not-installed.error.js +27 -0
- package/dist/service/lambda/function/code/vm/sdk/sim-lambda-vm-sdk-module-provider.d.ts +9 -0
- package/dist/service/lambda/function/code/vm/sdk/sim-sdk-lambda-vm-module-provider.d.ts +10 -0
- package/dist/service/lambda/function/code/vm/sdk/sim-sdk-lambda-vm-module-provider.js +28 -34
- package/dist/service/lambda/function/code/vm/sim-lambda-host-modules.d.ts +15 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-host-modules.js +31 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-module-resolver.d.ts +7 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-module-resolver.js +15 -0
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-modules.js +5 -4
- package/dist/service/lambda/serve/sim-lambda-url-router.js +2 -1
- package/dist/service/lambda/sim-lambda-commands.d.ts +1 -1
- package/dist/service/lambda/sim-lambda-commands.js +3 -2
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.d.ts +3 -2
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-creator.js +4 -6
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.d.ts +3 -2
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-destination-creator.js +4 -6
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.d.ts +3 -2
- package/dist/service/logs/cfn/delivery/sim-cfn-delivery-source-creator.js +4 -4
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.d.ts +2 -1
- package/dist/service/logs/cfn/sim-logs-cfn-resource-deleter.js +4 -4
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.d.ts +2 -2
- package/dist/service/logs/cfn/sim-logs-cfn-resource-factory.js +7 -5
- package/dist/service/logs/sim-logs-commands.d.ts +1 -1
- package/dist/service/logs/sim-logs-commands.js +3 -2
- package/dist/service/logs/subscription/lambda/sim-logs-destination-permission.js +2 -1
- package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-creator.d.ts +3 -2
- package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-creator.js +4 -6
- package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-group-creator.d.ts +3 -2
- package/dist/service/personalize/cfn/sim-cfn-personalize-dataset-group-creator.js +4 -6
- package/dist/service/personalize/cfn/sim-cfn-personalize-event-tracker-creator.d.ts +3 -2
- package/dist/service/personalize/cfn/sim-cfn-personalize-event-tracker-creator.js +4 -6
- package/dist/service/personalize/cfn/sim-cfn-personalize-schema-creator.d.ts +3 -2
- package/dist/service/personalize/cfn/sim-cfn-personalize-schema-creator.js +4 -4
- package/dist/service/personalize/cfn/sim-cfn-personalize-solution-creator.d.ts +3 -2
- package/dist/service/personalize/cfn/sim-cfn-personalize-solution-creator.js +4 -6
- package/dist/service/personalize/cfn/sim-personalize-cfn-resource-factory.d.ts +2 -2
- package/dist/service/personalize/cfn/sim-personalize-cfn-resource-factory.js +7 -6
- package/dist/service/personalize/sim-personalize-data-operations.d.ts +1 -1
- package/dist/service/personalize/sim-personalize-data-operations.js +3 -2
- package/dist/service/rekognition/sim-rekognition.d.ts +1 -1
- package/dist/service/rekognition/sim-rekognition.js +3 -2
- package/dist/service/route53/cfn/dnssec/sim-cfn-r53-ksk-creator.d.ts +3 -2
- package/dist/service/route53/cfn/dnssec/sim-cfn-r53-ksk-creator.js +5 -5
- package/dist/service/route53/cfn/dnssec/sim-cfn-r53-zone-signing-creator.d.ts +3 -2
- package/dist/service/route53/cfn/dnssec/sim-cfn-r53-zone-signing-creator.js +4 -8
- package/dist/service/route53/cfn/hosted-zone/sim-cfn-r53-zone-creator.d.ts +2 -1
- package/dist/service/route53/cfn/hosted-zone/sim-cfn-r53-zone-creator.js +2 -2
- package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.d.ts +9 -1
- package/dist/service/route53/cfn/record-set/apply/sim-cfn-r53-record-set-applicator.js +23 -2
- package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.d.ts +5 -3
- package/dist/service/route53/cfn/sim-cfn-route53-resource-deleter.js +9 -28
- package/dist/service/route53/cfn/sim-cfn-route53-resource-factory.js +9 -5
- package/dist/service/route53/sim-route53.d.ts +1 -1
- package/dist/service/route53/sim-route53.js +5 -2
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.d.ts +3 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-configurator.js +6 -13
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts +2 -1
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js +3 -2
- package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.d.ts +2 -1
- package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.js +2 -2
- package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.d.ts +2 -1
- package/dist/service/s3/cfn/sim-cfn-s3-resource-deleter.js +3 -7
- package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts +2 -2
- package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js +6 -4
- package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.js +4 -1
- package/dist/service/s3/notification/destination/lambda/sim-aws-s3-notification-functions.js +2 -1
- package/dist/service/s3/notification/destination/sns/sim-s3-notification-topic.js +2 -1
- package/dist/service/s3/notification/destination/sqs/sim-s3-notification-queue.js +2 -1
- package/dist/service/s3/sim-s3-commands.d.ts +1 -1
- package/dist/service/s3/sim-s3-commands.js +3 -2
- package/dist/service/scheduler/cfn/sim-cfn-schedule-creator.d.ts +26 -0
- package/dist/service/scheduler/cfn/sim-cfn-schedule-creator.js +49 -0
- package/dist/service/scheduler/cfn/sim-cfn-schedule-group-creator.d.ts +31 -0
- package/dist/service/scheduler/cfn/sim-cfn-schedule-group-creator.js +48 -0
- package/dist/service/scheduler/cfn/sim-cfn-schedule-group-properties.d.ts +26 -0
- package/dist/service/scheduler/cfn/sim-cfn-schedule-group-properties.js +68 -0
- package/dist/service/scheduler/cfn/sim-cfn-schedule-properties.js +4 -10
- package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.d.ts +14 -3
- package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-error.js +28 -6
- package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.d.ts +10 -4
- package/dist/service/scheduler/cfn/sim-cfn-scheduler-resource-lookup.js +9 -6
- package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.d.ts +6 -8
- package/dist/service/scheduler/cfn/sim-scheduler-cfn-resource-factory.js +20 -33
- package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.d.ts +9 -8
- package/dist/service/scheduler/command/authorize/sim-scheduler-authorizer.js +14 -15
- package/dist/service/scheduler/command/group/group.command.d.ts +90 -0
- package/dist/service/scheduler/command/group/group.command.js +1 -0
- package/dist/service/scheduler/command/group/sim-scheduler-described-group.d.ts +15 -0
- package/dist/service/scheduler/command/group/sim-scheduler-described-group.js +29 -0
- package/dist/service/scheduler/command/group/sim-scheduler-group-access.d.ts +57 -0
- package/dist/service/scheduler/command/group/sim-scheduler-group-access.js +70 -0
- package/dist/service/scheduler/command/group/sim-scheduler-group-commands.d.ts +46 -0
- package/dist/service/scheduler/command/group/sim-scheduler-group-commands.js +72 -0
- package/dist/service/scheduler/command/group/sim-scheduler-listed-groups.d.ts +6 -0
- package/dist/service/scheduler/command/group/sim-scheduler-listed-groups.js +10 -0
- package/dist/service/scheduler/command/group/sim-scheduler-unsimulated-group-input.d.ts +14 -0
- package/dist/service/scheduler/command/group/sim-scheduler-unsimulated-group-input.js +19 -0
- package/dist/service/scheduler/command/schedule/sim-scheduler-create-schedule.js +1 -0
- package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.d.ts +16 -0
- package/dist/service/scheduler/command/schedule/sim-scheduler-schedule-access.js +23 -3
- package/dist/service/scheduler/command/sim-scheduler-command.types.d.ts +1 -0
- package/dist/service/scheduler/command/sim-scheduler-commands.d.ts +4 -0
- package/dist/service/scheduler/command/sim-scheduler-commands.js +14 -1
- package/dist/service/scheduler/delivery/sim-aws-scheduler-delivery-targets.js +1 -1
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-failures.d.ts +16 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-failures.js +19 -0
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-function.js +2 -1
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-queue.js +2 -1
- package/dist/service/scheduler/delivery/sim-scheduler-delivery-topic.js +2 -1
- package/dist/service/scheduler/delivery/sim-scheduler-execution-role.d.ts +9 -3
- package/dist/service/scheduler/delivery/sim-scheduler-execution-role.js +10 -3
- package/dist/service/scheduler/group/sim-scheduler-schedule-group-arn.d.ts +11 -0
- package/dist/service/scheduler/group/sim-scheduler-schedule-group-arn.js +13 -0
- package/dist/service/scheduler/group/sim-scheduler-schedule-group-store.d.ts +46 -0
- package/dist/service/scheduler/group/sim-scheduler-schedule-group-store.js +65 -0
- package/dist/service/scheduler/group/sim-scheduler-schedule-group.d.ts +25 -0
- package/dist/service/scheduler/group/sim-scheduler-schedule-group.js +32 -0
- package/dist/service/scheduler/index.d.ts +3 -1
- package/dist/service/scheduler/index.js +3 -1
- package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.d.ts +11 -9
- package/dist/service/scheduler/schedule/sim-scheduler-schedule-name.js +15 -18
- package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.d.ts +7 -0
- package/dist/service/scheduler/schedule/sim-scheduler-schedule-store.js +13 -0
- package/dist/service/scheduler/schedule/sim-scheduler-schedule.d.ts +13 -0
- package/dist/service/scheduler/schedule/sim-scheduler-schedule.js +16 -0
- package/dist/service/scheduler/sdk/sim-scheduler-sdk-command-router.js +16 -0
- package/dist/service/scheduler/sim-scheduler-inspection.d.ts +14 -0
- package/dist/service/scheduler/sim-scheduler-inspection.js +15 -0
- package/dist/service/scheduler/sim-scheduler.d.ts +19 -1
- package/dist/service/scheduler/sim-scheduler.js +38 -2
- package/dist/service/secretsmanager/cfn/dynamic/sim-cfn-secrets-manager-dynamic-reference-resolver.d.ts +13 -15
- package/dist/service/secretsmanager/cfn/dynamic/sim-cfn-secrets-manager-dynamic-reference-resolver.js +22 -43
- package/dist/service/secretsmanager/cfn/dynamic/sim-cfn-secrets-manager-reference-stand-in.d.ts +9 -0
- package/dist/service/secretsmanager/cfn/dynamic/sim-cfn-secrets-manager-reference-stand-in.js +14 -0
- package/dist/service/secretsmanager/cfn/dynamic/sim-cfn-secrets-manager-reference-value.d.ts +12 -0
- package/dist/service/secretsmanager/cfn/dynamic/sim-cfn-secrets-manager-reference-value.js +29 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.d.ts +2 -1
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.js +2 -2
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts +2 -2
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js +4 -5
- package/dist/service/secretsmanager/sim-secrets-manager.d.ts +1 -1
- package/dist/service/secretsmanager/sim-secrets-manager.js +3 -2
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.d.ts +3 -2
- package/dist/service/ses/cfn/configuration-set/sim-cfn-ses-configuration-set-creator.js +4 -4
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.d.ts +3 -2
- package/dist/service/ses/cfn/identity/sim-cfn-ses-identity-creator.js +4 -8
- package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.d.ts +2 -2
- package/dist/service/ses/cfn/sim-ses-cfn-resource-factory.js +7 -6
- package/dist/service/ses/cfn/template/sim-cfn-ses-template-creator.d.ts +3 -2
- package/dist/service/ses/cfn/template/sim-cfn-ses-template-creator.js +4 -8
- package/dist/service/ses/sim-ses-commands.d.ts +1 -1
- package/dist/service/ses/sim-ses-commands.js +3 -2
- package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.d.ts +5 -8
- package/dist/service/sns/cfn/sim-cfn-sns-resource-deleter.js +10 -28
- package/dist/service/sns/cfn/sim-sns-cfn-resource-factory.js +10 -5
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.d.ts +2 -1
- package/dist/service/sns/cfn/subscription/sim-cfn-sns-subscription-creator.js +2 -2
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.d.ts +2 -1
- package/dist/service/sns/cfn/topic/sim-cfn-sns-topic-creator.js +5 -7
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.d.ts +9 -1
- package/dist/service/sns/cfn/topic-policy/sim-cfn-sns-topic-policy-creator.js +20 -4
- package/dist/service/sns/delivery/lambda/sim-sns-delivery-function.js +2 -1
- package/dist/service/sns/delivery/sqs/sim-sns-delivery-queue.js +2 -1
- package/dist/service/sns/sim-sns.d.ts +1 -1
- package/dist/service/sns/sim-sns.js +3 -2
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.d.ts +2 -1
- package/dist/service/sqs/cfn/queue/sim-cfn-sqs-queue-creator.js +2 -4
- package/dist/service/sqs/cfn/queue-policy/sim-cfn-sqs-queue-policy-creator.d.ts +2 -1
- package/dist/service/sqs/cfn/queue-policy/sim-cfn-sqs-queue-policy-creator.js +4 -4
- package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.d.ts +2 -1
- package/dist/service/sqs/cfn/sim-cfn-sqs-resource-deleter.js +7 -7
- package/dist/service/sqs/cfn/sim-sqs-cfn-resource-factory.js +5 -3
- package/dist/service/sqs/sim-sqs.d.ts +1 -1
- package/dist/service/sqs/sim-sqs.js +3 -2
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.d.ts +22 -6
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-dynamic-reference-resolver.js +39 -24
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-dynamic-reference-resolver.d.ts +10 -5
- package/dist/service/ssm/cfn/dynamic/sim-cfn-ssm-secure-dynamic-reference-resolver.js +10 -8
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts +2 -1
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js +2 -2
- package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts +2 -2
- package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js +4 -3
- package/dist/service/ssm/sim-ssm.d.ts +11 -3
- package/dist/service/ssm/sim-ssm.js +15 -6
- package/dist/service/stepfunctions/cfn/sim-cfn-step-functions-resource-deleter.d.ts +2 -1
- package/dist/service/stepfunctions/cfn/sim-cfn-step-functions-resource-deleter.js +2 -4
- package/dist/service/stepfunctions/cfn/sim-step-functions-cfn-resource-factory.d.ts +1 -1
- package/dist/service/stepfunctions/cfn/sim-step-functions-cfn-resource-factory.js +4 -3
- package/dist/service/stepfunctions/cfn/state-machine/sim-cfn-state-machine-creator.d.ts +2 -1
- package/dist/service/stepfunctions/cfn/state-machine/sim-cfn-state-machine-creator.js +2 -2
- package/dist/service/stepfunctions/task/sim-aws-states-task-targets.js +2 -4
- package/dist/service/stepfunctions/task/sim-states-execution-role.d.ts +3 -3
- package/dist/service/stepfunctions/task/sim-states-execution-role.js +4 -3
- package/dist/service/stepfunctions/task/sim-states-task-function.js +2 -1
- package/dist/service/sts/auth-z/assume-role-auth-z-coordinator.d.ts +3 -0
- package/dist/service/sts/auth-z/assume-role-auth-z-coordinator.js +2 -7
- package/dist/service/sts/auth-z/assume-role-source-account-auth-z.d.ts +6 -0
- package/dist/service/sts/auth-z/assume-role-source-account-auth-z.js +3 -0
- package/dist/service/sts/auth-z/assume-role-target-auth-z.d.ts +6 -0
- package/dist/service/sts/auth-z/assume-role-target-auth-z.js +3 -0
- package/dist/service/sts/auth-z/assume-role-trust-policy-authorizer.d.ts +6 -0
- package/dist/service/sts/auth-z/assume-role-trust-policy-authorizer.js +1 -0
- package/dist/service/sts/command/assume-role/assume-role.handler.d.ts +5 -0
- package/dist/service/sts/command/assume-role/assume-role.handler.js +2 -1
- package/dist/service/sts/service-role/sim-service-role-source.d.ts +33 -0
- package/dist/service/sts/service-role/sim-service-role-source.js +26 -0
- package/dist/service/sts/service-role/sim-service-role-target.d.ts +26 -0
- package/dist/service/sts/service-role/sim-service-role-target.js +27 -0
- package/dist/service/sts/service-role/sim-service-role.d.ts +16 -20
- package/dist/service/sts/service-role/sim-service-role.js +7 -21
- package/dist/service/sts/sim-sts.js +1 -0
- package/dist/service/wafv2/cfn/association/sim-cfn-waf-association-creator.d.ts +3 -2
- package/dist/service/wafv2/cfn/association/sim-cfn-waf-association-creator.js +4 -6
- package/dist/service/wafv2/cfn/ip-set/sim-cfn-waf-ip-set-creator.d.ts +3 -2
- package/dist/service/wafv2/cfn/ip-set/sim-cfn-waf-ip-set-creator.js +4 -4
- package/dist/service/wafv2/cfn/regex-pattern-set/sim-cfn-waf-regex-set-creator.d.ts +3 -2
- package/dist/service/wafv2/cfn/regex-pattern-set/sim-cfn-waf-regex-set-creator.js +4 -4
- package/dist/service/wafv2/cfn/sim-cfn-waf-resource-deleter.d.ts +2 -1
- package/dist/service/wafv2/cfn/sim-cfn-waf-resource-deleter.js +5 -5
- package/dist/service/wafv2/cfn/sim-waf-cfn-resource-factory.d.ts +2 -2
- package/dist/service/wafv2/cfn/sim-waf-cfn-resource-factory.js +8 -6
- package/dist/service/wafv2/cfn/web-acl/sim-cfn-waf-web-acl-creator.d.ts +3 -2
- package/dist/service/wafv2/cfn/web-acl/sim-cfn-waf-web-acl-creator.js +4 -6
- package/dist/service/wafv2/sim-wafv2-commands.d.ts +1 -1
- package/dist/service/wafv2/sim-wafv2-commands.js +3 -2
- package/dist/util/clock/sim-clock-control.d.ts +3 -1
- package/dist/util/clock/sim-clock-control.js +2 -0
- package/dist/util/clock/sim-controllable-clock.d.ts +3 -1
- package/dist/util/clock/sim-controllable-clock.js +2 -0
- package/dist/util/clock/sim-duration.d.ts +6 -2
- package/dist/util/clock/sim-duration.js +8 -1
- package/package.json +4 -3
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
2
|
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
3
|
import type { SimSns } from "../../sim-sns.js";
|
|
4
|
+
import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
4
5
|
import type { SimSnsTopic } from "../../topic/sim-sns-topic.js";
|
|
5
6
|
interface SimCfnSnsTopicPolicyCreatorProperties {
|
|
6
7
|
readonly sns: SimSns;
|
|
@@ -24,7 +25,14 @@ export declare class SimCfnSnsTopicPolicyCreator {
|
|
|
24
25
|
* topic policy has no existence of its own in SNS: it is the `Policy`
|
|
25
26
|
* attribute of the topics it names.
|
|
26
27
|
*/
|
|
27
|
-
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimSnsTopic>;
|
|
28
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimSnsTopic>;
|
|
29
|
+
/**
|
|
30
|
+
* Take the policy back off every topic the Resource named.
|
|
31
|
+
*
|
|
32
|
+
* The Resource points at only the first of them, so the topics are read from
|
|
33
|
+
* the template the same way creation read them.
|
|
34
|
+
*/
|
|
35
|
+
delete(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<void>;
|
|
28
36
|
/**
|
|
29
37
|
* Set the policy on one topic and hand back the topic it was set on.
|
|
30
38
|
*/
|
|
@@ -26,28 +26,44 @@ export class SimCfnSnsTopicPolicyCreator {
|
|
|
26
26
|
* topic policy has no existence of its own in SNS: it is the `Policy`
|
|
27
27
|
* attribute of the topics it names.
|
|
28
28
|
*/
|
|
29
|
-
async create(resource, properties) {
|
|
29
|
+
async create(resource, properties, options) {
|
|
30
30
|
const { logicalId } = resource;
|
|
31
31
|
const topicArns = simCfnSnsPolicyTopicArns(logicalId, properties);
|
|
32
32
|
const policy = jsonStringify(simCfnSnsPolicyDocument(logicalId, properties));
|
|
33
33
|
return simCfnSnsResourceCreation(snsTopicPolicyResourceType, logicalId, async () => {
|
|
34
|
-
const topics = await Promise.all(topicArns.map(async (topicArn) => this.policyApplied(topicArn, policy)));
|
|
34
|
+
const topics = await Promise.all(topicArns.map(async (topicArn) => this.policyApplied(topicArn, policy, options)));
|
|
35
35
|
const first = topics[0];
|
|
36
36
|
assertDefined(first, `sim SNS topic after CloudFormation topic policy creation for ${logicalId}`);
|
|
37
37
|
return first;
|
|
38
38
|
});
|
|
39
39
|
}
|
|
40
|
+
/**
|
|
41
|
+
* Take the policy back off every topic the Resource named.
|
|
42
|
+
*
|
|
43
|
+
* The Resource points at only the first of them, so the topics are read from
|
|
44
|
+
* the template the same way creation read them.
|
|
45
|
+
*/
|
|
46
|
+
async delete(resource, properties, options) {
|
|
47
|
+
const topicArns = simCfnSnsPolicyTopicArns(resource.logicalId, properties);
|
|
48
|
+
await Promise.all(topicArns.map(async (topicArn) => this.sns.setTopicAttributes({
|
|
49
|
+
input: {
|
|
50
|
+
TopicArn: topicArn,
|
|
51
|
+
AttributeName: simSnsPolicyAttributeName,
|
|
52
|
+
AttributeValue: "",
|
|
53
|
+
},
|
|
54
|
+
}, options)));
|
|
55
|
+
}
|
|
40
56
|
/**
|
|
41
57
|
* Set the policy on one topic and hand back the topic it was set on.
|
|
42
58
|
*/
|
|
43
|
-
async policyApplied(topicArn, policy) {
|
|
59
|
+
async policyApplied(topicArn, policy, options) {
|
|
44
60
|
await this.sns.setTopicAttributes({
|
|
45
61
|
input: {
|
|
46
62
|
TopicArn: topicArn,
|
|
47
63
|
AttributeName: simSnsPolicyAttributeName,
|
|
48
64
|
AttributeValue: policy,
|
|
49
65
|
},
|
|
50
|
-
});
|
|
66
|
+
}, options);
|
|
51
67
|
const parts = parseSnsTopicArn(topicArn);
|
|
52
68
|
assertDefined(parts, `topic ARN ${topicArn} SetTopicAttributes accepted`);
|
|
53
69
|
const topic = this.sns.findTopic(parts.name);
|
|
@@ -3,6 +3,7 @@ import { SimSnsDeliveryNotPermitted } from "../../error/sim-sns-delivery.error.j
|
|
|
3
3
|
import { SimSnsNotFoundException } from "../../error/sim-sns.error.js";
|
|
4
4
|
import { simSnsDeliverySource, simSnsServicePrincipal, } from "../sim-sns-delivery.js";
|
|
5
5
|
import { simSnsLambdaEventDocument } from "./sim-sns-lambda-event.js";
|
|
6
|
+
import { simScopeIamAuthZ } from "../../../iam/authorize/sim-iam-region-auth-z.js";
|
|
6
7
|
/**
|
|
7
8
|
* One function a simulated topic is delivering to, in the Account and Region
|
|
8
9
|
* its ARN names.
|
|
@@ -45,7 +46,7 @@ export class SimSnsDeliveryFunction {
|
|
|
45
46
|
"alias.");
|
|
46
47
|
}
|
|
47
48
|
const decision = new SimLambdaServiceInvokeAuthorizer({
|
|
48
|
-
iam: this.scope
|
|
49
|
+
iam: simScopeIamAuthZ(this.scope),
|
|
49
50
|
}).authorize({
|
|
50
51
|
resource: target.resource,
|
|
51
52
|
servicePrincipal: simSnsServicePrincipal,
|
|
@@ -3,6 +3,7 @@ import { SimSnsDeliveryNotPermitted } from "../../error/sim-sns-delivery.error.j
|
|
|
3
3
|
import { SimSnsNotFoundException } from "../../error/sim-sns.error.js";
|
|
4
4
|
import { simSnsDeliverySource, simSnsServicePrincipal, } from "../sim-sns-delivery.js";
|
|
5
5
|
import { SimSnsQueueMessage } from "./sim-sns-queue-message.js";
|
|
6
|
+
import { simScopeIamAuthZ } from "../../../iam/authorize/sim-iam-region-auth-z.js";
|
|
6
7
|
/**
|
|
7
8
|
* One queue a simulated topic is delivering to, in the Account and Region its
|
|
8
9
|
* ARN names.
|
|
@@ -38,7 +39,7 @@ export class SimSnsDeliveryQueue {
|
|
|
38
39
|
throw new SimSnsNotFoundException(`${endpointArn} is not a simulated SQS queue.`);
|
|
39
40
|
}
|
|
40
41
|
const decision = new SimSqsServiceSendAuthorizer({
|
|
41
|
-
iam: this.scope
|
|
42
|
+
iam: simScopeIamAuthZ(this.scope),
|
|
42
43
|
}).authorize({
|
|
43
44
|
queue,
|
|
44
45
|
servicePrincipal: simSnsServicePrincipal,
|
|
@@ -2,7 +2,7 @@ import { type BackgroundScheduler } from "../../util/background/background.js";
|
|
|
2
2
|
import type { SimSdkCommandRouter } from "../../sdk/router/sim-sdk-command-router.type.js";
|
|
3
3
|
import type { SimAwsAccountRegionScope } from "../aws/sim-aws-account-region-scope.js";
|
|
4
4
|
import { SimAwsMessageLog } from "../aws/message/sim-aws-message-log.js";
|
|
5
|
-
import {
|
|
5
|
+
import type { SimIamInterServiceAuthZ } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
6
6
|
import type { SimSnsDeliveryFailure } from "./delivery/sim-sns-delivery-failures.js";
|
|
7
7
|
import type { SimSnsOutwardDeliveryEndpoints } from "./delivery/sim-sns-protocol-delivery-endpoints.js";
|
|
8
8
|
import type * as simSnsCommands from "./command/sim-sns-command.types.js";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BackgroundTasks, } from "../../util/background/background.js";
|
|
2
2
|
import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-scope.factory.js";
|
|
3
3
|
import { SimAwsMessageLog } from "../aws/message/sim-aws-message-log.js";
|
|
4
|
-
import {
|
|
4
|
+
import { simIamInRegion } from "../iam/authorize/sim-iam-region-auth-z.js";
|
|
5
5
|
import { simSnsNoDeliveryEndpoints } from "./delivery/sim-sns-no-delivery-endpoints.js";
|
|
6
6
|
import { SimSnsCommands } from "./command/sim-sns-commands.js";
|
|
7
7
|
import { SimSnsCfnResourceFactory } from "./cfn/sim-sns-cfn-resource-factory.js";
|
|
@@ -24,7 +24,8 @@ export class SimSns extends SimSnsSms {
|
|
|
24
24
|
sdkRouter;
|
|
25
25
|
cfnFactory;
|
|
26
26
|
constructor(properties = {}) {
|
|
27
|
-
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(),
|
|
27
|
+
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), background = new BackgroundTasks(), deliveryEndpoints = simSnsNoDeliveryEndpoints(), messageLog = new SimAwsMessageLog(), } = properties;
|
|
28
|
+
const iam = simIamInRegion(properties.iam, accountRegionScope.regionName);
|
|
28
29
|
const topics = new SimSnsTopicStore();
|
|
29
30
|
const subscriptions = new SimSnsSubscriptionStore();
|
|
30
31
|
super({
|
|
@@ -2,6 +2,7 @@ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-re
|
|
|
2
2
|
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
3
|
import type { SimSqs } from "../../sim-sqs.js";
|
|
4
4
|
import type { SimSqsQueue } from "../../queue/sim-sqs-queue.js";
|
|
5
|
+
import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
5
6
|
interface SimCfnSqsQueueCreatorProperties {
|
|
6
7
|
readonly sqs: SimSqs;
|
|
7
8
|
}
|
|
@@ -19,6 +20,6 @@ export declare class SimCfnSqsQueueCreator {
|
|
|
19
20
|
/**
|
|
20
21
|
* Create a queue from an AWS::SQS::Queue Resource.
|
|
21
22
|
*/
|
|
22
|
-
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimSqsQueue>;
|
|
23
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimSqsQueue>;
|
|
23
24
|
}
|
|
24
25
|
export {};
|
|
@@ -16,15 +16,13 @@ export class SimCfnSqsQueueCreator {
|
|
|
16
16
|
/**
|
|
17
17
|
* Create a queue from an AWS::SQS::Queue Resource.
|
|
18
18
|
*/
|
|
19
|
-
async create(resource, properties) {
|
|
19
|
+
async create(resource, properties, options) {
|
|
20
20
|
const queueProperties = new SimCfnSqsQueueProperties({
|
|
21
21
|
resource,
|
|
22
22
|
properties,
|
|
23
23
|
});
|
|
24
24
|
const name = queueProperties.name();
|
|
25
|
-
await this.sqs.createQueue({
|
|
26
|
-
input: { QueueName: name, Attributes: queueProperties.attributes() },
|
|
27
|
-
});
|
|
25
|
+
await this.sqs.createQueue({ input: { QueueName: name, Attributes: queueProperties.attributes() } }, options);
|
|
28
26
|
const queue = this.sqs.findQueue(name);
|
|
29
27
|
assertDefined(queue, `sim SQS queue ${name} after CloudFormation creation`);
|
|
30
28
|
return queue;
|
|
@@ -2,6 +2,7 @@ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-re
|
|
|
2
2
|
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
3
|
import type { SimSqsQueue } from "../../queue/sim-sqs-queue.js";
|
|
4
4
|
import type { SimSqs } from "../../sim-sqs.js";
|
|
5
|
+
import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
5
6
|
interface SimCfnSqsQueuePolicyCreatorProperties {
|
|
6
7
|
readonly sqs: SimSqs;
|
|
7
8
|
}
|
|
@@ -24,7 +25,7 @@ export declare class SimCfnSqsQueuePolicyCreator {
|
|
|
24
25
|
* queue policy has no existence of its own in SQS: it is the `Policy`
|
|
25
26
|
* attribute of the queues it names.
|
|
26
27
|
*/
|
|
27
|
-
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimSqsQueue>;
|
|
28
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimSqsQueue>;
|
|
28
29
|
/**
|
|
29
30
|
* Set the policy on one queue and hand back the queue it was set on.
|
|
30
31
|
*/
|
|
@@ -23,10 +23,10 @@ export class SimCfnSqsQueuePolicyCreator {
|
|
|
23
23
|
* queue policy has no existence of its own in SQS: it is the `Policy`
|
|
24
24
|
* attribute of the queues it names.
|
|
25
25
|
*/
|
|
26
|
-
async create(resource, properties) {
|
|
26
|
+
async create(resource, properties, options) {
|
|
27
27
|
const queueUrls = this.queueUrlsForResource(resource, properties);
|
|
28
28
|
const policy = jsonStringify(this.policyDocumentForResource(resource, properties));
|
|
29
|
-
const queues = await Promise.all(queueUrls.map(async (queueUrl) => this.policyApplied(queueUrl, policy)));
|
|
29
|
+
const queues = await Promise.all(queueUrls.map(async (queueUrl) => this.policyApplied(queueUrl, policy, options)));
|
|
30
30
|
const first = queues[0];
|
|
31
31
|
assertDefined(first, `sim SQS queue after CloudFormation queue policy creation for ${resource.logicalId}`);
|
|
32
32
|
return first;
|
|
@@ -34,13 +34,13 @@ export class SimCfnSqsQueuePolicyCreator {
|
|
|
34
34
|
/**
|
|
35
35
|
* Set the policy on one queue and hand back the queue it was set on.
|
|
36
36
|
*/
|
|
37
|
-
async policyApplied(queueUrl, policy) {
|
|
37
|
+
async policyApplied(queueUrl, policy, options) {
|
|
38
38
|
await this.sqs.setQueueAttributes({
|
|
39
39
|
input: {
|
|
40
40
|
QueueUrl: queueUrl,
|
|
41
41
|
Attributes: { [simSqsQueuePolicyAttributeName]: policy },
|
|
42
42
|
},
|
|
43
|
-
});
|
|
43
|
+
}, options);
|
|
44
44
|
const parts = SimSqsQueueUrl.parse(queueUrl);
|
|
45
45
|
assertDefined(parts, `queue URL ${queueUrl} SetQueueAttributes accepted`);
|
|
46
46
|
const queue = this.sqs.findQueue(parts.name);
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import type { SimCfnResource } from "../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
2
|
import type { SimCfnTemplateValueRecord } from "../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
3
|
import type { SimSqs } from "../sim-sqs.js";
|
|
4
|
+
import type { SimCfnResourceCallerOptions } from "../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
4
5
|
interface SimCfnSqsResourceDeleterProperties {
|
|
5
6
|
readonly sqs: SimSqs;
|
|
6
7
|
}
|
|
@@ -18,7 +19,7 @@ export declare class SimCfnSqsResourceDeleter {
|
|
|
18
19
|
/**
|
|
19
20
|
* Delete a simulated SQS resource created from a CloudFormation Resource.
|
|
20
21
|
*/
|
|
21
|
-
delete(resourceTypeName: string, resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<void>;
|
|
22
|
+
delete(resourceTypeName: string, resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<void>;
|
|
22
23
|
private deleteQueue;
|
|
23
24
|
/**
|
|
24
25
|
* Take the policy back off every queue the Resource named.
|
|
@@ -16,14 +16,14 @@ export class SimCfnSqsResourceDeleter {
|
|
|
16
16
|
/**
|
|
17
17
|
* Delete a simulated SQS resource created from a CloudFormation Resource.
|
|
18
18
|
*/
|
|
19
|
-
async delete(resourceTypeName, resource, properties) {
|
|
19
|
+
async delete(resourceTypeName, resource, properties, options) {
|
|
20
20
|
switch (resourceTypeName) {
|
|
21
21
|
case "Queue": {
|
|
22
|
-
await this.deleteQueue(resource);
|
|
22
|
+
await this.deleteQueue(resource, options);
|
|
23
23
|
return;
|
|
24
24
|
}
|
|
25
25
|
case "QueuePolicy": {
|
|
26
|
-
await this.clearQueuePolicy(properties);
|
|
26
|
+
await this.clearQueuePolicy(properties, options);
|
|
27
27
|
return;
|
|
28
28
|
}
|
|
29
29
|
default: {
|
|
@@ -31,10 +31,10 @@ export class SimCfnSqsResourceDeleter {
|
|
|
31
31
|
}
|
|
32
32
|
}
|
|
33
33
|
}
|
|
34
|
-
async deleteQueue(resource) {
|
|
34
|
+
async deleteQueue(resource, options) {
|
|
35
35
|
const queue = resource.simResource;
|
|
36
36
|
assertDefined(queue, `sim SQS queue for CloudFormation Resource ${resource.logicalId}`);
|
|
37
|
-
await this.sqs.deleteQueue({ input: { QueueUrl: queue.url } });
|
|
37
|
+
await this.sqs.deleteQueue({ input: { QueueUrl: queue.url } }, options);
|
|
38
38
|
}
|
|
39
39
|
/**
|
|
40
40
|
* Take the policy back off every queue the Resource named.
|
|
@@ -42,7 +42,7 @@ export class SimCfnSqsResourceDeleter {
|
|
|
42
42
|
* The Resource points at only the first of them, so the queues are read from
|
|
43
43
|
* the template the same way creation read them.
|
|
44
44
|
*/
|
|
45
|
-
async clearQueuePolicy(properties) {
|
|
45
|
+
async clearQueuePolicy(properties, options) {
|
|
46
46
|
const queues = properties["Queues"];
|
|
47
47
|
/* v8 ignore if -- creation refused the Resource without a Queues list */
|
|
48
48
|
if (!Array.isArray(queues)) {
|
|
@@ -55,6 +55,6 @@ export class SimCfnSqsResourceDeleter {
|
|
|
55
55
|
QueueUrl: queueUrl,
|
|
56
56
|
Attributes: { [simSqsQueuePolicyAttributeName]: "" },
|
|
57
57
|
},
|
|
58
|
-
})));
|
|
58
|
+
}, options)));
|
|
59
59
|
}
|
|
60
60
|
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { SimCfnSqsQueueCreator } from "./queue/sim-cfn-sqs-queue-creator.js";
|
|
2
2
|
import { SimCfnSqsQueuePolicyCreator } from "./queue-policy/sim-cfn-sqs-queue-policy-creator.js";
|
|
3
3
|
import { SimCfnSqsResourceDeleter } from "./sim-cfn-sqs-resource-deleter.js";
|
|
4
|
+
import { simCfnResourceCallerOptions } from "../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
4
5
|
/**
|
|
5
6
|
* CloudFormation Resource factory for simulated SQS resources.
|
|
6
7
|
*/
|
|
@@ -23,12 +24,13 @@ export class SimSqsCfnResourceFactory {
|
|
|
23
24
|
* quietly treated as deployed.
|
|
24
25
|
*/
|
|
25
26
|
async create(resourceTypeName, resource, context) {
|
|
27
|
+
const options = simCfnResourceCallerOptions(context.caller);
|
|
26
28
|
switch (resourceTypeName) {
|
|
27
29
|
case "Queue": {
|
|
28
|
-
return await this.queueCreator.create(resource, context.resolvedProperties ?? resource.properties);
|
|
30
|
+
return await this.queueCreator.create(resource, context.resolvedProperties ?? resource.properties, options);
|
|
29
31
|
}
|
|
30
32
|
case "QueuePolicy": {
|
|
31
|
-
return await this.queuePolicyCreator.create(resource, context.resolvedProperties ?? resource.properties);
|
|
33
|
+
return await this.queuePolicyCreator.create(resource, context.resolvedProperties ?? resource.properties, options);
|
|
32
34
|
}
|
|
33
35
|
default: {
|
|
34
36
|
throw new Error(`Unsupported sim SQS CloudFormation Resource ${resourceTypeName}`);
|
|
@@ -39,6 +41,6 @@ export class SimSqsCfnResourceFactory {
|
|
|
39
41
|
* Delete a simulated SQS resource created from a CloudFormation Resource.
|
|
40
42
|
*/
|
|
41
43
|
async delete(resourceTypeName, resource, context) {
|
|
42
|
-
await this.deleter.delete(resourceTypeName, resource, context.resolvedProperties ?? resource.properties);
|
|
44
|
+
await this.deleter.delete(resourceTypeName, resource, context.resolvedProperties ?? resource.properties, simCfnResourceCallerOptions(context.caller));
|
|
43
45
|
}
|
|
44
46
|
}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { type BackgroundScheduler } from "../../util/background/background.js";
|
|
2
2
|
import type { SimSdkCommandRouter } from "../../sdk/router/sim-sdk-command-router.type.js";
|
|
3
3
|
import type { SimAwsAccountRegionScope } from "../aws/sim-aws-account-region-scope.js";
|
|
4
|
-
import {
|
|
4
|
+
import type { SimIamInterServiceAuthZ } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
5
5
|
import type * as simSqsCommands from "./command/sim-sqs-command.types.js";
|
|
6
6
|
import type { SimSqsRequestOptions } from "./command/sim-sqs-request-options.js";
|
|
7
7
|
import { SimSqsCfnResourceFactory } from "./cfn/sim-sqs-cfn-resource-factory.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BackgroundTasks, } from "../../util/background/background.js";
|
|
2
2
|
import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-scope.factory.js";
|
|
3
|
-
import {
|
|
3
|
+
import { simIamInRegion } from "../iam/authorize/sim-iam-region-auth-z.js";
|
|
4
4
|
import { SimSqsAuthorizer } from "./command/authorize/sim-sqs-authorizer.js";
|
|
5
5
|
import { SimSqsChangeMessageVisibility } from "./command/message/sim-sqs-change-message-visibility.js";
|
|
6
6
|
import { SimSqsDeleteMessageCommands } from "./command/message/sim-sqs-delete-message-commands.js";
|
|
@@ -39,7 +39,8 @@ export class SimSqs {
|
|
|
39
39
|
sdkRouter = new SimSqsSdkCommandRouter(this);
|
|
40
40
|
cfnFactory = new SimSqsCfnResourceFactory({ sqs: this });
|
|
41
41
|
constructor(properties = {}) {
|
|
42
|
-
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(),
|
|
42
|
+
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), background = new BackgroundTasks(), } = properties;
|
|
43
|
+
const iam = simIamInRegion(properties.iam, accountRegionScope.regionName);
|
|
43
44
|
const access = new SimSqsQueueAccess({
|
|
44
45
|
queues: this.queues,
|
|
45
46
|
authorizer: new SimSqsAuthorizer({ iam }),
|
|
@@ -1,16 +1,26 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
1
2
|
import type { SimCfnDynamicReference, SimCfnDynamicReferenceResolution, SimCfnDynamicReferenceResolver } from "../../../cloudformation/template/dynamic/sim-cfn-dynamic-reference.type.js";
|
|
2
3
|
import type { SimSsm } from "../../sim-ssm.js";
|
|
3
4
|
interface SimCfnSsmDynamicReferenceResolverProperties {
|
|
4
5
|
readonly ssm: SimSsm;
|
|
6
|
+
/** The principal the deployment runs as, which the parameter is read as. */
|
|
7
|
+
readonly caller?: SimAwsCaller | undefined;
|
|
5
8
|
}
|
|
6
9
|
/**
|
|
7
10
|
* Answers `{{resolve:ssm:...}}` references from the simulated Parameter Store.
|
|
8
11
|
*
|
|
9
|
-
*
|
|
10
|
-
*
|
|
11
|
-
*
|
|
12
|
-
* the
|
|
13
|
-
*
|
|
12
|
+
* The parameter is read the way `GetParameter` reads it, as the principal the
|
|
13
|
+
* deployment names, so a caller that may not read it is denied here and the
|
|
14
|
+
* Resource fails. That is the failure a real deployment hits, where the read
|
|
15
|
+
* runs under the Stack's execution role. A deployment naming no principal
|
|
16
|
+
* reads as the Account root, which is Parameter Store's own default. Reading
|
|
17
|
+
* through the Command means waiting on it, so the answer comes back as a
|
|
18
|
+
* promise for the CloudFormation engine to wait on.
|
|
19
|
+
*
|
|
20
|
+
* A reference is read at the point the Resource holding it is created. Real
|
|
21
|
+
* CloudFormation makes no dependency out of a dynamic reference, so a
|
|
22
|
+
* parameter another Resource of the same Stack creates is only there in time
|
|
23
|
+
* if the template says `DependsOn`.
|
|
14
24
|
*
|
|
15
25
|
* Anything Parameter Store cannot answer becomes a stand-in value carrying a
|
|
16
26
|
* reason. A template naming parameters a test never created still deploys, and
|
|
@@ -18,14 +28,20 @@ interface SimCfnSsmDynamicReferenceResolverProperties {
|
|
|
18
28
|
*/
|
|
19
29
|
export declare class SimCfnSsmDynamicReferenceResolver implements SimCfnDynamicReferenceResolver {
|
|
20
30
|
private readonly ssm;
|
|
31
|
+
private readonly callerOptions;
|
|
21
32
|
constructor(properties: SimCfnSsmDynamicReferenceResolverProperties);
|
|
22
33
|
/**
|
|
23
34
|
* Resolve one reference to the parameter value it names.
|
|
24
35
|
*/
|
|
25
|
-
resolve(reference: SimCfnDynamicReference): SimCfnDynamicReferenceResolution
|
|
36
|
+
resolve(reference: SimCfnDynamicReference): SimCfnDynamicReferenceResolution | Promise<SimCfnDynamicReferenceResolution>;
|
|
26
37
|
/**
|
|
27
38
|
* Read the version the reference selects, or the current one.
|
|
28
39
|
*/
|
|
29
40
|
private parameterValue;
|
|
41
|
+
/**
|
|
42
|
+
* The value the read reports, unless it is a ciphertext this reference has
|
|
43
|
+
* no business handing to a Resource.
|
|
44
|
+
*/
|
|
45
|
+
private readValue;
|
|
30
46
|
}
|
|
31
47
|
export {};
|
|
@@ -1,14 +1,25 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
|
+
import { simCfnResourceCallerOptions, } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
3
|
+
import { SimSsmError } from "../../error/sim-ssm.error.js";
|
|
2
4
|
import { parseSimCfnSsmReferenceBody } from "./sim-cfn-ssm-reference-body.js";
|
|
3
5
|
import { simCfnSsmReferenceStandIn } from "./sim-cfn-ssm-reference-stand-in.js";
|
|
6
|
+
/** The parameter type a plain `ssm` reference leaves to `ssm-secure`. */
|
|
7
|
+
const secureString = "SecureString";
|
|
4
8
|
/**
|
|
5
9
|
* Answers `{{resolve:ssm:...}}` references from the simulated Parameter Store.
|
|
6
10
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
*
|
|
10
|
-
* the
|
|
11
|
-
*
|
|
11
|
+
* The parameter is read the way `GetParameter` reads it, as the principal the
|
|
12
|
+
* deployment names, so a caller that may not read it is denied here and the
|
|
13
|
+
* Resource fails. That is the failure a real deployment hits, where the read
|
|
14
|
+
* runs under the Stack's execution role. A deployment naming no principal
|
|
15
|
+
* reads as the Account root, which is Parameter Store's own default. Reading
|
|
16
|
+
* through the Command means waiting on it, so the answer comes back as a
|
|
17
|
+
* promise for the CloudFormation engine to wait on.
|
|
18
|
+
*
|
|
19
|
+
* A reference is read at the point the Resource holding it is created. Real
|
|
20
|
+
* CloudFormation makes no dependency out of a dynamic reference, so a
|
|
21
|
+
* parameter another Resource of the same Stack creates is only there in time
|
|
22
|
+
* if the template says `DependsOn`.
|
|
12
23
|
*
|
|
13
24
|
* Anything Parameter Store cannot answer becomes a stand-in value carrying a
|
|
14
25
|
* reason. A template naming parameters a test never created still deploys, and
|
|
@@ -16,8 +27,10 @@ import { simCfnSsmReferenceStandIn } from "./sim-cfn-ssm-reference-stand-in.js";
|
|
|
16
27
|
*/
|
|
17
28
|
export class SimCfnSsmDynamicReferenceResolver {
|
|
18
29
|
ssm;
|
|
30
|
+
callerOptions;
|
|
19
31
|
constructor(properties) {
|
|
20
32
|
this.ssm = properties.ssm;
|
|
33
|
+
this.callerOptions = simCfnResourceCallerOptions(properties.caller);
|
|
21
34
|
}
|
|
22
35
|
/**
|
|
23
36
|
* Resolve one reference to the parameter value it names.
|
|
@@ -28,33 +41,35 @@ export class SimCfnSsmDynamicReferenceResolver {
|
|
|
28
41
|
return simCfnSsmReferenceStandIn(reference, reference.body, `which is not the parameter name, optionally followed by an integer ` +
|
|
29
42
|
`version, that an ssm dynamic reference takes`);
|
|
30
43
|
}
|
|
31
|
-
|
|
32
|
-
const parameter = this.ssm.findParameter(name);
|
|
33
|
-
if (parameter === undefined) {
|
|
34
|
-
return simCfnSsmReferenceStandIn(reference, name, `and simulated Parameter Store holds no parameter '${name}'`);
|
|
35
|
-
}
|
|
36
|
-
if (parameter.type.value === "SecureString") {
|
|
37
|
-
return simCfnSsmReferenceStandIn(reference, name, `and '${name}' is a SecureString, which real CloudFormation reads ` +
|
|
38
|
-
`through an ssm-secure reference`);
|
|
39
|
-
}
|
|
40
|
-
return this.parameterValue(reference, parameter, name, version);
|
|
44
|
+
return this.parameterValue(reference, parsed.name, parsed.version);
|
|
41
45
|
}
|
|
42
46
|
/**
|
|
43
47
|
* Read the version the reference selects, or the current one.
|
|
44
48
|
*/
|
|
45
|
-
parameterValue(reference,
|
|
46
|
-
|
|
47
|
-
return { value: parameter.currentVersion.value.value };
|
|
48
|
-
}
|
|
49
|
+
async parameterValue(reference, name, version) {
|
|
50
|
+
const selector = version === undefined ? name : `${name}:${version}`;
|
|
49
51
|
try {
|
|
50
|
-
|
|
52
|
+
const read = await this.ssm.getParameter({ input: { Name: selector } }, this.callerOptions);
|
|
53
|
+
assertDefined(read.Parameter, `the parameter read for '${name}'`);
|
|
54
|
+
return this.readValue(reference, name, read.Parameter);
|
|
51
55
|
}
|
|
52
56
|
catch (error) {
|
|
53
|
-
|
|
54
|
-
if (!(error instanceof SimSsmParameterVersionNotFound)) {
|
|
57
|
+
if (!(error instanceof SimSsmError)) {
|
|
55
58
|
throw error;
|
|
56
59
|
}
|
|
57
|
-
return simCfnSsmReferenceStandIn(reference, name, `and
|
|
60
|
+
return simCfnSsmReferenceStandIn(reference, name, `and simulated Parameter Store could not read it (${error.message})`);
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* The value the read reports, unless it is a ciphertext this reference has
|
|
65
|
+
* no business handing to a Resource.
|
|
66
|
+
*/
|
|
67
|
+
readValue(reference, name, parameter) {
|
|
68
|
+
if (parameter.Type === secureString) {
|
|
69
|
+
return simCfnSsmReferenceStandIn(reference, name, `and '${name}' is a SecureString, which real CloudFormation reads ` +
|
|
70
|
+
`through an ssm-secure reference`);
|
|
58
71
|
}
|
|
72
|
+
assertDefined(parameter.Value, `the value read for '${name}'`);
|
|
73
|
+
return { value: parameter.Value };
|
|
59
74
|
}
|
|
60
75
|
}
|
|
@@ -1,18 +1,22 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
1
2
|
import type { SimCfnDynamicReference, SimCfnDynamicReferenceResolution, SimCfnDynamicReferenceResolver, SimCfnDynamicReferenceSite } from "../../../cloudformation/template/dynamic/sim-cfn-dynamic-reference.type.js";
|
|
2
3
|
import type { SimSsm } from "../../sim-ssm.js";
|
|
3
4
|
interface SimCfnSsmSecureDynamicReferenceResolverProperties {
|
|
4
5
|
readonly ssm: SimSsm;
|
|
6
|
+
/** The principal the deployment runs as, which the parameter is read as. */
|
|
7
|
+
readonly caller?: SimAwsCaller | undefined;
|
|
5
8
|
}
|
|
6
9
|
/**
|
|
7
10
|
* Answers `{{resolve:ssm-secure:...}}` references from the simulated Parameter
|
|
8
11
|
* Store.
|
|
9
12
|
*
|
|
10
13
|
* The parameter is read the way `GetParameter` with `WithDecryption` reads it,
|
|
11
|
-
* as the
|
|
12
|
-
* the simulated KMS key it was written under. A caller the key does
|
|
13
|
-
* is denied here, which is the failure a real deployment hits.
|
|
14
|
-
*
|
|
15
|
-
*
|
|
14
|
+
* as the principal the deployment names, so the value comes back decrypted
|
|
15
|
+
* through the simulated KMS key it was written under. A caller the key does
|
|
16
|
+
* not admit is denied here, which is the failure a real deployment hits. A
|
|
17
|
+
* deployment naming no principal reads as the Account root, which is Parameter
|
|
18
|
+
* Store's own default. Decrypting cannot be done synchronously, so the answer
|
|
19
|
+
* comes back as a promise for the CloudFormation engine to wait on.
|
|
16
20
|
*
|
|
17
21
|
* A reference the template had no business writing fails the Resource, which
|
|
18
22
|
* `sim-cfn-ssm-secure-refusals.ts` holds the rules for. Everything else
|
|
@@ -22,6 +26,7 @@ interface SimCfnSsmSecureDynamicReferenceResolverProperties {
|
|
|
22
26
|
*/
|
|
23
27
|
export declare class SimCfnSsmSecureDynamicReferenceResolver implements SimCfnDynamicReferenceResolver {
|
|
24
28
|
private readonly ssm;
|
|
29
|
+
private readonly callerOptions;
|
|
25
30
|
constructor(properties: SimCfnSsmSecureDynamicReferenceResolverProperties);
|
|
26
31
|
/**
|
|
27
32
|
* Resolve one reference to the decrypted parameter value it names.
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
|
+
import { simCfnResourceCallerOptions, } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
2
3
|
import { SimSsmError } from "../../error/sim-ssm.error.js";
|
|
3
4
|
import { parseSimCfnSsmReferenceBody } from "./sim-cfn-ssm-reference-body.js";
|
|
4
5
|
import { simCfnSsmReferenceStandIn } from "./sim-cfn-ssm-reference-stand-in.js";
|
|
@@ -8,11 +9,12 @@ import { requireSecureStringParameter, requireSsmSecureReferenceProperty, } from
|
|
|
8
9
|
* Store.
|
|
9
10
|
*
|
|
10
11
|
* The parameter is read the way `GetParameter` with `WithDecryption` reads it,
|
|
11
|
-
* as the
|
|
12
|
-
* the simulated KMS key it was written under. A caller the key does
|
|
13
|
-
* is denied here, which is the failure a real deployment hits.
|
|
14
|
-
*
|
|
15
|
-
*
|
|
12
|
+
* as the principal the deployment names, so the value comes back decrypted
|
|
13
|
+
* through the simulated KMS key it was written under. A caller the key does
|
|
14
|
+
* not admit is denied here, which is the failure a real deployment hits. A
|
|
15
|
+
* deployment naming no principal reads as the Account root, which is Parameter
|
|
16
|
+
* Store's own default. Decrypting cannot be done synchronously, so the answer
|
|
17
|
+
* comes back as a promise for the CloudFormation engine to wait on.
|
|
16
18
|
*
|
|
17
19
|
* A reference the template had no business writing fails the Resource, which
|
|
18
20
|
* `sim-cfn-ssm-secure-refusals.ts` holds the rules for. Everything else
|
|
@@ -22,8 +24,10 @@ import { requireSecureStringParameter, requireSsmSecureReferenceProperty, } from
|
|
|
22
24
|
*/
|
|
23
25
|
export class SimCfnSsmSecureDynamicReferenceResolver {
|
|
24
26
|
ssm;
|
|
27
|
+
callerOptions;
|
|
25
28
|
constructor(properties) {
|
|
26
29
|
this.ssm = properties.ssm;
|
|
30
|
+
this.callerOptions = simCfnResourceCallerOptions(properties.caller);
|
|
27
31
|
}
|
|
28
32
|
/**
|
|
29
33
|
* Resolve one reference to the decrypted parameter value it names.
|
|
@@ -47,9 +51,7 @@ export class SimCfnSsmSecureDynamicReferenceResolver {
|
|
|
47
51
|
async decrypted(reference, name, version) {
|
|
48
52
|
const selector = version === undefined ? name : `${name}:${version}`;
|
|
49
53
|
try {
|
|
50
|
-
const read = await this.ssm.getParameter({
|
|
51
|
-
input: { Name: selector, WithDecryption: true },
|
|
52
|
-
});
|
|
54
|
+
const read = await this.ssm.getParameter({ input: { Name: selector, WithDecryption: true } }, this.callerOptions);
|
|
53
55
|
const parameter = read.Parameter;
|
|
54
56
|
assertDefined(parameter, `the parameter read for '${name}'`);
|
|
55
57
|
requireSecureStringParameter(name, parameter);
|
|
@@ -2,6 +2,7 @@ import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-re
|
|
|
2
2
|
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
3
|
import type { SimSsmParameter } from "../../parameter/sim-ssm-parameter.js";
|
|
4
4
|
import type { SimSsm } from "../../sim-ssm.js";
|
|
5
|
+
import type { SimCfnResourceCallerOptions } from "../../../cloudformation/resource/caller/sim-cfn-resource-caller-options.js";
|
|
5
6
|
interface SimCfnSsmParameterCreatorProperties {
|
|
6
7
|
readonly ssm: SimSsm;
|
|
7
8
|
}
|
|
@@ -25,6 +26,6 @@ export declare class SimCfnSsmParameterCreator {
|
|
|
25
26
|
/**
|
|
26
27
|
* Create a parameter from an AWS::SSM::Parameter Resource.
|
|
27
28
|
*/
|
|
28
|
-
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimSsmParameter>;
|
|
29
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord, options?: SimCfnResourceCallerOptions): Promise<SimSsmParameter>;
|
|
29
30
|
}
|
|
30
31
|
export {};
|
|
@@ -22,7 +22,7 @@ export class SimCfnSsmParameterCreator {
|
|
|
22
22
|
/**
|
|
23
23
|
* Create a parameter from an AWS::SSM::Parameter Resource.
|
|
24
24
|
*/
|
|
25
|
-
async create(resource, properties) {
|
|
25
|
+
async create(resource, properties, options) {
|
|
26
26
|
const parameterProperties = new SimCfnSsmParameterProperties({
|
|
27
27
|
resource,
|
|
28
28
|
properties,
|
|
@@ -40,7 +40,7 @@ export class SimCfnSsmParameterCreator {
|
|
|
40
40
|
Policies: parameterProperties.policies(),
|
|
41
41
|
Tags: parameterProperties.tags(),
|
|
42
42
|
},
|
|
43
|
-
});
|
|
43
|
+
}, options);
|
|
44
44
|
const parameter = this.ssm.findParameter(name);
|
|
45
45
|
assertDefined(parameter, `sim SSM parameter ${name} after CloudFormation creation`);
|
|
46
46
|
return parameter;
|