@kensio/yulin 0.37.0 → 0.39.0
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/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
- package/dist/sdk/router/resolve-sim-sdk-command-router.js +6 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
- package/dist/serve/controller/sim-service-controller.d.ts +13 -0
- package/dist/serve/controller/sim-service-controller.d.ts.map +1 -1
- package/dist/serve/controller/sim-service-controller.js.map +1 -1
- package/dist/serve/http/url/sim-aws-local-url.d.ts.map +1 -1
- package/dist/serve/http/url/sim-aws-local-url.js +5 -1
- package/dist/serve/http/url/sim-aws-local-url.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.d.ts +31 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.d.ts.map +1 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.js +31 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.js.map +1 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +18 -21
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.js +36 -29
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +10 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.js +12 -0
- package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
- package/dist/service/aws/sim-aws-account.d.ts +5 -0
- package/dist/service/aws/sim-aws-account.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account.js +6 -0
- package/dist/service/aws/sim-aws-account.js.map +1 -1
- package/dist/service/aws/sim-aws-region.d.ts +5 -0
- package/dist/service/aws/sim-aws-region.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-region.js +6 -0
- package/dist/service/aws/sim-aws-region.js.map +1 -1
- package/dist/service/aws/sim-aws-request-authentication.d.ts +35 -0
- package/dist/service/aws/sim-aws-request-authentication.d.ts.map +1 -0
- package/dist/service/aws/sim-aws-request-authentication.js +32 -0
- package/dist/service/aws/sim-aws-request-authentication.js.map +1 -0
- package/dist/service/aws/sim-aws.d.ts +12 -21
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +21 -26
- package/dist/service/aws/sim-aws.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +21 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.js +17 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.d.ts +26 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.js +26 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.js +19 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.d.ts +25 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.js +34 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js +19 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.d.ts +7 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.js +14 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.d.ts +24 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.js +30 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts +11 -2
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +24 -71
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependencies.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependencies.js +1 -1
- package/dist/service/cloudformation/resource/dependency/sim-cfn-resource-dependencies.js.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js +6 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js.map +1 -1
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js +1 -1
- package/dist/service/cloudfront/controller/dependency/sim-cf-controller-dependency.js.map +1 -1
- package/dist/service/cloudfront/router/sim-cloud-front-distro-router.d.ts.map +1 -1
- package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js +2 -1
- package/dist/service/cloudfront/router/sim-cloud-front-distro-router.js.map +1 -1
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts +56 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts.map +1 -1
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js +66 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js.map +1 -1
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts +7 -1
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts.map +1 -1
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js +11 -1
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js.map +1 -1
- package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.d.ts +17 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.d.ts.map +1 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.js +24 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-allow-requirement.js.map +1 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts +10 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts.map +1 -1
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js +3 -1
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js.map +1 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.d.ts +6 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.d.ts.map +1 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.js +25 -16
- package/dist/service/iam/authorize/match/sim-iam-policy-principal-matcher.js.map +1 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.d.ts +2 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.d.ts.map +1 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.js +2 -1
- package/dist/service/iam/authorize/match/sim-iam-policy-statement-matcher.js.map +1 -1
- package/dist/service/iam/authorize/match/sim-iam-principal-match.d.ts +39 -0
- package/dist/service/iam/authorize/match/sim-iam-principal-match.d.ts.map +1 -0
- package/dist/service/iam/authorize/match/sim-iam-principal-match.js +55 -0
- package/dist/service/iam/authorize/match/sim-iam-principal-match.js.map +1 -0
- package/dist/service/iam/authorize/sim-iam-decision.d.ts.map +1 -1
- package/dist/service/iam/authorize/sim-iam-decision.js +3 -2
- package/dist/service/iam/authorize/sim-iam-decision.js.map +1 -1
- package/dist/service/iam/index.d.ts +1 -0
- package/dist/service/iam/index.d.ts.map +1 -1
- package/dist/service/iam/index.js +1 -0
- package/dist/service/iam/index.js.map +1 -1
- package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts +21 -5
- package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts.map +1 -1
- package/dist/service/iam/request/sim-aws-request-caller-resolver.js +15 -9
- package/dist/service/iam/request/sim-aws-request-caller-resolver.js.map +1 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts +3 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts.map +1 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js +6 -4
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js.map +1 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts +34 -14
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts.map +1 -1
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js +56 -29
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js.map +1 -1
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts +13 -1
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts.map +1 -1
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js +14 -0
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js.map +1 -1
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.d.ts +25 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.d.ts.map +1 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.js +41 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-credential.js.map +1 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.d.ts +27 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.d.ts.map +1 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.js +41 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-parameters.js.map +1 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.d.ts +39 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.d.ts.map +1 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.js +59 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-query.js.map +1 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.d.ts +30 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.d.ts.map +1 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.js +64 -0
- package/dist/service/iam/sigv4/presign/sim-iam-sigv4-presigned-window.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts +2 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.js.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts +22 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js +49 -7
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts +9 -2
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js +5 -5
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.d.ts +16 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.js +2 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-statement.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts +12 -3
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js +9 -5
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts +20 -4
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts.map +1 -1
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js +52 -6
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js.map +1 -1
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.d.ts +25 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.d.ts.map +1 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.js +36 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.js.map +1 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.d.ts +32 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.d.ts.map +1 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.js +35 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.js.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.d.ts +36 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.d.ts.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.js +53 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.js.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.d.ts +57 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.d.ts.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.js +74 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.js.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.d.ts +49 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.d.ts.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.js +72 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.js.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.d.ts +56 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.d.ts.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.js +95 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.js.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts +23 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js +34 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js.map +1 -0
- package/dist/service/kms/command/alias/alias.command.d.ts +43 -0
- package/dist/service/kms/command/alias/alias.command.d.ts.map +1 -0
- package/dist/service/kms/command/alias/alias.command.js +2 -0
- package/dist/service/kms/command/alias/alias.command.js.map +1 -0
- package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts +34 -0
- package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts.map +1 -0
- package/dist/service/kms/command/alias/sim-kms-alias-commands.js +56 -0
- package/dist/service/kms/command/alias/sim-kms-alias-commands.js.map +1 -0
- package/dist/service/kms/command/authorize/sim-kms-authorizer.d.ts +38 -0
- package/dist/service/kms/command/authorize/sim-kms-authorizer.d.ts.map +1 -0
- package/dist/service/kms/command/authorize/sim-kms-authorizer.js +58 -0
- package/dist/service/kms/command/authorize/sim-kms-authorizer.js.map +1 -0
- package/dist/service/kms/command/crypto/crypto.command.d.ts +68 -0
- package/dist/service/kms/command/crypto/crypto.command.d.ts.map +1 -0
- package/dist/service/kms/command/crypto/crypto.command.js +2 -0
- package/dist/service/kms/command/crypto/crypto.command.js.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.d.ts +40 -0
- package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.d.ts.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.js +58 -0
- package/dist/service/kms/command/crypto/sim-kms-ciphertext-key.js.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.d.ts +38 -0
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.d.ts.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.js +74 -0
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.js.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-data-key-spec.d.ts +16 -0
- package/dist/service/kms/command/crypto/sim-kms-data-key-spec.d.ts.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-data-key-spec.js +50 -0
- package/dist/service/kms/command/crypto/sim-kms-data-key-spec.js.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.d.ts +31 -0
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.d.ts.map +1 -0
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.js +35 -0
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.js.map +1 -0
- package/dist/service/kms/command/key/key.command.d.ts +159 -0
- package/dist/service/kms/command/key/key.command.d.ts.map +1 -0
- package/dist/service/kms/command/key/key.command.js +2 -0
- package/dist/service/kms/command/key/key.command.js.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-commands.d.ts +41 -0
- package/dist/service/kms/command/key/sim-kms-key-commands.d.ts.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-commands.js +45 -0
- package/dist/service/kms/command/key/sim-kms-key-commands.js.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.d.ts +48 -0
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.d.ts.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.js +67 -0
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.js.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.d.ts +39 -0
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.d.ts.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.js +57 -0
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.js.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-type.d.ts +14 -0
- package/dist/service/kms/command/key/sim-kms-key-type.d.ts.map +1 -0
- package/dist/service/kms/command/key/sim-kms-key-type.js +31 -0
- package/dist/service/kms/command/key/sim-kms-key-type.js.map +1 -0
- package/dist/service/kms/command/key/sim-kms-list-keys.d.ts +29 -0
- package/dist/service/kms/command/key/sim-kms-list-keys.d.ts.map +1 -0
- package/dist/service/kms/command/key/sim-kms-list-keys.js +31 -0
- package/dist/service/kms/command/key/sim-kms-list-keys.js.map +1 -0
- package/dist/service/kms/command/key/sim-kms-pending-window.d.ts +17 -0
- package/dist/service/kms/command/key/sim-kms-pending-window.d.ts.map +1 -0
- package/dist/service/kms/command/key/sim-kms-pending-window.js +37 -0
- package/dist/service/kms/command/key/sim-kms-pending-window.js.map +1 -0
- package/dist/service/kms/command/sim-kms-command.types.d.ts +10 -0
- package/dist/service/kms/command/sim-kms-command.types.d.ts.map +1 -0
- package/dist/service/kms/command/sim-kms-command.types.js +2 -0
- package/dist/service/kms/command/sim-kms-command.types.js.map +1 -0
- package/dist/service/kms/error/sim-kms.error.d.ts +88 -0
- package/dist/service/kms/error/sim-kms.error.d.ts.map +1 -0
- package/dist/service/kms/error/sim-kms.error.js +101 -0
- package/dist/service/kms/error/sim-kms.error.js.map +1 -0
- package/dist/service/kms/index.d.ts +8 -0
- package/dist/service/kms/index.d.ts.map +1 -0
- package/dist/service/kms/index.js +6 -0
- package/dist/service/kms/index.js.map +1 -0
- package/dist/service/kms/key/sim-kms-alias.d.ts +45 -0
- package/dist/service/kms/key/sim-kms-alias.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-alias.js +59 -0
- package/dist/service/kms/key/sim-kms-alias.js.map +1 -0
- package/dist/service/kms/key/sim-kms-ciphertext-blob.d.ts +43 -0
- package/dist/service/kms/key/sim-kms-ciphertext-blob.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-ciphertext-blob.js +89 -0
- package/dist/service/kms/key/sim-kms-ciphertext-blob.js.map +1 -0
- package/dist/service/kms/key/sim-kms-encryption-context.d.ts +34 -0
- package/dist/service/kms/key/sim-kms-encryption-context.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-encryption-context.js +39 -0
- package/dist/service/kms/key/sim-kms-encryption-context.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-factory.d.ts +36 -0
- package/dist/service/kms/key/sim-kms-key-factory.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key-factory.js +47 -0
- package/dist/service/kms/key/sim-kms-key-factory.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-identifier.d.ts +44 -0
- package/dist/service/kms/key/sim-kms-key-identifier.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key-identifier.js +81 -0
- package/dist/service/kms/key/sim-kms-key-identifier.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-lifecycle.d.ts +71 -0
- package/dist/service/kms/key/sim-kms-key-lifecycle.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key-lifecycle.js +106 -0
- package/dist/service/kms/key/sim-kms-key-lifecycle.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-material.d.ts +36 -0
- package/dist/service/kms/key/sim-kms-key-material.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key-material.js +74 -0
- package/dist/service/kms/key/sim-kms-key-material.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-metadata.d.ts +45 -0
- package/dist/service/kms/key/sim-kms-key-metadata.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key-metadata.js +44 -0
- package/dist/service/kms/key/sim-kms-key-metadata.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-policy.d.ts +45 -0
- package/dist/service/kms/key/sim-kms-key-policy.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key-policy.js +69 -0
- package/dist/service/kms/key/sim-kms-key-policy.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-store.d.ts +66 -0
- package/dist/service/kms/key/sim-kms-key-store.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key-store.js +121 -0
- package/dist/service/kms/key/sim-kms-key-store.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key.d.ts +88 -0
- package/dist/service/kms/key/sim-kms-key.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-key.js +106 -0
- package/dist/service/kms/key/sim-kms-key.js.map +1 -0
- package/dist/service/kms/key/sim-kms-policy-document.d.ts +30 -0
- package/dist/service/kms/key/sim-kms-policy-document.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-policy-document.js +54 -0
- package/dist/service/kms/key/sim-kms-policy-document.js.map +1 -0
- package/dist/service/kms/sdk/sim-kms-sdk-command-router.d.ts +18 -0
- package/dist/service/kms/sdk/sim-kms-sdk-command-router.d.ts.map +1 -0
- package/dist/service/kms/sdk/sim-kms-sdk-command-router.js +80 -0
- package/dist/service/kms/sdk/sim-kms-sdk-command-router.js.map +1 -0
- package/dist/service/kms/sim-kms.d.ts +120 -0
- package/dist/service/kms/sim-kms.d.ts.map +1 -0
- package/dist/service/kms/sim-kms.js +205 -0
- package/dist/service/kms/sim-kms.js.map +1 -0
- package/dist/service/lambda/command/create-function/create-function.handler.d.ts.map +1 -1
- package/dist/service/lambda/command/create-function/create-function.handler.js +3 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-code-resolver.d.ts +6 -0
- package/dist/service/lambda/function/code/sim-lambda-code-resolver.d.ts.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-code-resolver.js +1 -0
- package/dist/service/lambda/function/code/sim-lambda-code-resolver.js.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts +15 -0
- package/dist/service/lambda/function/code/sim-lambda-executable-code.d.ts.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js +5 -0
- package/dist/service/lambda/function/code/sim-lambda-executable-code.js.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.d.ts +3 -0
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.d.ts.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.js +3 -0
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code-factory.js.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts +11 -0
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.d.ts.map +1 -1
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js +7 -2
- package/dist/service/lambda/function/code/sim-lambda-vm-zip-code.js.map +1 -1
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts +6 -5
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.d.ts.map +1 -1
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js +10 -5
- package/dist/service/lambda/function/code/vm/sim-lambda-vm-context.js.map +1 -1
- package/dist/service/lambda/function/invoke/sim-lambda-process-clock.d.ts +53 -0
- package/dist/service/lambda/function/invoke/sim-lambda-process-clock.d.ts.map +1 -0
- package/dist/service/lambda/function/invoke/sim-lambda-process-clock.js +101 -0
- package/dist/service/lambda/function/invoke/sim-lambda-process-clock.js.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function.d.ts +8 -0
- package/dist/service/lambda/function/sim-lambda-function.d.ts.map +1 -1
- package/dist/service/lambda/function/sim-lambda-function.js +15 -1
- package/dist/service/lambda/function/sim-lambda-function.js.map +1 -1
- package/dist/service/lambda/serve/sim-lambda-url-router.js +1 -1
- package/dist/service/lambda/serve/sim-lambda-url-router.js.map +1 -1
- package/dist/service/route53/resolve/sim-r53-service-target-resolver.d.ts +14 -0
- package/dist/service/route53/resolve/sim-r53-service-target-resolver.d.ts.map +1 -1
- package/dist/service/route53/resolve/sim-r53-service-target-resolver.js +38 -0
- package/dist/service/route53/resolve/sim-r53-service-target-resolver.js.map +1 -1
- package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.d.ts +7 -0
- package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.d.ts.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.js +73 -0
- package/dist/service/s3/bucket/public-access/sim-s3-pinning-condition.js.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.d.ts +61 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.d.ts.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.js +57 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-access-block.js.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.d.ts +19 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.d.ts.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.js +28 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy-guard.js.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy.d.ts +18 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy.d.ts.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy.js +35 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-policy.js.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-principal.d.ts +11 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-principal.d.ts.map +1 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-principal.js +34 -0
- package/dist/service/s3/bucket/public-access/sim-s3-public-principal.js.map +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket-arn.d.ts +9 -0
- package/dist/service/s3/bucket/sim-s3-bucket-arn.d.ts.map +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket-arn.js +10 -0
- package/dist/service/s3/bucket/sim-s3-bucket-arn.js.map +1 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts +25 -0
- package/dist/service/s3/bucket/sim-s3-bucket.d.ts.map +1 -1
- package/dist/service/s3/bucket/sim-s3-bucket.js +34 -1
- package/dist/service/s3/bucket/sim-s3-bucket.js.map +1 -1
- package/dist/service/s3/bucket/sim-s3-endpoint-url.d.ts +16 -0
- package/dist/service/s3/bucket/sim-s3-endpoint-url.d.ts.map +1 -0
- package/dist/service/s3/bucket/sim-s3-endpoint-url.js +19 -0
- package/dist/service/s3/bucket/sim-s3-endpoint-url.js.map +1 -0
- package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.d.ts +13 -0
- package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.d.ts.map +1 -0
- package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.js +36 -0
- package/dist/service/s3/bucket/website/sim-s3-public-website.fixture.js.map +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts +27 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.d.ts.map +1 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js +92 -0
- package/dist/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.js.map +1 -0
- package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.d.ts +32 -0
- package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.d.ts.map +1 -0
- package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.js +55 -0
- package/dist/service/s3/cfn/bucket-policy/sim-cfn-s3-bucket-policy-creator.js.map +1 -0
- package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts +2 -4
- package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.d.ts.map +1 -1
- package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js +10 -61
- package/dist/service/s3/cfn/sim-cfn-s3-resource-factory.js.map +1 -1
- package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.d.ts +11 -0
- package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.d.ts.map +1 -0
- package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.js +22 -0
- package/dist/service/s3/command/authorize/sim-s3-bucket-resource-policies.js.map +1 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.d.ts +23 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.d.ts.map +1 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.js +36 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy-authorizer.js.map +1 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.d.ts +20 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.d.ts.map +1 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.js +2 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.command.js.map +1 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.d.ts +32 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.d.ts.map +1 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.js +37 -0
- package/dist/service/s3/command/delete-bucket-policy/delete-bucket-policy.handler.js.map +1 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.d.ts +20 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.d.ts.map +1 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.js +2 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.command.js.map +1 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.d.ts +30 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.d.ts.map +1 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.js +35 -0
- package/dist/service/s3/command/delete-public-access-block/delete-public-access-block.handler.js.map +1 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.d.ts +20 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.d.ts.map +1 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.js +33 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy-authorizer.js.map +1 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.d.ts +24 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.d.ts.map +1 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.js +2 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.command.js.map +1 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.d.ts +29 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.d.ts.map +1 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.js +40 -0
- package/dist/service/s3/command/get-bucket-policy/get-bucket-policy.handler.js.map +1 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.d.ts +22 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.d.ts.map +1 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.js +2 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.command.js.map +1 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.d.ts +32 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.d.ts.map +1 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.js +39 -0
- package/dist/service/s3/command/get-public-access-block/get-public-access-block.handler.js.map +1 -0
- package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.d.ts +31 -0
- package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.d.ts.map +1 -0
- package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.js +48 -0
- package/dist/service/s3/command/public-access-block/sim-s3-public-access-block-authorizer.js.map +1 -0
- package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.d.ts +1 -0
- package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.d.ts.map +1 -1
- package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.js +7 -6
- package/dist/service/s3/command/put-bucket-policy/put-bucket-policy.handler.js.map +1 -1
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.d.ts +22 -0
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.d.ts.map +1 -0
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.js +2 -0
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.command.js.map +1 -0
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.d.ts +33 -0
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.d.ts.map +1 -0
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.js +40 -0
- package/dist/service/s3/command/put-public-access-block/put-public-access-block.handler.js.map +1 -0
- package/dist/service/s3/command/require-sim-s3-bucket.d.ts +10 -0
- package/dist/service/s3/command/require-sim-s3-bucket.d.ts.map +1 -0
- package/dist/service/s3/command/require-sim-s3-bucket.js +16 -0
- package/dist/service/s3/command/require-sim-s3-bucket.js.map +1 -0
- package/dist/service/s3/command/sim-s3-command-handlers.d.ts +91 -0
- package/dist/service/s3/command/sim-s3-command-handlers.d.ts.map +1 -0
- package/dist/service/s3/command/sim-s3-command-handlers.js +115 -0
- package/dist/service/s3/command/sim-s3-command-handlers.js.map +1 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts +19 -0
- package/dist/service/s3/command/sim-s3-command.types.d.ts.map +1 -0
- package/dist/service/s3/command/sim-s3-command.types.js +8 -0
- package/dist/service/s3/command/sim-s3-command.types.js.map +1 -0
- package/dist/service/s3/error/sim-s3-checksum.error.d.ts +28 -0
- package/dist/service/s3/error/sim-s3-checksum.error.d.ts.map +1 -0
- package/dist/service/s3/error/sim-s3-checksum.error.js +32 -0
- package/dist/service/s3/error/sim-s3-checksum.error.js.map +1 -0
- package/dist/service/s3/error/sim-s3.error.d.ts +20 -0
- package/dist/service/s3/error/sim-s3.error.d.ts.map +1 -1
- package/dist/service/s3/error/sim-s3.error.js +24 -0
- package/dist/service/s3/error/sim-s3.error.js.map +1 -1
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.d.ts.map +1 -1
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js +20 -0
- package/dist/service/s3/sdk/sim-s3-sdk-command-router.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-bucket-locator.d.ts +40 -0
- package/dist/service/s3/serve/sim-s3-bucket-locator.d.ts.map +1 -0
- package/dist/service/s3/serve/sim-s3-bucket-locator.js +59 -0
- package/dist/service/s3/serve/sim-s3-bucket-locator.js.map +1 -0
- package/dist/service/s3/serve/sim-s3-controller.d.ts +7 -0
- package/dist/service/s3/serve/sim-s3-controller.d.ts.map +1 -1
- package/dist/service/s3/serve/sim-s3-controller.js +14 -2
- package/dist/service/s3/serve/sim-s3-controller.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-get-object-controller.d.ts +40 -6
- package/dist/service/s3/serve/sim-s3-get-object-controller.d.ts.map +1 -1
- package/dist/service/s3/serve/sim-s3-get-object-controller.js +80 -49
- package/dist/service/s3/serve/sim-s3-get-object-controller.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-object-address.d.ts +42 -0
- package/dist/service/s3/serve/sim-s3-object-address.d.ts.map +1 -0
- package/dist/service/s3/serve/sim-s3-object-address.js +66 -0
- package/dist/service/s3/serve/sim-s3-object-address.js.map +1 -0
- package/dist/service/s3/serve/sim-s3-request-router.d.ts +18 -13
- package/dist/service/s3/serve/sim-s3-request-router.d.ts.map +1 -1
- package/dist/service/s3/serve/sim-s3-request-router.js +72 -48
- package/dist/service/s3/serve/sim-s3-request-router.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-rest-controller.d.ts +36 -0
- package/dist/service/s3/serve/sim-s3-rest-controller.d.ts.map +1 -0
- package/dist/service/s3/serve/sim-s3-rest-controller.js +92 -0
- package/dist/service/s3/serve/sim-s3-rest-controller.js.map +1 -0
- package/dist/service/s3/serve/sim-s3-rest-error-response.d.ts +28 -0
- package/dist/service/s3/serve/sim-s3-rest-error-response.d.ts.map +1 -0
- package/dist/service/s3/serve/sim-s3-rest-error-response.js +63 -0
- package/dist/service/s3/serve/sim-s3-rest-error-response.js.map +1 -0
- package/dist/service/s3/serve/sim-s3-rest-refusal.d.ts +7 -0
- package/dist/service/s3/serve/sim-s3-rest-refusal.d.ts.map +1 -0
- package/dist/service/s3/serve/sim-s3-rest-refusal.js +18 -0
- package/dist/service/s3/serve/sim-s3-rest-refusal.js.map +1 -0
- package/dist/service/s3/serve/sim-s3-route.d.ts +40 -0
- package/dist/service/s3/serve/sim-s3-route.d.ts.map +1 -0
- package/dist/service/s3/serve/sim-s3-route.js +7 -0
- package/dist/service/s3/serve/sim-s3-route.js.map +1 -0
- package/dist/service/s3/serve/sim-s3-upload-checksum.d.ts +27 -0
- package/dist/service/s3/serve/sim-s3-upload-checksum.d.ts.map +1 -0
- package/dist/service/s3/serve/sim-s3-upload-checksum.js +86 -0
- package/dist/service/s3/serve/sim-s3-upload-checksum.js.map +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.d.ts +51 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.d.ts.map +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js +75 -0
- package/dist/service/s3/serve/website/sim-s3-website-object-loader.js.map +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts +18 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.d.ts.map +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.js +28 -0
- package/dist/service/s3/serve/website/sim-s3-website-object.js.map +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-responses.d.ts +27 -0
- package/dist/service/s3/serve/website/sim-s3-website-responses.d.ts.map +1 -0
- package/dist/service/s3/serve/website/sim-s3-website-responses.js +44 -0
- package/dist/service/s3/serve/website/sim-s3-website-responses.js.map +1 -0
- package/dist/service/s3/sim-s3.d.ts +34 -9
- package/dist/service/s3/sim-s3.d.ts.map +1 -1
- package/dist/service/s3/sim-s3.js +65 -55
- package/dist/service/s3/sim-s3.js.map +1 -1
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.d.ts +22 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.js +47 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.js.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.d.ts +24 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.js +38 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.js.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.d.ts +54 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.js +82 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.js.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.d.ts +58 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.js +122 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.js.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts +24 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js +31 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js.map +1 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.d.ts +29 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.js +47 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/secret.command.d.ts +144 -0
- package/dist/service/secretsmanager/command/secret/secret.command.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/secret.command.js +2 -0
- package/dist/service/secretsmanager/command/secret/secret.command.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.d.ts +44 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.js +61 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.d.ts +44 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.js +61 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.d.ts +48 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.js +62 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.d.ts +26 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.js +38 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.d.ts +29 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.js +55 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.d.ts +46 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.js +67 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.js.map +1 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.d.ts +6 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.js +2 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.js.map +1 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.d.ts +39 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.js +61 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.js.map +1 -0
- package/dist/service/secretsmanager/command/value/value.command.d.ts +47 -0
- package/dist/service/secretsmanager/command/value/value.command.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/value/value.command.js +2 -0
- package/dist/service/secretsmanager/command/value/value.command.js.map +1 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.d.ts +55 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.d.ts.map +1 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.js +60 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.js.map +1 -0
- package/dist/service/secretsmanager/index.d.ts +7 -0
- package/dist/service/secretsmanager/index.d.ts.map +1 -0
- package/dist/service/secretsmanager/index.js +7 -0
- package/dist/service/secretsmanager/index.js.map +1 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.d.ts +19 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.d.ts.map +1 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.js +57 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.d.ts +37 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.js +70 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.d.ts +53 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.js +65 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.d.ts +40 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.js +66 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.d.ts +31 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.js +52 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.d.ts +35 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.js +64 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.d.ts +33 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.js +60 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.d.ts +42 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.js +64 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.d.ts +30 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.js +32 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.d.ts +31 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.js +35 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.d.ts +27 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.js +48 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.d.ts +23 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.js +50 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.d.ts +53 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.js +92 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.d.ts +47 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.js +81 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.d.ts +56 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.js +62 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.d.ts +47 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.js +83 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.d.ts +75 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.js +86 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.d.ts +28 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.js +43 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.d.ts +42 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.js +60 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.js.map +1 -0
- package/dist/service/secretsmanager/sim-secrets-manager.d.ts +85 -0
- package/dist/service/secretsmanager/sim-secrets-manager.d.ts.map +1 -0
- package/dist/service/secretsmanager/sim-secrets-manager.js +156 -0
- package/dist/service/secretsmanager/sim-secrets-manager.js.map +1 -0
- package/dist/util/clock/sim-clock-date.d.ts +20 -0
- package/dist/util/clock/sim-clock-date.d.ts.map +1 -0
- package/dist/util/clock/sim-clock-date.js +43 -0
- package/dist/util/clock/sim-clock-date.js.map +1 -0
- package/package.json +22 -11
|
@@ -1,3 +1,5 @@
|
|
|
1
|
+
import { SimIamSigV4PayloadDeclaration } from "./canonical/sim-iam-sigv4-payload-hash.js";
|
|
2
|
+
import { SimIamSigV4PresignedQuery } from "./presign/sim-iam-sigv4-presigned-query.js";
|
|
1
3
|
import { SimIamSigV4Authorization } from "./sim-iam-sigv4-authorization.js";
|
|
2
4
|
import { simIamSigV4CheckExpectedScope } from "./sim-iam-sigv4-expected-scope.js";
|
|
3
5
|
import { simIamSigV4CheckSignature } from "./sim-iam-sigv4-signature-check.js";
|
|
@@ -10,10 +12,16 @@ import { simIamSigV4SigningCredential } from "./sim-iam-sigv4-signing-credential
|
|
|
10
12
|
* principal made the request, which is exactly the question the IAM
|
|
11
13
|
* authorization already built has no way to ask of an HTTP request.
|
|
12
14
|
*
|
|
13
|
-
*
|
|
14
|
-
*
|
|
15
|
-
*
|
|
16
|
-
*
|
|
15
|
+
* A signature arrives in one of two forms, an `Authorization` header or the
|
|
16
|
+
* query string of a presigned URL, and both are verified here. The work either
|
|
17
|
+
* way is the same canonical request against the same signing key; only where
|
|
18
|
+
* the claims are read from, and whether a lifetime is stated, differ.
|
|
19
|
+
*
|
|
20
|
+
* Verifying a header-signed request needs no clock. The signing date is an
|
|
21
|
+
* input to the signing key and comes from the request, so a correctly signed
|
|
22
|
+
* request verifies whenever it arrives. Only the credentials behind it can go
|
|
23
|
+
* stale, and that is judged in simulated time by the registry. A presigned URL
|
|
24
|
+
* is the exception, because it states its own expiry.
|
|
17
25
|
*/
|
|
18
26
|
export class SimIamSigV4Verifier {
|
|
19
27
|
credentials;
|
|
@@ -27,19 +35,57 @@ export class SimIamSigV4Verifier {
|
|
|
27
35
|
* with when the request cannot be attributed to a registered access key.
|
|
28
36
|
*/
|
|
29
37
|
verify(signedRequest, options = {}) {
|
|
38
|
+
if (SimIamSigV4PresignedQuery.carriedBy(signedRequest.url)) {
|
|
39
|
+
return this.verifyPresigned(signedRequest, options);
|
|
40
|
+
}
|
|
41
|
+
return this.verifyHeaderSigned(signedRequest, options);
|
|
42
|
+
}
|
|
43
|
+
verifyHeaderSigned(signedRequest, options) {
|
|
30
44
|
const authorization = SimIamSigV4Authorization.parse(signedRequest.headers.get("authorization"));
|
|
31
45
|
// Checked before anything else can fail on it, so a signature made for the
|
|
32
46
|
// wrong endpoint says so rather than looking like a bad secret.
|
|
33
47
|
simIamSigV4CheckExpectedScope(options.expectedScope, authorization.scope);
|
|
34
48
|
const amzDate = simIamSigV4RequestDate(signedRequest.headers, authorization.scope);
|
|
35
|
-
const { signingKey, identity } = simIamSigV4SigningCredential(
|
|
49
|
+
const { signingKey, identity } = simIamSigV4SigningCredential({
|
|
50
|
+
credentials: this.credentials,
|
|
51
|
+
statement: authorization,
|
|
52
|
+
sessionToken: signedRequest.headers.get("x-amz-security-token") ?? undefined,
|
|
53
|
+
now: options.now,
|
|
54
|
+
});
|
|
36
55
|
simIamSigV4CheckSignature({
|
|
37
56
|
signedRequest,
|
|
38
|
-
authorization,
|
|
57
|
+
statement: authorization,
|
|
39
58
|
signingKey,
|
|
40
59
|
amzDate,
|
|
41
60
|
});
|
|
42
61
|
return identity;
|
|
43
62
|
}
|
|
63
|
+
/**
|
|
64
|
+
* Verify a presigned URL.
|
|
65
|
+
*
|
|
66
|
+
* Expiry is checked before the signature, because an expired URL is the
|
|
67
|
+
* likeliest reason a presigned request fails and "this expired" is a far
|
|
68
|
+
* more useful thing to be told than "this signature does not match". The
|
|
69
|
+
* expiry is signed, so a URL cannot claim a longer life than it was given.
|
|
70
|
+
*/
|
|
71
|
+
verifyPresigned(signedRequest, options) {
|
|
72
|
+
const presigned = SimIamSigV4PresignedQuery.parse(signedRequest.url);
|
|
73
|
+
simIamSigV4CheckExpectedScope(options.expectedScope, presigned.scope);
|
|
74
|
+
presigned.checkNotExpired(options.now ?? new Date());
|
|
75
|
+
const { signingKey, identity } = simIamSigV4SigningCredential({
|
|
76
|
+
credentials: this.credentials,
|
|
77
|
+
statement: presigned,
|
|
78
|
+
sessionToken: presigned.sessionToken,
|
|
79
|
+
now: options.now,
|
|
80
|
+
});
|
|
81
|
+
simIamSigV4CheckSignature({
|
|
82
|
+
signedRequest,
|
|
83
|
+
statement: presigned,
|
|
84
|
+
signingKey,
|
|
85
|
+
amzDate: presigned.amzDate,
|
|
86
|
+
payload: SimIamSigV4PayloadDeclaration.fromPresignedQuery(signedRequest.url),
|
|
87
|
+
});
|
|
88
|
+
return identity;
|
|
89
|
+
}
|
|
44
90
|
}
|
|
45
91
|
//# sourceMappingURL=sim-iam-sigv4-verifier.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-iam-sigv4-verifier.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-verifier.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAOtF
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-verifier.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-verifier.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,6BAA6B,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,EAAE,yBAAyB,EAAE,MAAM,4CAA4C,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAOtF;;;;;;;;;;;;;;;;;GAiBG;AACH,MAAM,OAAO,mBAAmB;IACb,WAAW,CAAkC;IAE9D,YAAY,UAAyC;QACnD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,MAAM,CACJ,aAAuC,EACvC,OAAO,GAA6B,EAAE;QAEtC,IAAI,yBAAyB,CAAC,SAAS,CAAC,aAAa,CAAC,GAAG,CAAC,EAAE,CAAC;YAC3D,OAAO,IAAI,CAAC,eAAe,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;QACtD,CAAC;QAED,OAAO,IAAI,CAAC,kBAAkB,CAAC,aAAa,EAAE,OAAO,CAAC,CAAC;IACzD,CAAC;IAEO,kBAAkB,CACxB,aAAuC,EACvC,OAAiC;QAEjC,MAAM,aAAa,GAAG,wBAAwB,CAAC,KAAK,CAClD,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAC3C,CAAC;QAEF,2EAA2E;QAC3E,gEAAgE;QAChE,6BAA6B,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;QAE1E,MAAM,OAAO,GAAG,sBAAsB,CACpC,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,KAAK,CACpB,CAAC;QACF,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,4BAA4B,CAAC;YAC5D,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,aAAa;YACxB,YAAY,EACV,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,SAAS;YAChE,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC,CAAC;QAEH,yBAAyB,CAAC;YACxB,aAAa;YACb,SAAS,EAAE,aAAa;YACxB,UAAU;YACV,OAAO;SACR,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;IAED;;;;;;;OAOG;IACK,eAAe,CACrB,aAAuC,EACvC,OAAiC;QAEjC,MAAM,SAAS,GAAG,yBAAyB,CAAC,KAAK,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC;QAErE,6BAA6B,CAAC,OAAO,CAAC,aAAa,EAAE,SAAS,CAAC,KAAK,CAAC,CAAC;QACtE,SAAS,CAAC,eAAe,CAAC,OAAO,CAAC,GAAG,IAAI,IAAI,IAAI,EAAE,CAAC,CAAC;QAErD,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,4BAA4B,CAAC;YAC5D,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,SAAS,EAAE,SAAS;YACpB,YAAY,EAAE,SAAS,CAAC,YAAY;YACpC,GAAG,EAAE,OAAO,CAAC,GAAG;SACjB,CAAC,CAAC;QAEH,yBAAyB,CAAC;YACxB,aAAa;YACb,SAAS,EAAE,SAAS;YACpB,UAAU;YACV,OAAO,EAAE,SAAS,CAAC,OAAO;YAC1B,OAAO,EAAE,6BAA6B,CAAC,kBAAkB,CACvD,aAAa,CAAC,GAAG,CAClB;SACF,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
import type { SimKmsAlias } from "../../key/sim-kms-alias.js";
|
|
4
|
+
import type { SimKms } from "../../sim-kms.js";
|
|
5
|
+
interface SimCfnKmsAliasCreatorProperties {
|
|
6
|
+
readonly kms: SimKms;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Creates simulated KMS aliases from AWS::KMS::Alias Resources.
|
|
10
|
+
*
|
|
11
|
+
* The alias goes through the ordinary CreateAlias command, so a template gets
|
|
12
|
+
* the same name validation an SDK caller would: the `alias/` prefix is
|
|
13
|
+
* required, the `alias/aws/` prefix is reserved, and a name already in use is
|
|
14
|
+
* refused.
|
|
15
|
+
*/
|
|
16
|
+
export declare class SimCfnKmsAliasCreator {
|
|
17
|
+
private readonly kms;
|
|
18
|
+
constructor(properties: SimCfnKmsAliasCreatorProperties);
|
|
19
|
+
/**
|
|
20
|
+
* Create an alias from an AWS::KMS::Alias Resource.
|
|
21
|
+
*/
|
|
22
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimKmsAlias>;
|
|
23
|
+
}
|
|
24
|
+
export {};
|
|
25
|
+
//# sourceMappingURL=sim-cfn-kms-alias-creator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-alias-creator.d.ts","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/alias/sim-cfn-kms-alias-creator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAC9D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG/C,UAAU,+BAA+B;IACvC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,YAAY,UAAU,EAAE,+BAA+B,EAEtD;IAED;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,WAAW,CAAC,CAqBtB;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
|
+
import { SimCfnKmsAliasProperties } from "./sim-cfn-kms-alias-properties.js";
|
|
3
|
+
/**
|
|
4
|
+
* Creates simulated KMS aliases from AWS::KMS::Alias Resources.
|
|
5
|
+
*
|
|
6
|
+
* The alias goes through the ordinary CreateAlias command, so a template gets
|
|
7
|
+
* the same name validation an SDK caller would: the `alias/` prefix is
|
|
8
|
+
* required, the `alias/aws/` prefix is reserved, and a name already in use is
|
|
9
|
+
* refused.
|
|
10
|
+
*/
|
|
11
|
+
export class SimCfnKmsAliasCreator {
|
|
12
|
+
kms;
|
|
13
|
+
constructor(properties) {
|
|
14
|
+
this.kms = properties.kms;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Create an alias from an AWS::KMS::Alias Resource.
|
|
18
|
+
*/
|
|
19
|
+
async create(resource, properties) {
|
|
20
|
+
const aliasProperties = new SimCfnKmsAliasProperties({
|
|
21
|
+
resource,
|
|
22
|
+
properties,
|
|
23
|
+
});
|
|
24
|
+
const aliasName = aliasProperties.aliasName();
|
|
25
|
+
await this.kms.createAlias({
|
|
26
|
+
input: {
|
|
27
|
+
AliasName: aliasName,
|
|
28
|
+
TargetKeyId: aliasProperties.targetKeyId(),
|
|
29
|
+
},
|
|
30
|
+
});
|
|
31
|
+
const alias = this.kms.findAlias(aliasName);
|
|
32
|
+
assertDefined(alias, `sim KMS alias ${aliasName} after CloudFormation creation`);
|
|
33
|
+
return alias;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=sim-cfn-kms-alias-creator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-alias-creator.js","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/alias/sim-cfn-kms-alias-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAKvE,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAM7E;;;;;;;GAOG;AACH,MAAM,OAAO,qBAAqB;IACf,GAAG,CAAS;IAE7B,YAAY,UAA2C;QACrD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,QAAwB,EACxB,UAAqC;QAErC,MAAM,eAAe,GAAG,IAAI,wBAAwB,CAAC;YACnD,QAAQ;YACR,UAAU;SACX,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,eAAe,CAAC,SAAS,EAAE,CAAC;QAE9C,MAAM,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;YACzB,KAAK,EAAE;gBACL,SAAS,EAAE,SAAS;gBACpB,WAAW,EAAE,eAAe,CAAC,WAAW,EAAE;aAC3C;SACF,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;QAC5C,aAAa,CACX,KAAK,EACL,iBAAiB,SAAS,gCAAgC,CAC3D,CAAC;QAEF,OAAO,KAAK,CAAC;IACf,CAAC;CACF"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
interface SimCfnKmsAliasPropertiesProperties {
|
|
4
|
+
readonly resource: SimCfnResource;
|
|
5
|
+
readonly properties: SimCfnTemplateValueRecord;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Reads AWS::KMS::Alias CloudFormation properties into the shape the alias
|
|
9
|
+
* creator needs.
|
|
10
|
+
*
|
|
11
|
+
* Both properties are required, as they are on real CloudFormation: an alias
|
|
12
|
+
* with no name names nothing, and an alias with no target points at nothing.
|
|
13
|
+
*/
|
|
14
|
+
export declare class SimCfnKmsAliasProperties {
|
|
15
|
+
private readonly resource;
|
|
16
|
+
private readonly properties;
|
|
17
|
+
private readonly propertyParser;
|
|
18
|
+
constructor(properties: SimCfnKmsAliasPropertiesProperties);
|
|
19
|
+
/**
|
|
20
|
+
* The alias name, including its `alias/` prefix.
|
|
21
|
+
*/
|
|
22
|
+
aliasName(): string;
|
|
23
|
+
/**
|
|
24
|
+
* The key the alias points at, in any of the forms KMS accepts as a KeyId.
|
|
25
|
+
*
|
|
26
|
+
* A template usually gets here through `!Ref` on its AWS::KMS::Key, which
|
|
27
|
+
* resolves to that key's key ID.
|
|
28
|
+
*/
|
|
29
|
+
targetKeyId(): string;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=sim-cfn-kms-alias-properties.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-alias-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/alias/sim-cfn-kms-alias-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAGlH,UAAU,kCAAkC;IAC1C,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;CAChD;AAED;;;;;;GAMG;AACH,qBAAa,wBAAwB;IACnC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4B;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAE5B;IAEH,YAAY,UAAU,EAAE,kCAAkC,EAGzD;IAED;;OAEG;IACH,SAAS,IAAI,MAAM,CAMlB;IAED;;;;;OAKG;IACH,WAAW,IAAI,MAAM,CAMpB;CACF"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { SimCfnKmsPropertyParser } from "../sim-cfn-kms-property-parser.js";
|
|
2
|
+
/**
|
|
3
|
+
* Reads AWS::KMS::Alias CloudFormation properties into the shape the alias
|
|
4
|
+
* creator needs.
|
|
5
|
+
*
|
|
6
|
+
* Both properties are required, as they are on real CloudFormation: an alias
|
|
7
|
+
* with no name names nothing, and an alias with no target points at nothing.
|
|
8
|
+
*/
|
|
9
|
+
export class SimCfnKmsAliasProperties {
|
|
10
|
+
resource;
|
|
11
|
+
properties;
|
|
12
|
+
propertyParser = new SimCfnKmsPropertyParser({
|
|
13
|
+
resourceType: "AWS::KMS::Alias",
|
|
14
|
+
});
|
|
15
|
+
constructor(properties) {
|
|
16
|
+
this.resource = properties.resource;
|
|
17
|
+
this.properties = properties.properties;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* The alias name, including its `alias/` prefix.
|
|
21
|
+
*/
|
|
22
|
+
aliasName() {
|
|
23
|
+
return this.propertyParser.requiredString(this.resource, this.properties["AliasName"], "AliasName");
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* The key the alias points at, in any of the forms KMS accepts as a KeyId.
|
|
27
|
+
*
|
|
28
|
+
* A template usually gets here through `!Ref` on its AWS::KMS::Key, which
|
|
29
|
+
* resolves to that key's key ID.
|
|
30
|
+
*/
|
|
31
|
+
targetKeyId() {
|
|
32
|
+
return this.propertyParser.requiredString(this.resource, this.properties["TargetKeyId"], "TargetKeyId");
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=sim-cfn-kms-alias-properties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-alias-properties.js","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/alias/sim-cfn-kms-alias-properties.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAO5E;;;;;;GAMG;AACH,MAAM,OAAO,wBAAwB;IAClB,QAAQ,CAAiB;IACzB,UAAU,CAA4B;IACtC,cAAc,GAAG,IAAI,uBAAuB,CAAC;QAC5D,YAAY,EAAE,iBAAiB;KAChC,CAAC,CAAC;IAEH,YAAY,UAA8C;QACxD,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CACvC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAC5B,WAAW,CACZ,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CACvC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAC9B,aAAa,CACd,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
import type { SimKmsKey } from "../../key/sim-kms-key.js";
|
|
4
|
+
import type { SimKms } from "../../sim-kms.js";
|
|
5
|
+
interface SimCfnKmsKeyCreatorProperties {
|
|
6
|
+
readonly kms: SimKms;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Creates simulated KMS keys from AWS::KMS::Key Resources.
|
|
10
|
+
*
|
|
11
|
+
* The key is created through the ordinary CreateKey command rather than
|
|
12
|
+
* constructed directly, so a key a template deployed is the same thing an SDK
|
|
13
|
+
* caller would have got: real key material, the same key policy handling, and
|
|
14
|
+
* the same refusal of key types this simulation does not model.
|
|
15
|
+
*/
|
|
16
|
+
export declare class SimCfnKmsKeyCreator {
|
|
17
|
+
private readonly kms;
|
|
18
|
+
constructor(properties: SimCfnKmsKeyCreatorProperties);
|
|
19
|
+
/**
|
|
20
|
+
* Create a key from an AWS::KMS::Key Resource.
|
|
21
|
+
*/
|
|
22
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimKmsKey>;
|
|
23
|
+
/**
|
|
24
|
+
* Apply `Enabled: false`, which asks for a key that is disabled the moment
|
|
25
|
+
* it exists.
|
|
26
|
+
*
|
|
27
|
+
* CreateKey has no input for that, as the real API has none either: real
|
|
28
|
+
* CloudFormation makes the key and then disables it. The key model is
|
|
29
|
+
* disabled directly rather than through DisableKey, because CloudFormation
|
|
30
|
+
* is acting as the key's creator here and has no caller identity of its own
|
|
31
|
+
* to authorize.
|
|
32
|
+
*/
|
|
33
|
+
private applyEnabled;
|
|
34
|
+
}
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=sim-cfn-kms-key-creator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-key-creator.d.ts","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/key/sim-cfn-kms-key-creator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAC1D,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG/C,UAAU,6BAA6B;IACrC,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;GAOG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,YAAY,UAAU,EAAE,6BAA6B,EAEpD;IAED;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,SAAS,CAAC,CAyBpB;IAED;;;;;;;;;OASG;IACH,OAAO,CAAC,YAAY;CAKrB"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
|
+
import { SimCfnKmsKeyProperties } from "./sim-cfn-kms-key-properties.js";
|
|
3
|
+
/**
|
|
4
|
+
* Creates simulated KMS keys from AWS::KMS::Key Resources.
|
|
5
|
+
*
|
|
6
|
+
* The key is created through the ordinary CreateKey command rather than
|
|
7
|
+
* constructed directly, so a key a template deployed is the same thing an SDK
|
|
8
|
+
* caller would have got: real key material, the same key policy handling, and
|
|
9
|
+
* the same refusal of key types this simulation does not model.
|
|
10
|
+
*/
|
|
11
|
+
export class SimCfnKmsKeyCreator {
|
|
12
|
+
kms;
|
|
13
|
+
constructor(properties) {
|
|
14
|
+
this.kms = properties.kms;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Create a key from an AWS::KMS::Key Resource.
|
|
18
|
+
*/
|
|
19
|
+
async create(resource, properties) {
|
|
20
|
+
const keyProperties = new SimCfnKmsKeyProperties({ resource, properties });
|
|
21
|
+
const created = await this.kms.createKey({
|
|
22
|
+
input: {
|
|
23
|
+
Description: keyProperties.description(),
|
|
24
|
+
Policy: keyProperties.policy(),
|
|
25
|
+
KeySpec: keyProperties.keySpec(),
|
|
26
|
+
KeyUsage: keyProperties.keyUsage(),
|
|
27
|
+
Origin: keyProperties.origin(),
|
|
28
|
+
},
|
|
29
|
+
});
|
|
30
|
+
const keyId = created.KeyMetadata?.KeyId;
|
|
31
|
+
assertDefined(keyId, `sim KMS key ID after CloudFormation creation for ${resource.logicalId}`);
|
|
32
|
+
const key = this.kms.findKey(keyId);
|
|
33
|
+
assertDefined(key, `sim KMS key ${keyId} after CloudFormation creation`);
|
|
34
|
+
this.applyEnabled(key, keyProperties.enabled());
|
|
35
|
+
return key;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Apply `Enabled: false`, which asks for a key that is disabled the moment
|
|
39
|
+
* it exists.
|
|
40
|
+
*
|
|
41
|
+
* CreateKey has no input for that, as the real API has none either: real
|
|
42
|
+
* CloudFormation makes the key and then disables it. The key model is
|
|
43
|
+
* disabled directly rather than through DisableKey, because CloudFormation
|
|
44
|
+
* is acting as the key's creator here and has no caller identity of its own
|
|
45
|
+
* to authorize.
|
|
46
|
+
*/
|
|
47
|
+
applyEnabled(key, enabled) {
|
|
48
|
+
if (!enabled) {
|
|
49
|
+
key.disable();
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=sim-cfn-kms-key-creator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-key-creator.js","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/key/sim-cfn-kms-key-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAKvE,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAMzE;;;;;;;GAOG;AACH,MAAM,OAAO,mBAAmB;IACb,GAAG,CAAS;IAE7B,YAAY,UAAyC;QACnD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,QAAwB,EACxB,UAAqC;QAErC,MAAM,aAAa,GAAG,IAAI,sBAAsB,CAAC,EAAE,QAAQ,EAAE,UAAU,EAAE,CAAC,CAAC;QAE3E,MAAM,OAAO,GAAG,MAAM,IAAI,CAAC,GAAG,CAAC,SAAS,CAAC;YACvC,KAAK,EAAE;gBACL,WAAW,EAAE,aAAa,CAAC,WAAW,EAAE;gBACxC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE;gBAC9B,OAAO,EAAE,aAAa,CAAC,OAAO,EAAE;gBAChC,QAAQ,EAAE,aAAa,CAAC,QAAQ,EAAE;gBAClC,MAAM,EAAE,aAAa,CAAC,MAAM,EAAE;aAC/B;SACF,CAAC,CAAC;QAEH,MAAM,KAAK,GAAG,OAAO,CAAC,WAAW,EAAE,KAAK,CAAC;QACzC,aAAa,CACX,KAAK,EACL,oDAAoD,QAAQ,CAAC,SAAS,EAAE,CACzE,CAAC;QAEF,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;QACpC,aAAa,CAAC,GAAG,EAAE,eAAe,KAAK,gCAAgC,CAAC,CAAC;QAEzE,IAAI,CAAC,YAAY,CAAC,GAAG,EAAE,aAAa,CAAC,OAAO,EAAE,CAAC,CAAC;QAEhD,OAAO,GAAG,CAAC;IACb,CAAC;IAED;;;;;;;;;OASG;IACK,YAAY,CAAC,GAAc,EAAE,OAAgB;QACnD,IAAI,CAAC,OAAO,EAAE,CAAC;YACb,GAAG,CAAC,OAAO,EAAE,CAAC;QAChB,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
interface SimCfnKmsKeyPropertiesProperties {
|
|
4
|
+
readonly resource: SimCfnResource;
|
|
5
|
+
readonly properties: SimCfnTemplateValueRecord;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Reads AWS::KMS::Key CloudFormation properties into the shape the key creator
|
|
9
|
+
* needs.
|
|
10
|
+
*
|
|
11
|
+
* Keeping the property-shape rules here leaves the creator to do nothing but
|
|
12
|
+
* call CreateKey, and puts the refusals for unmodelled key behaviour in one
|
|
13
|
+
* place beside the properties they belong to.
|
|
14
|
+
*
|
|
15
|
+
* Those refusals run on construction rather than when a property is read, so
|
|
16
|
+
* a Resource asking for something unmodelled cannot get as far as creating a
|
|
17
|
+
* key that would then be wrong.
|
|
18
|
+
*/
|
|
19
|
+
export declare class SimCfnKmsKeyProperties {
|
|
20
|
+
private readonly resource;
|
|
21
|
+
private readonly properties;
|
|
22
|
+
private readonly propertyParser;
|
|
23
|
+
constructor(properties: SimCfnKmsKeyPropertiesProperties);
|
|
24
|
+
/**
|
|
25
|
+
* The key Description.
|
|
26
|
+
*/
|
|
27
|
+
description(): string | undefined;
|
|
28
|
+
/**
|
|
29
|
+
* The key policy, as the JSON document string CreateKey takes.
|
|
30
|
+
*
|
|
31
|
+
* Omitting it gets the default root-delegation policy KMS applies, which is
|
|
32
|
+
* the same thing CreateKey does with no Policy.
|
|
33
|
+
*/
|
|
34
|
+
policy(): string | undefined;
|
|
35
|
+
/**
|
|
36
|
+
* The requested key spec, passed through so CreateKey refuses the specs this
|
|
37
|
+
* simulation does not create.
|
|
38
|
+
*/
|
|
39
|
+
keySpec(): string | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* The requested key usage, passed through to CreateKey in the same way.
|
|
42
|
+
*/
|
|
43
|
+
keyUsage(): string | undefined;
|
|
44
|
+
/**
|
|
45
|
+
* The requested key material origin, passed through to CreateKey in the same
|
|
46
|
+
* way.
|
|
47
|
+
*/
|
|
48
|
+
origin(): string | undefined;
|
|
49
|
+
/**
|
|
50
|
+
* Whether the deployed key is enabled. A key is enabled unless the template
|
|
51
|
+
* says otherwise, as on real CloudFormation.
|
|
52
|
+
*/
|
|
53
|
+
enabled(): boolean;
|
|
54
|
+
private string;
|
|
55
|
+
}
|
|
56
|
+
export {};
|
|
57
|
+
//# sourceMappingURL=sim-cfn-kms-key-properties.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-key-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/key/sim-cfn-kms-key-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAI1E,UAAU,gCAAgC;IACxC,QAAQ,CAAC,QAAQ,EAAE,cAAc,CAAC;IAClC,QAAQ,CAAC,UAAU,EAAE,yBAAyB,CAAC;CAChD;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,QAAQ,CAAiB;IAC1C,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA4B;IACvD,OAAO,CAAC,QAAQ,CAAC,cAAc,CAE5B;IAEH,YAAY,UAAU,EAAE,gCAAgC,EAOvD;IAED;;OAEG;IACH,WAAW,IAAI,MAAM,GAAG,SAAS,CAEhC;IAED;;;;;OAKG;IACH,MAAM,IAAI,MAAM,GAAG,SAAS,CAM3B;IAED;;;OAGG;IACH,OAAO,IAAI,MAAM,GAAG,SAAS,CAE5B;IAED;;OAEG;IACH,QAAQ,IAAI,MAAM,GAAG,SAAS,CAE7B;IAED;;;OAGG;IACH,MAAM,IAAI,MAAM,GAAG,SAAS,CAE3B;IAED;;;OAGG;IACH,OAAO,IAAI,OAAO,CAQjB;IAED,OAAO,CAAC,MAAM;CAMf"}
|
|
@@ -0,0 +1,74 @@
|
|
|
1
|
+
import { SimCfnKmsPropertyParser } from "../sim-cfn-kms-property-parser.js";
|
|
2
|
+
import { SimCfnKmsUnsimulatedKeyProperties } from "./sim-cfn-kms-unsimulated-key-properties.js";
|
|
3
|
+
/**
|
|
4
|
+
* Reads AWS::KMS::Key CloudFormation properties into the shape the key creator
|
|
5
|
+
* needs.
|
|
6
|
+
*
|
|
7
|
+
* Keeping the property-shape rules here leaves the creator to do nothing but
|
|
8
|
+
* call CreateKey, and puts the refusals for unmodelled key behaviour in one
|
|
9
|
+
* place beside the properties they belong to.
|
|
10
|
+
*
|
|
11
|
+
* Those refusals run on construction rather than when a property is read, so
|
|
12
|
+
* a Resource asking for something unmodelled cannot get as far as creating a
|
|
13
|
+
* key that would then be wrong.
|
|
14
|
+
*/
|
|
15
|
+
export class SimCfnKmsKeyProperties {
|
|
16
|
+
resource;
|
|
17
|
+
properties;
|
|
18
|
+
propertyParser = new SimCfnKmsPropertyParser({
|
|
19
|
+
resourceType: "AWS::KMS::Key",
|
|
20
|
+
});
|
|
21
|
+
constructor(properties) {
|
|
22
|
+
this.resource = properties.resource;
|
|
23
|
+
this.properties = properties.properties;
|
|
24
|
+
new SimCfnKmsUnsimulatedKeyProperties({
|
|
25
|
+
propertyParser: this.propertyParser,
|
|
26
|
+
}).require(this.resource, this.properties);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* The key Description.
|
|
30
|
+
*/
|
|
31
|
+
description() {
|
|
32
|
+
return this.string(this.properties["Description"], "Description");
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* The key policy, as the JSON document string CreateKey takes.
|
|
36
|
+
*
|
|
37
|
+
* Omitting it gets the default root-delegation policy KMS applies, which is
|
|
38
|
+
* the same thing CreateKey does with no Policy.
|
|
39
|
+
*/
|
|
40
|
+
policy() {
|
|
41
|
+
return this.propertyParser.optionalPolicyJson(this.resource, this.properties["KeyPolicy"], "KeyPolicy");
|
|
42
|
+
}
|
|
43
|
+
/**
|
|
44
|
+
* The requested key spec, passed through so CreateKey refuses the specs this
|
|
45
|
+
* simulation does not create.
|
|
46
|
+
*/
|
|
47
|
+
keySpec() {
|
|
48
|
+
return this.string(this.properties["KeySpec"], "KeySpec");
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The requested key usage, passed through to CreateKey in the same way.
|
|
52
|
+
*/
|
|
53
|
+
keyUsage() {
|
|
54
|
+
return this.string(this.properties["KeyUsage"], "KeyUsage");
|
|
55
|
+
}
|
|
56
|
+
/**
|
|
57
|
+
* The requested key material origin, passed through to CreateKey in the same
|
|
58
|
+
* way.
|
|
59
|
+
*/
|
|
60
|
+
origin() {
|
|
61
|
+
return this.string(this.properties["Origin"], "Origin");
|
|
62
|
+
}
|
|
63
|
+
/**
|
|
64
|
+
* Whether the deployed key is enabled. A key is enabled unless the template
|
|
65
|
+
* says otherwise, as on real CloudFormation.
|
|
66
|
+
*/
|
|
67
|
+
enabled() {
|
|
68
|
+
return (this.propertyParser.optionalBoolean(this.resource, this.properties["Enabled"], "Enabled") ?? true);
|
|
69
|
+
}
|
|
70
|
+
string(value, name) {
|
|
71
|
+
return this.propertyParser.optionalString(this.resource, value, name);
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
//# sourceMappingURL=sim-cfn-kms-key-properties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-key-properties.js","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/key/sim-cfn-kms-key-properties.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAC5E,OAAO,EAAE,iCAAiC,EAAE,MAAM,6CAA6C,CAAC;AAOhG;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,sBAAsB;IAChB,QAAQ,CAAiB;IACzB,UAAU,CAA4B;IACtC,cAAc,GAAG,IAAI,uBAAuB,CAAC;QAC5D,YAAY,EAAE,eAAe;KAC9B,CAAC,CAAC;IAEH,YAAY,UAA4C;QACtD,IAAI,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;QACpC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QAExC,IAAI,iCAAiC,CAAC;YACpC,cAAc,EAAE,IAAI,CAAC,cAAc;SACpC,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,WAAW;QACT,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,aAAa,CAAC,EAAE,aAAa,CAAC,CAAC;IACpE,CAAC;IAED;;;;;OAKG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,cAAc,CAAC,kBAAkB,CAC3C,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,WAAW,CAAC,EAC5B,WAAW,CACZ,CAAC;IACJ,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAAE,SAAS,CAAC,CAAC;IAC5D,CAAC;IAED;;OAEG;IACH,QAAQ;QACN,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,UAAU,CAAC,EAAE,UAAU,CAAC,CAAC;IAC9D,CAAC;IAED;;;OAGG;IACH,MAAM;QACJ,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,QAAQ,CAAC,CAAC;IAC1D,CAAC;IAED;;;OAGG;IACH,OAAO;QACL,OAAO,CACL,IAAI,CAAC,cAAc,CAAC,eAAe,CACjC,IAAI,CAAC,QAAQ,EACb,IAAI,CAAC,UAAU,CAAC,SAAS,CAAC,EAC1B,SAAS,CACV,IAAI,IAAI,CACV,CAAC;IACJ,CAAC;IAEO,MAAM,CACZ,KAAsC,EACtC,IAAY;QAEZ,OAAO,IAAI,CAAC,cAAc,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,EAAE,IAAI,CAAC,CAAC;IACxE,CAAC;CACF"}
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { SimCfnResource } from "../../../cloudformation/resource/sim-cfn-resource.js";
|
|
2
|
+
import type { SimCfnTemplateValueRecord } from "../../../cloudformation/template/value/sim-cfn-template-value.js";
|
|
3
|
+
import type { SimCfnKmsPropertyParser } from "../sim-cfn-kms-property-parser.js";
|
|
4
|
+
interface SimCfnKmsUnsimulatedKeyPropertiesProperties {
|
|
5
|
+
readonly propertyParser: SimCfnKmsPropertyParser;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* Refuses AWS::KMS::Key properties that ask for behaviour simulated KMS does
|
|
9
|
+
* not model.
|
|
10
|
+
*
|
|
11
|
+
* Each of these changes what the key is, not merely how it is described, so
|
|
12
|
+
* quietly ignoring one would leave a template deploying a key that behaves
|
|
13
|
+
* differently here than it would on AWS: rotation that never happens, a
|
|
14
|
+
* multi-Region key whose replica cannot exist, or tags no policy can match.
|
|
15
|
+
* Refusing at deploy time makes that visible where it was declared.
|
|
16
|
+
*/
|
|
17
|
+
export declare class SimCfnKmsUnsimulatedKeyProperties {
|
|
18
|
+
private readonly propertyParser;
|
|
19
|
+
constructor(properties: SimCfnKmsUnsimulatedKeyPropertiesProperties);
|
|
20
|
+
/**
|
|
21
|
+
* Refuse the Resource if it asks for something unmodelled.
|
|
22
|
+
*
|
|
23
|
+
* KeySpec, KeyUsage and Origin are not checked here: they go through to
|
|
24
|
+
* CreateKey, which already refuses the types this simulation does not
|
|
25
|
+
* create.
|
|
26
|
+
*/
|
|
27
|
+
require(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): void;
|
|
28
|
+
/**
|
|
29
|
+
* Automatic key rotation is not simulated.
|
|
30
|
+
*
|
|
31
|
+
* `EnableKeyRotation: false` is the AWS default and says nothing, so it is
|
|
32
|
+
* accepted.
|
|
33
|
+
*/
|
|
34
|
+
private requireNoRotation;
|
|
35
|
+
/**
|
|
36
|
+
* Multi-Region keys are not simulated. A simulated key belongs to one
|
|
37
|
+
* account and region, and a ciphertext produced under it cannot be decrypted
|
|
38
|
+
* elsewhere.
|
|
39
|
+
*/
|
|
40
|
+
private requireSingleRegion;
|
|
41
|
+
/**
|
|
42
|
+
* Tags are not simulated on KMS keys, so a template declaring them is
|
|
43
|
+
* refused rather than deploying a key whose tags nothing can read and no
|
|
44
|
+
* `aws:ResourceTag` condition can match.
|
|
45
|
+
*/
|
|
46
|
+
private requireNoTags;
|
|
47
|
+
}
|
|
48
|
+
export {};
|
|
49
|
+
//# sourceMappingURL=sim-cfn-kms-unsimulated-key-properties.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-unsimulated-key-properties.d.ts","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAEV,yBAAyB,EAC1B,MAAM,kEAAkE,CAAC;AAC1E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,mCAAmC,CAAC;AAEjF,UAAU,2CAA2C;IACnD,QAAQ,CAAC,cAAc,EAAE,uBAAuB,CAAC;CAClD;AAED;;;;;;;;;GASG;AACH,qBAAa,iCAAiC;IAC5C,OAAO,CAAC,QAAQ,CAAC,cAAc,CAA0B;IAEzD,YAAY,UAAU,EAAE,2CAA2C,EAElE;IAED;;;;;;OAMG;IACH,OAAO,CACL,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,IAAI,CAIN;IAED;;;;;OAKG;IACH,OAAO,CAAC,iBAAiB;IA4BzB;;;;OAIG;IACH,OAAO,CAAC,mBAAmB;IAoB3B;;;;OAIG;IACH,OAAO,CAAC,aAAa;CActB"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Refuses AWS::KMS::Key properties that ask for behaviour simulated KMS does
|
|
3
|
+
* not model.
|
|
4
|
+
*
|
|
5
|
+
* Each of these changes what the key is, not merely how it is described, so
|
|
6
|
+
* quietly ignoring one would leave a template deploying a key that behaves
|
|
7
|
+
* differently here than it would on AWS: rotation that never happens, a
|
|
8
|
+
* multi-Region key whose replica cannot exist, or tags no policy can match.
|
|
9
|
+
* Refusing at deploy time makes that visible where it was declared.
|
|
10
|
+
*/
|
|
11
|
+
export class SimCfnKmsUnsimulatedKeyProperties {
|
|
12
|
+
propertyParser;
|
|
13
|
+
constructor(properties) {
|
|
14
|
+
this.propertyParser = properties.propertyParser;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* Refuse the Resource if it asks for something unmodelled.
|
|
18
|
+
*
|
|
19
|
+
* KeySpec, KeyUsage and Origin are not checked here: they go through to
|
|
20
|
+
* CreateKey, which already refuses the types this simulation does not
|
|
21
|
+
* create.
|
|
22
|
+
*/
|
|
23
|
+
require(resource, properties) {
|
|
24
|
+
this.requireNoRotation(resource, properties);
|
|
25
|
+
this.requireSingleRegion(resource, properties);
|
|
26
|
+
this.requireNoTags(resource, properties);
|
|
27
|
+
}
|
|
28
|
+
/**
|
|
29
|
+
* Automatic key rotation is not simulated.
|
|
30
|
+
*
|
|
31
|
+
* `EnableKeyRotation: false` is the AWS default and says nothing, so it is
|
|
32
|
+
* accepted.
|
|
33
|
+
*/
|
|
34
|
+
requireNoRotation(resource, properties) {
|
|
35
|
+
const enabled = this.propertyParser.optionalBoolean(resource, properties["EnableKeyRotation"], "EnableKeyRotation");
|
|
36
|
+
if (enabled === true) {
|
|
37
|
+
throw this.propertyParser.propertyError(resource, "EnableKeyRotation is not simulated: simulated KMS keys keep the " +
|
|
38
|
+
"same key material for their lifetime, so a rotated ciphertext " +
|
|
39
|
+
"would not be modelled");
|
|
40
|
+
}
|
|
41
|
+
if (properties["RotationPeriodInDays"] !== undefined) {
|
|
42
|
+
throw this.propertyParser.propertyError(resource, "RotationPeriodInDays is not simulated: simulated KMS does not " +
|
|
43
|
+
"rotate key material");
|
|
44
|
+
}
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Multi-Region keys are not simulated. A simulated key belongs to one
|
|
48
|
+
* account and region, and a ciphertext produced under it cannot be decrypted
|
|
49
|
+
* elsewhere.
|
|
50
|
+
*/
|
|
51
|
+
requireSingleRegion(resource, properties) {
|
|
52
|
+
const multiRegion = this.propertyParser.optionalBoolean(resource, properties["MultiRegion"], "MultiRegion");
|
|
53
|
+
if (multiRegion === true) {
|
|
54
|
+
throw this.propertyParser.propertyError(resource, "MultiRegion is not simulated: a simulated key belongs to one " +
|
|
55
|
+
"account and region, and its ciphertext cannot be decrypted in " +
|
|
56
|
+
"another");
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Tags are not simulated on KMS keys, so a template declaring them is
|
|
61
|
+
* refused rather than deploying a key whose tags nothing can read and no
|
|
62
|
+
* `aws:ResourceTag` condition can match.
|
|
63
|
+
*/
|
|
64
|
+
requireNoTags(resource, properties) {
|
|
65
|
+
const tags = properties["Tags"];
|
|
66
|
+
if (tags !== undefined) {
|
|
67
|
+
throw this.propertyParser.propertyError(resource, "Tags are not simulated on KMS keys: ListResourceTags and the " +
|
|
68
|
+
"aws:ResourceTag condition key would not see them");
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=sim-cfn-kms-unsimulated-key-properties.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-kms-unsimulated-key-properties.js","sourceRoot":"","sources":["../../../../../src/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.ts"],"names":[],"mappings":"AAWA;;;;;;;;;GASG;AACH,MAAM,OAAO,iCAAiC;IAC3B,cAAc,CAA0B;IAEzD,YAAY,UAAuD;QACjE,IAAI,CAAC,cAAc,GAAG,UAAU,CAAC,cAAc,CAAC;IAClD,CAAC;IAED;;;;;;OAMG;IACH,OAAO,CACL,QAAwB,EACxB,UAAqC;QAErC,IAAI,CAAC,iBAAiB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC7C,IAAI,CAAC,mBAAmB,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;QAC/C,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC;IAC3C,CAAC;IAED;;;;;OAKG;IACK,iBAAiB,CACvB,QAAwB,EACxB,UAAqC;QAErC,MAAM,OAAO,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CACjD,QAAQ,EACR,UAAU,CAAC,mBAAmB,CAAC,EAC/B,mBAAmB,CACpB,CAAC;QAEF,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACrB,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACrC,QAAQ,EACR,kEAAkE;gBAChE,gEAAgE;gBAChE,uBAAuB,CAC1B,CAAC;QACJ,CAAC;QAED,IAAI,UAAU,CAAC,sBAAsB,CAAC,KAAK,SAAS,EAAE,CAAC;YACrD,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACrC,QAAQ,EACR,gEAAgE;gBAC9D,qBAAqB,CACxB,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,mBAAmB,CACzB,QAAwB,EACxB,UAAqC;QAErC,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,eAAe,CACrD,QAAQ,EACR,UAAU,CAAC,aAAa,CAAC,EACzB,aAAa,CACd,CAAC;QAEF,IAAI,WAAW,KAAK,IAAI,EAAE,CAAC;YACzB,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACrC,QAAQ,EACR,+DAA+D;gBAC7D,gEAAgE;gBAChE,SAAS,CACZ,CAAC;QACJ,CAAC;IACH,CAAC;IAED;;;;OAIG;IACK,aAAa,CACnB,QAAwB,EACxB,UAAqC;QAErC,MAAM,IAAI,GAAoC,UAAU,CAAC,MAAM,CAAC,CAAC;QAEjE,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACvB,MAAM,IAAI,CAAC,cAAc,CAAC,aAAa,CACrC,QAAQ,EACR,+DAA+D;gBAC7D,kDAAkD,CACrD,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
|