@kensio/yulin 0.36.0 → 0.38.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 +3 -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-account-service-cache.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-service-cache.js +3 -0
- package/dist/service/aws/factory/sim-aws-account-service-cache.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +8 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.js +14 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -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 +6 -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 +7 -21
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +15 -26
- package/dist/service/aws/sim-aws.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/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 +116 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts.map +1 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js +126 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.js.map +1 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts +52 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.d.ts.map +1 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js +77 -0
- package/dist/service/iam/authorize/allow/sim-iam-allow-statements.js.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.d.ts +37 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.d.ts.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.js +33 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account-resolver.js.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.d.ts +21 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.d.ts.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.js +2 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-caller-account.js.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.d.ts +34 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.d.ts.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.js +22 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-cross-account-caller.js.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.d.ts +18 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.d.ts.map +1 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.js +16 -0
- package/dist/service/iam/authorize/caller-account/sim-iam-same-account-caller.js.map +1 -0
- 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-caller-context-builder.d.ts +1 -2
- package/dist/service/iam/authorize/context/sim-iam-auth-z-caller-context-builder.d.ts.map +1 -1
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts +49 -2
- 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 +44 -8
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js.map +1 -1
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context.d.ts +9 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context.d.ts.map +1 -1
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.d.ts.map +1 -1
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.js +2 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context.factory.js.map +1 -1
- package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.d.ts +14 -0
- package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.d.ts.map +1 -0
- package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.js +2 -0
- package/dist/service/iam/authorize/identity/sim-iam-account-identity-policies.js.map +1 -0
- 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-account-auth-z.d.ts +24 -1
- package/dist/service/iam/authorize/sim-iam-account-auth-z.d.ts.map +1 -1
- package/dist/service/iam/authorize/sim-iam-account-auth-z.js +18 -4
- package/dist/service/iam/authorize/sim-iam-account-auth-z.js.map +1 -1
- package/dist/service/iam/authorize/sim-iam-authorizer.d.ts +11 -2
- package/dist/service/iam/authorize/sim-iam-authorizer.d.ts.map +1 -1
- package/dist/service/iam/authorize/sim-iam-authorizer.js +14 -1
- package/dist/service/iam/authorize/sim-iam-authorizer.js.map +1 -1
- package/dist/service/iam/authorize/sim-iam-decision.d.ts +17 -5
- package/dist/service/iam/authorize/sim-iam-decision.d.ts.map +1 -1
- package/dist/service/iam/authorize/sim-iam-decision.js +29 -14
- package/dist/service/iam/authorize/sim-iam-decision.js.map +1 -1
- package/dist/service/iam/command/sim-iam-command-handlers.d.ts +41 -0
- package/dist/service/iam/command/sim-iam-command-handlers.d.ts.map +1 -0
- package/dist/service/iam/command/sim-iam-command-handlers.js +42 -0
- package/dist/service/iam/command/sim-iam-command-handlers.js.map +1 -0
- 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/registry/sim-iam-account-resolver.d.ts +8 -0
- package/dist/service/iam/registry/sim-iam-account-resolver.d.ts.map +1 -1
- package/dist/service/iam/registry/sim-iam-registry.d.ts +4 -0
- package/dist/service/iam/registry/sim-iam-registry.d.ts.map +1 -1
- package/dist/service/iam/registry/sim-iam-registry.js +7 -1
- package/dist/service/iam/registry/sim-iam-registry.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/iam/sim-iam-account-parts.d.ts +58 -0
- package/dist/service/iam/sim-iam-account-parts.d.ts.map +1 -0
- package/dist/service/iam/sim-iam-account-parts.js +72 -0
- package/dist/service/iam/sim-iam-account-parts.js.map +1 -0
- package/dist/service/iam/sim-iam.d.ts +28 -21
- package/dist/service/iam/sim-iam.d.ts.map +1 -1
- package/dist/service/iam/sim-iam.js +42 -71
- package/dist/service/iam/sim-iam.js.map +1 -1
- 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 +58 -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 +111 -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 +105 -0
- package/dist/service/kms/sim-kms.d.ts.map +1 -0
- package/dist/service/kms/sim-kms.js +187 -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/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 +17 -11
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms.error.js","sourceRoot":"","sources":["../../../../src/service/kms/error/sim-kms.error.ts"],"names":[],"mappings":"AAOA;;GAEG;AACH,MAAM,OAAO,WAAY,SAAQ,KAAK;IAGlB,SAAS;IAF3B,YACE,OAAe,EACC,SAAS,GAAwB,EAAE;QAEnD,KAAK,CAAC,OAAO,CAAC,CAAC;yBAFC,SAAS;IAG3B,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,uBAAwB,SAAQ,WAAW;IAC7B,IAAI,GAAG,mBAAmB,CAAC;IAEpD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,4BAA6B,SAAQ,WAAW;IAClC,IAAI,GAAG,wBAAwB,CAAC;IAEzD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,OAAO,uBAAwB,SAAQ,WAAW;IAC7B,IAAI,GAAG,mBAAmB,CAAC;IAEpD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,2BAA4B,SAAQ,WAAW;IACjC,IAAI,GAAG,0BAA0B,CAAC;IAE3D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,gCAAiC,SAAQ,WAAW;IACtC,IAAI,GAAG,4BAA4B,CAAC;IAE7D,YAAY,OAAO,GAAG,oDAAoD;QACxE,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;;;;;;GAOG;AACH,MAAM,OAAO,2BAA4B,SAAQ,WAAW;IACjC,IAAI,GAAG,uBAAuB,CAAC;IAExD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,yBAA0B,SAAQ,WAAW;IAC/B,IAAI,GAAG,qBAAqB,CAAC;IAEtD,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF;AAED;;GAEG;AACH,MAAM,OAAO,8BAA+B,SAAQ,WAAW;IACpC,IAAI,GAAG,0BAA0B,CAAC;IAE3D,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,EAAE,EAAE,cAAc,EAAE,GAAG,EAAE,CAAC,CAAC;IAC1C,CAAC;CACF"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export { SimKms, type SimKmsRequestOptions } from "./sim-kms.js";
|
|
2
|
+
export { SimKmsKey, SimKmsKeyManager, SimKmsKeyState, type SimKmsKeyId, } from "./key/sim-kms-key.js";
|
|
3
|
+
export { SimKmsAlias } from "./key/sim-kms-alias.js";
|
|
4
|
+
export { SimKmsKeyPolicy } from "./key/sim-kms-key-policy.js";
|
|
5
|
+
export type { SimKmsEncryptionContext } from "./key/sim-kms-encryption-context.js";
|
|
6
|
+
export type { SimKmsKeyMetadata } from "./key/sim-kms-key-metadata.js";
|
|
7
|
+
export { SimKmsAlreadyExistsException, SimKmsDisabledException, SimKmsError, SimKmsIncorrectKeyException, SimKmsInvalidCiphertextException, SimKmsInvalidKeyUsageException, SimKmsInvalidStateException, SimKmsNotFoundException, SimKmsValidationException, } from "./error/sim-kms.error.js";
|
|
8
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/service/kms/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAAE,KAAK,oBAAoB,EAAE,MAAM,cAAc,CAAC;AACjE,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,cAAc,EACd,KAAK,WAAW,GACjB,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAC9D,YAAY,EAAE,uBAAuB,EAAE,MAAM,qCAAqC,CAAC;AACnF,YAAY,EAAE,iBAAiB,EAAE,MAAM,+BAA+B,CAAC;AACvE,OAAO,EACL,4BAA4B,EAC5B,uBAAuB,EACvB,WAAW,EACX,2BAA2B,EAC3B,gCAAgC,EAChC,8BAA8B,EAC9B,2BAA2B,EAC3B,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
export { SimKms } from "./sim-kms.js";
|
|
2
|
+
export { SimKmsKey, SimKmsKeyManager, SimKmsKeyState, } from "./key/sim-kms-key.js";
|
|
3
|
+
export { SimKmsAlias } from "./key/sim-kms-alias.js";
|
|
4
|
+
export { SimKmsKeyPolicy } from "./key/sim-kms-key-policy.js";
|
|
5
|
+
export { SimKmsAlreadyExistsException, SimKmsDisabledException, SimKmsError, SimKmsIncorrectKeyException, SimKmsInvalidCiphertextException, SimKmsInvalidKeyUsageException, SimKmsInvalidStateException, SimKmsNotFoundException, SimKmsValidationException, } from "./error/sim-kms.error.js";
|
|
6
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/service/kms/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,EAA6B,MAAM,cAAc,CAAC;AACjE,OAAO,EACL,SAAS,EACT,gBAAgB,EAChB,cAAc,GAEf,MAAM,sBAAsB,CAAC;AAC9B,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,6BAA6B,CAAC;AAG9D,OAAO,EACL,4BAA4B,EAC5B,uBAAuB,EACvB,WAAW,EACX,2BAA2B,EAC3B,gCAAgC,EAChC,8BAA8B,EAC9B,2BAA2B,EAC3B,uBAAuB,EACvB,yBAAyB,GAC1B,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
2
|
+
import type { SimKmsKeyId } from "./sim-kms-key.js";
|
|
3
|
+
/**
|
|
4
|
+
* The prefix every KMS alias name carries.
|
|
5
|
+
*/
|
|
6
|
+
export declare const simKmsAliasPrefix = "alias/";
|
|
7
|
+
/**
|
|
8
|
+
* The prefix reserved for aliases of AWS managed keys, such as
|
|
9
|
+
* `alias/aws/s3`. Real KMS refuses to let a customer create one.
|
|
10
|
+
*/
|
|
11
|
+
export declare const simKmsAwsAliasPrefix = "alias/aws/";
|
|
12
|
+
interface SimKmsAliasProperties {
|
|
13
|
+
readonly aliasName: string;
|
|
14
|
+
readonly targetKeyId: SimKmsKeyId;
|
|
15
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* An alias pointing at one simulated KMS key.
|
|
19
|
+
*
|
|
20
|
+
* An alias is a mutable name for a key rather than part of the key, so it is
|
|
21
|
+
* stored separately: retargeting an alias must not disturb the key, and
|
|
22
|
+
* deleting an alias must leave the key alone.
|
|
23
|
+
*/
|
|
24
|
+
export declare class SimKmsAlias {
|
|
25
|
+
readonly aliasName: string;
|
|
26
|
+
readonly arn: string;
|
|
27
|
+
readonly targetKeyId: SimKmsKeyId;
|
|
28
|
+
constructor(properties: SimKmsAliasProperties);
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Checks alias names against the rules real KMS applies.
|
|
32
|
+
*
|
|
33
|
+
* Failing an invalid name here rather than storing it keeps a test from
|
|
34
|
+
* passing on an alias that CreateAlias would reject on real AWS.
|
|
35
|
+
*/
|
|
36
|
+
export declare class SimKmsAliasName {
|
|
37
|
+
private static readonly allowed;
|
|
38
|
+
private static readonly maxLength;
|
|
39
|
+
/**
|
|
40
|
+
* Validate an alias name a customer asked to create.
|
|
41
|
+
*/
|
|
42
|
+
validateCustomerAlias(aliasName: string): void;
|
|
43
|
+
}
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=sim-kms-alias.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-alias.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-alias.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAE1F,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD;;GAEG;AACH,eAAO,MAAM,iBAAiB,WAAW,CAAC;AAE1C;;;GAGG;AACH,eAAO,MAAM,oBAAoB,eAAe,CAAC;AAEjD,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,WAAW,EAAE,WAAW,CAAC;IAClC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;CACvD;AAED;;;;;;GAMG;AACH,qBAAa,WAAW;IACtB,SAAgB,SAAS,EAAE,MAAM,CAAC;IAClC,SAAgB,GAAG,EAAE,MAAM,CAAC;IAC5B,SAAgB,WAAW,EAAE,WAAW,CAAC;IAEzC,YAAY,UAAU,EAAE,qBAAqB,EAM5C;CACF;AAED;;;;;GAKG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAgB;IAC/C,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,SAAS,CAAO;IAExC;;OAEG;IACH,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI,CA8B7C;CACF"}
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
import { SimKmsValidationException } from "../error/sim-kms.error.js";
|
|
2
|
+
/**
|
|
3
|
+
* The prefix every KMS alias name carries.
|
|
4
|
+
*/
|
|
5
|
+
export const simKmsAliasPrefix = "alias/";
|
|
6
|
+
/**
|
|
7
|
+
* The prefix reserved for aliases of AWS managed keys, such as
|
|
8
|
+
* `alias/aws/s3`. Real KMS refuses to let a customer create one.
|
|
9
|
+
*/
|
|
10
|
+
export const simKmsAwsAliasPrefix = "alias/aws/";
|
|
11
|
+
/**
|
|
12
|
+
* An alias pointing at one simulated KMS key.
|
|
13
|
+
*
|
|
14
|
+
* An alias is a mutable name for a key rather than part of the key, so it is
|
|
15
|
+
* stored separately: retargeting an alias must not disturb the key, and
|
|
16
|
+
* deleting an alias must leave the key alone.
|
|
17
|
+
*/
|
|
18
|
+
export class SimKmsAlias {
|
|
19
|
+
aliasName;
|
|
20
|
+
arn;
|
|
21
|
+
targetKeyId;
|
|
22
|
+
constructor(properties) {
|
|
23
|
+
const { accountRegionScope } = properties;
|
|
24
|
+
this.aliasName = properties.aliasName;
|
|
25
|
+
this.arn = `arn:aws:kms:${accountRegionScope.regionName}:${accountRegionScope.accountId}:${properties.aliasName}`;
|
|
26
|
+
this.targetKeyId = properties.targetKeyId;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
/**
|
|
30
|
+
* Checks alias names against the rules real KMS applies.
|
|
31
|
+
*
|
|
32
|
+
* Failing an invalid name here rather than storing it keeps a test from
|
|
33
|
+
* passing on an alias that CreateAlias would reject on real AWS.
|
|
34
|
+
*/
|
|
35
|
+
export class SimKmsAliasName {
|
|
36
|
+
static allowed = /^[\w/-]+$/u;
|
|
37
|
+
static maxLength = 256;
|
|
38
|
+
/**
|
|
39
|
+
* Validate an alias name a customer asked to create.
|
|
40
|
+
*/
|
|
41
|
+
validateCustomerAlias(aliasName) {
|
|
42
|
+
if (aliasName.length > SimKmsAliasName.maxLength) {
|
|
43
|
+
throw new SimKmsValidationException(`Alias '${aliasName}' is longer than the ${String(SimKmsAliasName.maxLength)} character limit`);
|
|
44
|
+
}
|
|
45
|
+
if (aliasName === simKmsAliasPrefix) {
|
|
46
|
+
throw new SimKmsValidationException(`Alias must name something after '${simKmsAliasPrefix}'`);
|
|
47
|
+
}
|
|
48
|
+
if (!aliasName.startsWith(simKmsAliasPrefix)) {
|
|
49
|
+
throw new SimKmsValidationException(`Alias must start with '${simKmsAliasPrefix}': ${aliasName}`);
|
|
50
|
+
}
|
|
51
|
+
if (aliasName.startsWith(simKmsAwsAliasPrefix)) {
|
|
52
|
+
throw new SimKmsValidationException(`Alias '${aliasName}' is reserved for AWS managed keys`);
|
|
53
|
+
}
|
|
54
|
+
if (!SimKmsAliasName.allowed.test(aliasName)) {
|
|
55
|
+
throw new SimKmsValidationException(`Alias '${aliasName}' contains characters KMS does not allow`);
|
|
56
|
+
}
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
//# sourceMappingURL=sim-kms-alias.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-alias.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-alias.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,yBAAyB,EAAE,MAAM,2BAA2B,CAAC;AAGtE;;GAEG;AACH,MAAM,CAAC,MAAM,iBAAiB,GAAG,QAAQ,CAAC;AAE1C;;;GAGG;AACH,MAAM,CAAC,MAAM,oBAAoB,GAAG,YAAY,CAAC;AAQjD;;;;;;GAMG;AACH,MAAM,OAAO,WAAW;IACN,SAAS,CAAS;IAClB,GAAG,CAAS;IACZ,WAAW,CAAc;IAEzC,YAAY,UAAiC;QAC3C,MAAM,EAAE,kBAAkB,EAAE,GAAG,UAAU,CAAC;QAE1C,IAAI,CAAC,SAAS,GAAG,UAAU,CAAC,SAAS,CAAC;QACtC,IAAI,CAAC,GAAG,GAAG,eAAe,kBAAkB,CAAC,UAAU,IAAI,kBAAkB,CAAC,SAAS,IAAI,UAAU,CAAC,SAAS,EAAE,CAAC;QAClH,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC5C,CAAC;CACF;AAED;;;;;GAKG;AACH,MAAM,OAAO,eAAe;IAClB,MAAM,CAAU,OAAO,GAAG,YAAY,CAAC;IACvC,MAAM,CAAU,SAAS,GAAG,GAAG,CAAC;IAExC;;OAEG;IACH,qBAAqB,CAAC,SAAiB;QACrC,IAAI,SAAS,CAAC,MAAM,GAAG,eAAe,CAAC,SAAS,EAAE,CAAC;YACjD,MAAM,IAAI,yBAAyB,CACjC,UAAU,SAAS,wBAAwB,MAAM,CAAC,eAAe,CAAC,SAAS,CAAC,kBAAkB,CAC/F,CAAC;QACJ,CAAC;QAED,IAAI,SAAS,KAAK,iBAAiB,EAAE,CAAC;YACpC,MAAM,IAAI,yBAAyB,CACjC,oCAAoC,iBAAiB,GAAG,CACzD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,yBAAyB,CACjC,0BAA0B,iBAAiB,MAAM,SAAS,EAAE,CAC7D,CAAC;QACJ,CAAC;QAED,IAAI,SAAS,CAAC,UAAU,CAAC,oBAAoB,CAAC,EAAE,CAAC;YAC/C,MAAM,IAAI,yBAAyB,CACjC,UAAU,SAAS,oCAAoC,CACxD,CAAC;QACJ,CAAC;QAED,IAAI,CAAC,eAAe,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YAC7C,MAAM,IAAI,yBAAyB,CACjC,UAAU,SAAS,0CAA0C,CAC9D,CAAC;QACJ,CAAC;IACH,CAAC;CACF"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
interface SimKmsCiphertextBlobPartsProperties {
|
|
2
|
+
readonly keyArn: string;
|
|
3
|
+
readonly iv: Uint8Array;
|
|
4
|
+
readonly authTag: Uint8Array;
|
|
5
|
+
readonly ciphertext: Uint8Array;
|
|
6
|
+
}
|
|
7
|
+
/**
|
|
8
|
+
* The parts of one ciphertext blob.
|
|
9
|
+
*/
|
|
10
|
+
export declare class SimKmsCiphertextBlobParts {
|
|
11
|
+
readonly keyArn: string;
|
|
12
|
+
readonly iv: Uint8Array;
|
|
13
|
+
readonly authTag: Uint8Array;
|
|
14
|
+
readonly ciphertext: Uint8Array;
|
|
15
|
+
constructor(properties: SimKmsCiphertextBlobPartsProperties);
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Encodes and decodes the opaque ciphertext blob KMS hands back.
|
|
19
|
+
*
|
|
20
|
+
* Real KMS blobs are opaque to the caller but not to KMS: a blob names the key
|
|
21
|
+
* that produced it, which is why Decrypt needs no KeyId for a symmetric key.
|
|
22
|
+
* This layout keeps that property, carrying the key ARN alongside the AES-GCM
|
|
23
|
+
* initialisation vector and authentication tag.
|
|
24
|
+
*
|
|
25
|
+
* Opaque means callers must not read it. It is not encrypted, and it is not
|
|
26
|
+
* portable to real AWS or between simulations.
|
|
27
|
+
*/
|
|
28
|
+
export declare class SimKmsCiphertextBlob {
|
|
29
|
+
/**
|
|
30
|
+
* Encode the parts of an encryption into one blob.
|
|
31
|
+
*/
|
|
32
|
+
encode(parts: SimKmsCiphertextBlobParts): Uint8Array;
|
|
33
|
+
/**
|
|
34
|
+
* Read the parts back out of a blob.
|
|
35
|
+
*
|
|
36
|
+
* Anything that is not a blob this simulation produced is an invalid
|
|
37
|
+
* ciphertext, which is the same answer real KMS gives for bytes it cannot
|
|
38
|
+
* make sense of.
|
|
39
|
+
*/
|
|
40
|
+
decode(blob: Uint8Array): SimKmsCiphertextBlobParts;
|
|
41
|
+
}
|
|
42
|
+
export {};
|
|
43
|
+
//# sourceMappingURL=sim-kms-ciphertext-blob.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-ciphertext-blob.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-ciphertext-blob.ts"],"names":[],"mappings":"AAkBA,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,EAAE,UAAU,CAAC;IACxB,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;CACjC;AAED;;GAEG;AACH,qBAAa,yBAAyB;IACpC,SAAgB,MAAM,EAAE,MAAM,CAAC;IAC/B,SAAgB,EAAE,EAAE,UAAU,CAAC;IAC/B,SAAgB,OAAO,EAAE,UAAU,CAAC;IACpC,SAAgB,UAAU,EAAE,UAAU,CAAC;IAEvC,YAAY,UAAU,EAAE,mCAAmC,EAK1D;CACF;AAED;;;;;;;;;;GAUG;AACH,qBAAa,oBAAoB;IAC/B;;OAEG;IACH,MAAM,CAAC,KAAK,EAAE,yBAAyB,GAAG,UAAU,CAgBnD;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAI,EAAE,UAAU,GAAG,yBAAyB,CA2BlD;CACF"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import { SimKmsInvalidCiphertextException } from "../error/sim-kms.error.js";
|
|
2
|
+
/**
|
|
3
|
+
* Marks a byte string as one of this simulation's ciphertext blobs, so that
|
|
4
|
+
* arbitrary bytes handed to Decrypt are rejected rather than misread as a
|
|
5
|
+
* short blob.
|
|
6
|
+
*/
|
|
7
|
+
const magic = Buffer.from("YULINKMS", "ascii");
|
|
8
|
+
/**
|
|
9
|
+
* Blob layout version, so a future change to the layout can be told apart
|
|
10
|
+
* from a blob this simulation cannot read at all.
|
|
11
|
+
*/
|
|
12
|
+
const version = 1;
|
|
13
|
+
const ivLength = 12;
|
|
14
|
+
const authTagLength = 16;
|
|
15
|
+
/**
|
|
16
|
+
* The parts of one ciphertext blob.
|
|
17
|
+
*/
|
|
18
|
+
export class SimKmsCiphertextBlobParts {
|
|
19
|
+
keyArn;
|
|
20
|
+
iv;
|
|
21
|
+
authTag;
|
|
22
|
+
ciphertext;
|
|
23
|
+
constructor(properties) {
|
|
24
|
+
this.keyArn = properties.keyArn;
|
|
25
|
+
this.iv = properties.iv;
|
|
26
|
+
this.authTag = properties.authTag;
|
|
27
|
+
this.ciphertext = properties.ciphertext;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* Encodes and decodes the opaque ciphertext blob KMS hands back.
|
|
32
|
+
*
|
|
33
|
+
* Real KMS blobs are opaque to the caller but not to KMS: a blob names the key
|
|
34
|
+
* that produced it, which is why Decrypt needs no KeyId for a symmetric key.
|
|
35
|
+
* This layout keeps that property, carrying the key ARN alongside the AES-GCM
|
|
36
|
+
* initialisation vector and authentication tag.
|
|
37
|
+
*
|
|
38
|
+
* Opaque means callers must not read it. It is not encrypted, and it is not
|
|
39
|
+
* portable to real AWS or between simulations.
|
|
40
|
+
*/
|
|
41
|
+
export class SimKmsCiphertextBlob {
|
|
42
|
+
/**
|
|
43
|
+
* Encode the parts of an encryption into one blob.
|
|
44
|
+
*/
|
|
45
|
+
encode(parts) {
|
|
46
|
+
const keyArn = Buffer.from(parts.keyArn, "utf8");
|
|
47
|
+
const header = Buffer.alloc(2);
|
|
48
|
+
header.writeUInt8(version, 0);
|
|
49
|
+
header.writeUInt8(keyArn.length, 1);
|
|
50
|
+
return Uint8Array.from(Buffer.concat([
|
|
51
|
+
magic,
|
|
52
|
+
header,
|
|
53
|
+
keyArn,
|
|
54
|
+
parts.iv,
|
|
55
|
+
parts.authTag,
|
|
56
|
+
parts.ciphertext,
|
|
57
|
+
]));
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Read the parts back out of a blob.
|
|
61
|
+
*
|
|
62
|
+
* Anything that is not a blob this simulation produced is an invalid
|
|
63
|
+
* ciphertext, which is the same answer real KMS gives for bytes it cannot
|
|
64
|
+
* make sense of.
|
|
65
|
+
*/
|
|
66
|
+
decode(blob) {
|
|
67
|
+
const buffer = Buffer.from(blob);
|
|
68
|
+
const keyArnStart = magic.length + 2;
|
|
69
|
+
if (buffer.length < keyArnStart ||
|
|
70
|
+
!buffer.subarray(0, magic.length).equals(magic) ||
|
|
71
|
+
buffer.readUInt8(magic.length) !== version) {
|
|
72
|
+
throw new SimKmsInvalidCiphertextException();
|
|
73
|
+
}
|
|
74
|
+
const keyArnLength = buffer.readUInt8(magic.length + 1);
|
|
75
|
+
const ivStart = keyArnStart + keyArnLength;
|
|
76
|
+
const authTagStart = ivStart + ivLength;
|
|
77
|
+
const ciphertextStart = authTagStart + authTagLength;
|
|
78
|
+
if (buffer.length < ciphertextStart) {
|
|
79
|
+
throw new SimKmsInvalidCiphertextException();
|
|
80
|
+
}
|
|
81
|
+
return new SimKmsCiphertextBlobParts({
|
|
82
|
+
keyArn: buffer.subarray(keyArnStart, ivStart).toString("utf8"),
|
|
83
|
+
iv: Uint8Array.from(buffer.subarray(ivStart, authTagStart)),
|
|
84
|
+
authTag: Uint8Array.from(buffer.subarray(authTagStart, ciphertextStart)),
|
|
85
|
+
ciphertext: Uint8Array.from(buffer.subarray(ciphertextStart)),
|
|
86
|
+
});
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
//# sourceMappingURL=sim-kms-ciphertext-blob.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-ciphertext-blob.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-ciphertext-blob.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gCAAgC,EAAE,MAAM,2BAA2B,CAAC;AAE7E;;;;GAIG;AACH,MAAM,KAAK,GAAG,MAAM,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;AAE/C;;;GAGG;AACH,MAAM,OAAO,GAAG,CAAC,CAAC;AAElB,MAAM,QAAQ,GAAG,EAAE,CAAC;AACpB,MAAM,aAAa,GAAG,EAAE,CAAC;AASzB;;GAEG;AACH,MAAM,OAAO,yBAAyB;IACpB,MAAM,CAAS;IACf,EAAE,CAAa;IACf,OAAO,CAAa;IACpB,UAAU,CAAa;IAEvC,YAAY,UAA+C;QACzD,IAAI,CAAC,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC;QAChC,IAAI,CAAC,EAAE,GAAG,UAAU,CAAC,EAAE,CAAC;QACxB,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,CAAC;CACF;AAED;;;;;;;;;;GAUG;AACH,MAAM,OAAO,oBAAoB;IAC/B;;OAEG;IACH,MAAM,CAAC,KAAgC;QACrC,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;QACjD,MAAM,MAAM,GAAG,MAAM,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAC/B,MAAM,CAAC,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAC9B,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;QAEpC,OAAO,UAAU,CAAC,IAAI,CACpB,MAAM,CAAC,MAAM,CAAC;YACZ,KAAK;YACL,MAAM;YACN,MAAM;YACN,KAAK,CAAC,EAAE;YACR,KAAK,CAAC,OAAO;YACb,KAAK,CAAC,UAAU;SACjB,CAAC,CACH,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CAAC,IAAgB;QACrB,MAAM,MAAM,GAAG,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC;QAErC,IACE,MAAM,CAAC,MAAM,GAAG,WAAW;YAC3B,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,EAAE,KAAK,CAAC,MAAM,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;YAC/C,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,OAAO,EAC1C,CAAC;YACD,MAAM,IAAI,gCAAgC,EAAE,CAAC;QAC/C,CAAC;QAED,MAAM,YAAY,GAAG,MAAM,CAAC,SAAS,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QACxD,MAAM,OAAO,GAAG,WAAW,GAAG,YAAY,CAAC;QAC3C,MAAM,YAAY,GAAG,OAAO,GAAG,QAAQ,CAAC;QACxC,MAAM,eAAe,GAAG,YAAY,GAAG,aAAa,CAAC;QAErD,IAAI,MAAM,CAAC,MAAM,GAAG,eAAe,EAAE,CAAC;YACpC,MAAM,IAAI,gCAAgC,EAAE,CAAC;QAC/C,CAAC;QAED,OAAO,IAAI,yBAAyB,CAAC;YACnC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,OAAO,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;YAC9D,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,YAAY,CAAC,CAAC;YAC3D,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC,CAAC;YACxE,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAC;SAC9D,CAAC,CAAC;IACL,CAAC;CACF"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* An AWS KMS encryption context: non-secret key/value pairs bound to a
|
|
3
|
+
* ciphertext.
|
|
4
|
+
*/
|
|
5
|
+
export type SimKmsEncryptionContext = Readonly<Record<string, string>>;
|
|
6
|
+
/**
|
|
7
|
+
* Serialises an encryption context into the additional authenticated data of
|
|
8
|
+
* an AES-GCM operation.
|
|
9
|
+
*
|
|
10
|
+
* The encryption context is exactly what AAD is for: it is not secret, it is
|
|
11
|
+
* not stored in the ciphertext, and supplying a different one on decryption
|
|
12
|
+
* has to fail. Binding it as AAD gets that behaviour from the cipher itself
|
|
13
|
+
* rather than from a comparison the simulator would have to remember to make.
|
|
14
|
+
*
|
|
15
|
+
* Real KMS treats the context as an unordered map, so the serialisation sorts
|
|
16
|
+
* by key. Two contexts with the same pairs written in a different order have
|
|
17
|
+
* to produce the same AAD, or a decryption that AWS would allow would fail
|
|
18
|
+
* here.
|
|
19
|
+
*/
|
|
20
|
+
export declare class SimKmsEncryptionContextAad {
|
|
21
|
+
/**
|
|
22
|
+
* Serialise an encryption context to the bytes bound into the ciphertext.
|
|
23
|
+
*/
|
|
24
|
+
serialise(context: SimKmsEncryptionContext | undefined): Uint8Array;
|
|
25
|
+
/**
|
|
26
|
+
* The canonical string form of an encryption context.
|
|
27
|
+
*
|
|
28
|
+
* Pairs are sorted by key and both halves are escaped, so that no pair of
|
|
29
|
+
* distinct contexts can serialise to the same string by placing a separator
|
|
30
|
+
* inside a key or a value.
|
|
31
|
+
*/
|
|
32
|
+
private canonical;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=sim-kms-encryption-context.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-encryption-context.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-encryption-context.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,MAAM,MAAM,uBAAuB,GAAG,QAAQ,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC;AAEvE;;;;;;;;;;;;;GAaG;AACH,qBAAa,0BAA0B;IACrC;;OAEG;IACH,SAAS,CAAC,OAAO,EAAE,uBAAuB,GAAG,SAAS,GAAG,UAAU,CAElE;IAED;;;;;;OAMG;IACH,OAAO,CAAC,SAAS;CAalB"}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Serialises an encryption context into the additional authenticated data of
|
|
3
|
+
* an AES-GCM operation.
|
|
4
|
+
*
|
|
5
|
+
* The encryption context is exactly what AAD is for: it is not secret, it is
|
|
6
|
+
* not stored in the ciphertext, and supplying a different one on decryption
|
|
7
|
+
* has to fail. Binding it as AAD gets that behaviour from the cipher itself
|
|
8
|
+
* rather than from a comparison the simulator would have to remember to make.
|
|
9
|
+
*
|
|
10
|
+
* Real KMS treats the context as an unordered map, so the serialisation sorts
|
|
11
|
+
* by key. Two contexts with the same pairs written in a different order have
|
|
12
|
+
* to produce the same AAD, or a decryption that AWS would allow would fail
|
|
13
|
+
* here.
|
|
14
|
+
*/
|
|
15
|
+
export class SimKmsEncryptionContextAad {
|
|
16
|
+
/**
|
|
17
|
+
* Serialise an encryption context to the bytes bound into the ciphertext.
|
|
18
|
+
*/
|
|
19
|
+
serialise(context) {
|
|
20
|
+
return Buffer.from(this.canonical(context), "utf8");
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The canonical string form of an encryption context.
|
|
24
|
+
*
|
|
25
|
+
* Pairs are sorted by key and both halves are escaped, so that no pair of
|
|
26
|
+
* distinct contexts can serialise to the same string by placing a separator
|
|
27
|
+
* inside a key or a value.
|
|
28
|
+
*/
|
|
29
|
+
canonical(context) {
|
|
30
|
+
if (context === undefined) {
|
|
31
|
+
return "";
|
|
32
|
+
}
|
|
33
|
+
return Object.entries(context)
|
|
34
|
+
.toSorted(([left], [right]) => left.localeCompare(right))
|
|
35
|
+
.map(([key, value]) => `${encodeURIComponent(key)}=${encodeURIComponent(value)}`)
|
|
36
|
+
.join("&");
|
|
37
|
+
}
|
|
38
|
+
}
|
|
39
|
+
//# sourceMappingURL=sim-kms-encryption-context.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-encryption-context.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-encryption-context.ts"],"names":[],"mappings":"AAMA;;;;;;;;;;;;;GAaG;AACH,MAAM,OAAO,0BAA0B;IACrC;;OAEG;IACH,SAAS,CAAC,OAA4C;QACpD,OAAO,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC,CAAC;IACtD,CAAC;IAED;;;;;;OAMG;IACK,SAAS,CAAC,OAA4C;QAC5D,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;YAC1B,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,OAAO,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC;aAC3B,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,CAAC;aACxD,GAAG,CACF,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE,CACf,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,kBAAkB,CAAC,KAAK,CAAC,EAAE,CAC5D;aACA,IAAI,CAAC,GAAG,CAAC,CAAC;IACf,CAAC;CACF"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import type { SimClock } from "../../../util/clock/sim-clock.js";
|
|
2
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
3
|
+
import type { SimIamPolicyDocument } from "../../iam/policy/sim-iam-policy.js";
|
|
4
|
+
import { SimKmsKey, type SimKmsKeyManager } from "./sim-kms-key.js";
|
|
5
|
+
interface SimKmsKeyFactoryProperties {
|
|
6
|
+
readonly accountRegionScope: SimAwsAccountRegionScope;
|
|
7
|
+
readonly clock: SimClock;
|
|
8
|
+
}
|
|
9
|
+
interface SimKmsMakeKeyProperties {
|
|
10
|
+
readonly description?: string | undefined;
|
|
11
|
+
readonly policy?: SimIamPolicyDocument | undefined;
|
|
12
|
+
readonly keyManager?: SimKmsKeyManager | undefined;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* Builds simulated KMS keys, including their key material.
|
|
16
|
+
*
|
|
17
|
+
* Key creation has to assemble an identifier, an ARN, real AES key material
|
|
18
|
+
* and a policy that all agree with each other, so it happens in one place
|
|
19
|
+
* rather than at each call site that needs a key.
|
|
20
|
+
*/
|
|
21
|
+
export declare class SimKmsKeyFactory {
|
|
22
|
+
private readonly accountRegionScope;
|
|
23
|
+
private readonly clock;
|
|
24
|
+
private readonly blob;
|
|
25
|
+
constructor(properties: SimKmsKeyFactoryProperties);
|
|
26
|
+
/**
|
|
27
|
+
* Make a new key with fresh key material.
|
|
28
|
+
*
|
|
29
|
+
* Real key IDs are UUIDs, and code in the wild parses them that way, so
|
|
30
|
+
* these are real UUIDs rather than a shorter simulator-only identifier.
|
|
31
|
+
*/
|
|
32
|
+
make(properties?: SimKmsMakeKeyProperties): SimKmsKey;
|
|
33
|
+
private keyPolicy;
|
|
34
|
+
}
|
|
35
|
+
export {};
|
|
36
|
+
//# sourceMappingURL=sim-kms-key-factory.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-key-factory.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-factory.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AACjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAE/E,OAAO,EAAE,SAAS,EAAE,KAAK,gBAAgB,EAAE,MAAM,kBAAkB,CAAC;AAIpE,UAAU,0BAA0B;IAClC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,CAAC;IACtD,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;CAC1B;AAED,UAAU,uBAAuB;IAC/B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC1C,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,UAAU,CAAC,EAAE,gBAAgB,GAAG,SAAS,CAAC;CACpD;AAED;;;;;;GAMG;AACH,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,QAAQ,CAAC,IAAI,CAA8B;IAEnD,YAAY,UAAU,EAAE,0BAA0B,EAGjD;IAED;;;;;OAKG;IACH,IAAI,CAAC,UAAU,GAAE,uBAA4B,GAAG,SAAS,CAaxD;IAED,OAAO,CAAC,SAAS;CAUlB"}
|
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
import { randomUUID } from "node:crypto";
|
|
2
|
+
import { SimKmsCiphertextBlob } from "./sim-kms-ciphertext-blob.js";
|
|
3
|
+
import { SimKmsKey } from "./sim-kms-key.js";
|
|
4
|
+
import { SimKmsKeyMaterial } from "./sim-kms-key-material.js";
|
|
5
|
+
import { SimKmsKeyPolicy } from "./sim-kms-key-policy.js";
|
|
6
|
+
/**
|
|
7
|
+
* Builds simulated KMS keys, including their key material.
|
|
8
|
+
*
|
|
9
|
+
* Key creation has to assemble an identifier, an ARN, real AES key material
|
|
10
|
+
* and a policy that all agree with each other, so it happens in one place
|
|
11
|
+
* rather than at each call site that needs a key.
|
|
12
|
+
*/
|
|
13
|
+
export class SimKmsKeyFactory {
|
|
14
|
+
accountRegionScope;
|
|
15
|
+
clock;
|
|
16
|
+
blob = new SimKmsCiphertextBlob();
|
|
17
|
+
constructor(properties) {
|
|
18
|
+
this.accountRegionScope = properties.accountRegionScope;
|
|
19
|
+
this.clock = properties.clock;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Make a new key with fresh key material.
|
|
23
|
+
*
|
|
24
|
+
* Real key IDs are UUIDs, and code in the wild parses them that way, so
|
|
25
|
+
* these are real UUIDs rather than a shorter simulator-only identifier.
|
|
26
|
+
*/
|
|
27
|
+
make(properties = {}) {
|
|
28
|
+
const keyId = randomUUID();
|
|
29
|
+
const arn = `arn:aws:kms:${this.accountRegionScope.regionName}:${this.accountRegionScope.accountId}:key/${keyId}`;
|
|
30
|
+
return new SimKmsKey({
|
|
31
|
+
keyId,
|
|
32
|
+
accountRegionScope: this.accountRegionScope,
|
|
33
|
+
material: new SimKmsKeyMaterial({ keyArn: arn, blob: this.blob }),
|
|
34
|
+
policy: this.keyPolicy(arn, properties.policy),
|
|
35
|
+
creationDate: this.clock.now(),
|
|
36
|
+
description: properties.description,
|
|
37
|
+
keyManager: properties.keyManager,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
keyPolicy(keyArn, document) {
|
|
41
|
+
if (document === undefined) {
|
|
42
|
+
return SimKmsKeyPolicy.default(keyArn, this.accountRegionScope.accountId);
|
|
43
|
+
}
|
|
44
|
+
return new SimKmsKeyPolicy(keyArn, document);
|
|
45
|
+
}
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=sim-kms-key-factory.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-key-factory.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-factory.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAIzC,OAAO,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AACpE,OAAO,EAAE,SAAS,EAAyB,MAAM,kBAAkB,CAAC;AACpE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,MAAM,yBAAyB,CAAC;AAa1D;;;;;;GAMG;AACH,MAAM,OAAO,gBAAgB;IACV,kBAAkB,CAA2B;IAC7C,KAAK,CAAW;IAChB,IAAI,GAAG,IAAI,oBAAoB,EAAE,CAAC;IAEnD,YAAY,UAAsC;QAChD,IAAI,CAAC,kBAAkB,GAAG,UAAU,CAAC,kBAAkB,CAAC;QACxD,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,IAAI,CAAC,UAAU,GAA4B,EAAE;QAC3C,MAAM,KAAK,GAAG,UAAU,EAAE,CAAC;QAC3B,MAAM,GAAG,GAAG,eAAe,IAAI,CAAC,kBAAkB,CAAC,UAAU,IAAI,IAAI,CAAC,kBAAkB,CAAC,SAAS,QAAQ,KAAK,EAAE,CAAC;QAElH,OAAO,IAAI,SAAS,CAAC;YACnB,KAAK;YACL,kBAAkB,EAAE,IAAI,CAAC,kBAAkB;YAC3C,QAAQ,EAAE,IAAI,iBAAiB,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,CAAC,IAAI,EAAE,CAAC;YACjE,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,UAAU,CAAC,MAAM,CAAC;YAC9C,YAAY,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;YAC9B,WAAW,EAAE,UAAU,CAAC,WAAW;YACnC,UAAU,EAAE,UAAU,CAAC,UAAU;SAClC,CAAC,CAAC;IACL,CAAC;IAEO,SAAS,CACf,MAAc,EACd,QAA0C;QAE1C,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,kBAAkB,CAAC,SAAS,CAAC,CAAC;QAC5E,CAAC;QAED,OAAO,IAAI,eAAe,CAAC,MAAM,EAAE,QAAQ,CAAC,CAAC;IAC/C,CAAC;CACF"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
2
|
+
/**
|
|
3
|
+
* What a KeyId names: an alias, a key, or nothing this scope can resolve.
|
|
4
|
+
*/
|
|
5
|
+
export declare class SimKmsKeyIdentifier {
|
|
6
|
+
readonly aliasName: string | undefined;
|
|
7
|
+
readonly keyId: string | undefined;
|
|
8
|
+
private constructor();
|
|
9
|
+
/**
|
|
10
|
+
* An identifier naming nothing resolvable here.
|
|
11
|
+
*/
|
|
12
|
+
static none(): SimKmsKeyIdentifier;
|
|
13
|
+
/**
|
|
14
|
+
* An identifier naming an alias.
|
|
15
|
+
*/
|
|
16
|
+
static alias(aliasName: string): SimKmsKeyIdentifier;
|
|
17
|
+
/**
|
|
18
|
+
* An identifier naming a key.
|
|
19
|
+
*/
|
|
20
|
+
static key(keyId: string): SimKmsKeyIdentifier;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Reads the four forms of KeyId real KMS accepts, within one scope.
|
|
24
|
+
*
|
|
25
|
+
* A key ARN and an alias ARN both name an Account and a Region, and KMS keys
|
|
26
|
+
* are scoped to both. An ARN belonging to somewhere else therefore resolves to
|
|
27
|
+
* nothing here rather than having its identifier pulled out and looked up
|
|
28
|
+
* locally, which would let a foreign ARN reach a key that happens to share an
|
|
29
|
+
* identifier.
|
|
30
|
+
*/
|
|
31
|
+
export declare class SimKmsKeyIdentifierParser {
|
|
32
|
+
private readonly accountRegionScope;
|
|
33
|
+
constructor(accountRegionScope: SimAwsAccountRegionScope);
|
|
34
|
+
/**
|
|
35
|
+
* Read what a KeyId names.
|
|
36
|
+
*/
|
|
37
|
+
parse(keyId: string): SimKmsKeyIdentifier;
|
|
38
|
+
/**
|
|
39
|
+
* Read a key or alias ARN, refusing one belonging to another scope.
|
|
40
|
+
*/
|
|
41
|
+
private parseArn;
|
|
42
|
+
private parseArnResource;
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=sim-kms-key-identifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-key-identifier.d.ts","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-identifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAG1F;;GAEG;AACH,qBAAa,mBAAmB;IAC9B,SAAgB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9C,SAAgB,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAE1C,OAAO,eAMN;IAED;;OAEG;IACH,MAAM,CAAC,IAAI,IAAI,mBAAmB,CAEjC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,SAAS,EAAE,MAAM,GAAG,mBAAmB,CAEnD;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAE7C;CACF;AAED;;;;;;;;GAQG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAE9D,YAAY,kBAAkB,EAAE,wBAAwB,EAEvD;IAED;;OAEG;IACH,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,mBAAmB,CAUxC;IAED;;OAEG;IACH,OAAO,CAAC,QAAQ;IAgBhB,OAAO,CAAC,gBAAgB;CAazB"}
|
|
@@ -0,0 +1,81 @@
|
|
|
1
|
+
import { simKmsAliasPrefix } from "./sim-kms-alias.js";
|
|
2
|
+
/**
|
|
3
|
+
* What a KeyId names: an alias, a key, or nothing this scope can resolve.
|
|
4
|
+
*/
|
|
5
|
+
export class SimKmsKeyIdentifier {
|
|
6
|
+
aliasName;
|
|
7
|
+
keyId;
|
|
8
|
+
constructor(aliasName, keyId) {
|
|
9
|
+
this.aliasName = aliasName;
|
|
10
|
+
this.keyId = keyId;
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* An identifier naming nothing resolvable here.
|
|
14
|
+
*/
|
|
15
|
+
static none() {
|
|
16
|
+
return new SimKmsKeyIdentifier(undefined, undefined);
|
|
17
|
+
}
|
|
18
|
+
/**
|
|
19
|
+
* An identifier naming an alias.
|
|
20
|
+
*/
|
|
21
|
+
static alias(aliasName) {
|
|
22
|
+
return new SimKmsKeyIdentifier(aliasName, undefined);
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* An identifier naming a key.
|
|
26
|
+
*/
|
|
27
|
+
static key(keyId) {
|
|
28
|
+
return new SimKmsKeyIdentifier(undefined, keyId);
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
/**
|
|
32
|
+
* Reads the four forms of KeyId real KMS accepts, within one scope.
|
|
33
|
+
*
|
|
34
|
+
* A key ARN and an alias ARN both name an Account and a Region, and KMS keys
|
|
35
|
+
* are scoped to both. An ARN belonging to somewhere else therefore resolves to
|
|
36
|
+
* nothing here rather than having its identifier pulled out and looked up
|
|
37
|
+
* locally, which would let a foreign ARN reach a key that happens to share an
|
|
38
|
+
* identifier.
|
|
39
|
+
*/
|
|
40
|
+
export class SimKmsKeyIdentifierParser {
|
|
41
|
+
accountRegionScope;
|
|
42
|
+
constructor(accountRegionScope) {
|
|
43
|
+
this.accountRegionScope = accountRegionScope;
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Read what a KeyId names.
|
|
47
|
+
*/
|
|
48
|
+
parse(keyId) {
|
|
49
|
+
if (keyId.startsWith("arn:")) {
|
|
50
|
+
return this.parseArn(keyId);
|
|
51
|
+
}
|
|
52
|
+
if (keyId.startsWith(simKmsAliasPrefix)) {
|
|
53
|
+
return SimKmsKeyIdentifier.alias(keyId);
|
|
54
|
+
}
|
|
55
|
+
return SimKmsKeyIdentifier.key(keyId);
|
|
56
|
+
}
|
|
57
|
+
/**
|
|
58
|
+
* Read a key or alias ARN, refusing one belonging to another scope.
|
|
59
|
+
*/
|
|
60
|
+
parseArn(arn) {
|
|
61
|
+
const [, partition, service, regionName, accountId, ...rest] = arn.split(":");
|
|
62
|
+
if (partition !== "aws" ||
|
|
63
|
+
service !== "kms" ||
|
|
64
|
+
regionName !== this.accountRegionScope.regionName ||
|
|
65
|
+
accountId !== this.accountRegionScope.accountId) {
|
|
66
|
+
return SimKmsKeyIdentifier.none();
|
|
67
|
+
}
|
|
68
|
+
return this.parseArnResource(rest.join(":"));
|
|
69
|
+
}
|
|
70
|
+
parseArnResource(resource) {
|
|
71
|
+
if (resource.startsWith(simKmsAliasPrefix)) {
|
|
72
|
+
return SimKmsKeyIdentifier.alias(resource);
|
|
73
|
+
}
|
|
74
|
+
const keyId = /^key\/(.+)$/u.exec(resource)?.[1];
|
|
75
|
+
if (keyId === undefined) {
|
|
76
|
+
return SimKmsKeyIdentifier.none();
|
|
77
|
+
}
|
|
78
|
+
return SimKmsKeyIdentifier.key(keyId);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
//# sourceMappingURL=sim-kms-key-identifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-kms-key-identifier.js","sourceRoot":"","sources":["../../../../src/service/kms/key/sim-kms-key-identifier.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,oBAAoB,CAAC;AAEvD;;GAEG;AACH,MAAM,OAAO,mBAAmB;IACd,SAAS,CAAqB;IAC9B,KAAK,CAAqB;IAE1C,YACE,SAA6B,EAC7B,KAAyB;QAEzB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;QAC3B,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;IACrB,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,IAAI;QACT,OAAO,IAAI,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,SAAiB;QAC5B,OAAO,IAAI,mBAAmB,CAAC,SAAS,EAAE,SAAS,CAAC,CAAC;IACvD,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,GAAG,CAAC,KAAa;QACtB,OAAO,IAAI,mBAAmB,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IACnD,CAAC;CACF;AAED;;;;;;;;GAQG;AACH,MAAM,OAAO,yBAAyB;IACnB,kBAAkB,CAA2B;IAE9D,YAAY,kBAA4C;QACtD,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;IAC/C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,KAAa;QACjB,IAAI,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,EAAE,CAAC;YAC7B,OAAO,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC9B,CAAC;QAED,IAAI,KAAK,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACxC,OAAO,mBAAmB,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;QAC1C,CAAC;QAED,OAAO,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;IAED;;OAEG;IACK,QAAQ,CAAC,GAAW;QAC1B,MAAM,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,GAAG,IAAI,CAAC,GAC1D,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEjB,IACE,SAAS,KAAK,KAAK;YACnB,OAAO,KAAK,KAAK;YACjB,UAAU,KAAK,IAAI,CAAC,kBAAkB,CAAC,UAAU;YACjD,SAAS,KAAK,IAAI,CAAC,kBAAkB,CAAC,SAAS,EAC/C,CAAC;YACD,OAAO,mBAAmB,CAAC,IAAI,EAAE,CAAC;QACpC,CAAC;QAED,OAAO,IAAI,CAAC,gBAAgB,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAC/C,CAAC;IAEO,gBAAgB,CAAC,QAAgB;QACvC,IAAI,QAAQ,CAAC,UAAU,CAAC,iBAAiB,CAAC,EAAE,CAAC;YAC3C,OAAO,mBAAmB,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,KAAK,GAAG,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;QAEjD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,mBAAmB,CAAC,IAAI,EAAE,CAAC;QACpC,CAAC;QAED,OAAO,mBAAmB,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC;IACxC,CAAC;CACF"}
|