@kensio/yulin 0.37.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-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 +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/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-s3-public-access-block.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-access-block.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AACH,MAAM,WAAW,mCAAmC;IAClD,QAAQ,CAAC,eAAe,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAC/C,QAAQ,CAAC,gBAAgB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IAChD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;IACjD,QAAQ,CAAC,qBAAqB,CAAC,EAAE,OAAO,GAAG,SAAS,CAAC;CACtD;AAED;;;;;GAKG;AACH,MAAM,WAAW,8BAA8B;IAC7C,QAAQ,CAAC,eAAe,EAAE,OAAO,CAAC;IAClC,QAAQ,CAAC,gBAAgB,EAAE,OAAO,CAAC;IACnC,QAAQ,CAAC,iBAAiB,EAAE,OAAO,CAAC;IACpC,QAAQ,CAAC,qBAAqB,EAAE,OAAO,CAAC;CACzC;AAED;;;;;;;;;;;;;;;GAeG;AACH,qBAAa,sBAAsB;IAE/B,OAAO,CAAC,QAAQ,CAAC,QAAQ;IAD3B,OAAO,eAEH;IAEJ;;OAEG;IACH,MAAM,CAAC,WAAW,IAAI,sBAAsB,CAO3C;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,aAAa,EAAE,mCAAmC,GACjD,sBAAsB,CAOxB;IAED;;OAEG;IACH,kBAAkB,IAAI,OAAO,CAE5B;IAED;;OAEG;IACH,eAAe,IAAI,8BAA8B,CAEhD;CACF"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The S3 Block Public Access settings of one simulated Bucket.
|
|
3
|
+
*
|
|
4
|
+
* There are two distinct states here and they are not the same. A Bucket nobody
|
|
5
|
+
* has configured blocks everything, which is what real S3 does for every new
|
|
6
|
+
* Bucket. A Bucket someone has configured has exactly what they asked for: the
|
|
7
|
+
* configuration replaces the previous one wholesale, so a setting left out of
|
|
8
|
+
* it is off rather than inherited.
|
|
9
|
+
*
|
|
10
|
+
* That second rule matters more than it looks. CDK's `BlockPublicAccess.
|
|
11
|
+
* BLOCK_ACLS` sets only `blockPublicAcls` and `ignorePublicAcls`, leaving
|
|
12
|
+
* `BlockPublicPolicy` out of the synthesized template, and pairing it with
|
|
13
|
+
* `publicReadAccess` is the standard way to build a public website Bucket.
|
|
14
|
+
* Treating the omitted setting as enabled would refuse that template, which
|
|
15
|
+
* real AWS deploys without complaint.
|
|
16
|
+
*/
|
|
17
|
+
export class SimS3PublicAccessBlock {
|
|
18
|
+
settings;
|
|
19
|
+
constructor(settings) {
|
|
20
|
+
this.settings = settings;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* The all-blocked state a Bucket has until something configures it.
|
|
24
|
+
*/
|
|
25
|
+
static blockingAll() {
|
|
26
|
+
return new SimS3PublicAccessBlock({
|
|
27
|
+
BlockPublicAcls: true,
|
|
28
|
+
IgnorePublicAcls: true,
|
|
29
|
+
BlockPublicPolicy: true,
|
|
30
|
+
RestrictPublicBuckets: true,
|
|
31
|
+
});
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* A configuration exactly as supplied, with anything omitted turned off.
|
|
35
|
+
*/
|
|
36
|
+
static fromConfiguration(configuration) {
|
|
37
|
+
return new SimS3PublicAccessBlock({
|
|
38
|
+
BlockPublicAcls: configuration.BlockPublicAcls ?? false,
|
|
39
|
+
IgnorePublicAcls: configuration.IgnorePublicAcls ?? false,
|
|
40
|
+
BlockPublicPolicy: configuration.BlockPublicPolicy ?? false,
|
|
41
|
+
RestrictPublicBuckets: configuration.RestrictPublicBuckets ?? false,
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
/**
|
|
45
|
+
* Whether this Bucket refuses a Bucket policy that allows public access.
|
|
46
|
+
*/
|
|
47
|
+
blocksPublicPolicy() {
|
|
48
|
+
return this.settings.BlockPublicPolicy;
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* The configuration as an AWS-shaped record, for GetPublicAccessBlock.
|
|
52
|
+
*/
|
|
53
|
+
toConfiguration() {
|
|
54
|
+
return { ...this.settings };
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
//# sourceMappingURL=sim-s3-public-access-block.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-access-block.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-access-block.ts"],"names":[],"mappings":"AA0BA;;;;;;;;;;;;;;;GAeG;AACH,MAAM,OAAO,sBAAsB;IAEd,QAAQ;IAD3B,YACmB,QAAwC;wBAAxC,QAAQ;IACxB,CAAC;IAEJ;;OAEG;IACH,MAAM,CAAC,WAAW;QAChB,OAAO,IAAI,sBAAsB,CAAC;YAChC,eAAe,EAAE,IAAI;YACrB,gBAAgB,EAAE,IAAI;YACtB,iBAAiB,EAAE,IAAI;YACvB,qBAAqB,EAAE,IAAI;SAC5B,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,iBAAiB,CACtB,aAAkD;QAElD,OAAO,IAAI,sBAAsB,CAAC;YAChC,eAAe,EAAE,aAAa,CAAC,eAAe,IAAI,KAAK;YACvD,gBAAgB,EAAE,aAAa,CAAC,gBAAgB,IAAI,KAAK;YACzD,iBAAiB,EAAE,aAAa,CAAC,iBAAiB,IAAI,KAAK;YAC3D,qBAAqB,EAAE,aAAa,CAAC,qBAAqB,IAAI,KAAK;SACpE,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,kBAAkB;QAChB,OAAO,IAAI,CAAC,QAAQ,CAAC,iBAAiB,CAAC;IACzC,CAAC;IAED;;OAEG;IACH,eAAe;QACb,OAAO,EAAE,GAAG,IAAI,CAAC,QAAQ,EAAE,CAAC;IAC9B,CAAC;CACF"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { SimIamPolicyDocument } from "../../../iam/policy/sim-iam-policy.js";
|
|
2
|
+
import type { SimS3Bucket } from "../sim-s3-bucket.js";
|
|
3
|
+
/**
|
|
4
|
+
* Refuses a Bucket policy that the Bucket's Block Public Access settings do
|
|
5
|
+
* not allow.
|
|
6
|
+
*
|
|
7
|
+
* Real S3 applies this after deciding the caller may set a policy at all, so
|
|
8
|
+
* it refuses a policy the caller is otherwise entitled to apply. Enabling the
|
|
9
|
+
* setting later does not disturb a policy already stored: it governs what may
|
|
10
|
+
* be written, not what is already there.
|
|
11
|
+
*/
|
|
12
|
+
export declare class SimS3PublicPolicyGuard {
|
|
13
|
+
private readonly publicPolicy;
|
|
14
|
+
/**
|
|
15
|
+
* Throw when the Bucket blocks public policies and this document is one.
|
|
16
|
+
*/
|
|
17
|
+
guard(bucket: SimS3Bucket, document: SimIamPolicyDocument): void;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=sim-s3-public-policy-guard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-policy-guard.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-policy-guard.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAElF,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAGvD;;;;;;;;GAQG;AACH,qBAAa,sBAAsB;IACjC,OAAO,CAAC,QAAQ,CAAC,YAAY,CAA2B;IAExD;;OAEG;IACH,KAAK,CAAC,MAAM,EAAE,WAAW,EAAE,QAAQ,EAAE,oBAAoB,GAAG,IAAI,CAa/D;CACF"}
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { SimS3AccessDenied } from "../../error/sim-s3.error.js";
|
|
2
|
+
import { SimS3PublicPolicy } from "./sim-s3-public-policy.js";
|
|
3
|
+
/**
|
|
4
|
+
* Refuses a Bucket policy that the Bucket's Block Public Access settings do
|
|
5
|
+
* not allow.
|
|
6
|
+
*
|
|
7
|
+
* Real S3 applies this after deciding the caller may set a policy at all, so
|
|
8
|
+
* it refuses a policy the caller is otherwise entitled to apply. Enabling the
|
|
9
|
+
* setting later does not disturb a policy already stored: it governs what may
|
|
10
|
+
* be written, not what is already there.
|
|
11
|
+
*/
|
|
12
|
+
export class SimS3PublicPolicyGuard {
|
|
13
|
+
publicPolicy = new SimS3PublicPolicy();
|
|
14
|
+
/**
|
|
15
|
+
* Throw when the Bucket blocks public policies and this document is one.
|
|
16
|
+
*/
|
|
17
|
+
guard(bucket, document) {
|
|
18
|
+
if (!bucket.getPublicAccessBlock().blocksPublicPolicy()) {
|
|
19
|
+
return;
|
|
20
|
+
}
|
|
21
|
+
if (!this.publicPolicy.isPublic(document)) {
|
|
22
|
+
return;
|
|
23
|
+
}
|
|
24
|
+
throw new SimS3AccessDenied(`BlockPublicPolicy is enabled on S3 Bucket ${bucket.bucketName}, ` +
|
|
25
|
+
"so a Bucket policy allowing public access is refused");
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
//# sourceMappingURL=sim-s3-public-policy-guard.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-policy-guard.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-policy-guard.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,iBAAiB,EAAE,MAAM,6BAA6B,CAAC;AAEhE,OAAO,EAAE,iBAAiB,EAAE,MAAM,2BAA2B,CAAC;AAE9D;;;;;;;;GAQG;AACH,MAAM,OAAO,sBAAsB;IAChB,YAAY,GAAG,IAAI,iBAAiB,EAAE,CAAC;IAExD;;OAEG;IACH,KAAK,CAAC,MAAmB,EAAE,QAA8B;QACvD,IAAI,CAAC,MAAM,CAAC,oBAAoB,EAAE,CAAC,kBAAkB,EAAE,EAAE,CAAC;YACxD,OAAO;QACT,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,YAAY,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,MAAM,IAAI,iBAAiB,CACzB,6CAA6C,MAAM,CAAC,UAAU,IAAI;YAChE,sDAAsD,CACzD,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { SimIamPolicyDocument } from "../../../iam/policy/sim-iam-policy.js";
|
|
2
|
+
/**
|
|
3
|
+
* Decides whether a Bucket policy allows public access, which is what S3 Block
|
|
4
|
+
* Public Access judges a PutBucketPolicy call against.
|
|
5
|
+
*
|
|
6
|
+
* Real S3 starts by assuming a policy is public and looks for a reason it is
|
|
7
|
+
* not: a statement qualifies as non-public only when it grants access to fixed
|
|
8
|
+
* values. The simulator follows the same direction, so anything it cannot
|
|
9
|
+
* classify stays public and gets refused.
|
|
10
|
+
*/
|
|
11
|
+
export declare class SimS3PublicPolicy {
|
|
12
|
+
/**
|
|
13
|
+
* Whether any statement in the document grants public access.
|
|
14
|
+
*/
|
|
15
|
+
isPublic(document: SimIamPolicyDocument): boolean;
|
|
16
|
+
private statementIsPublic;
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=sim-s3-public-policy.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-policy.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-policy.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,oBAAoB,EAErB,MAAM,uCAAuC,CAAC;AAI/C;;;;;;;;GAQG;AACH,qBAAa,iBAAiB;IAC5B;;OAEG;IACH,QAAQ,CAAC,QAAQ,EAAE,oBAAoB,GAAG,OAAO,CAIhD;IAED,OAAO,CAAC,iBAAiB;CAiB1B"}
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { simIamPolicyDocumentStatements } from "../../../iam/policy/sim-iam-pol-document-statements.js";
|
|
2
|
+
import { simS3ConditionPinsPrincipal } from "./sim-s3-pinning-condition.js";
|
|
3
|
+
import { simS3PrincipalIsWildcard } from "./sim-s3-public-principal.js";
|
|
4
|
+
/**
|
|
5
|
+
* Decides whether a Bucket policy allows public access, which is what S3 Block
|
|
6
|
+
* Public Access judges a PutBucketPolicy call against.
|
|
7
|
+
*
|
|
8
|
+
* Real S3 starts by assuming a policy is public and looks for a reason it is
|
|
9
|
+
* not: a statement qualifies as non-public only when it grants access to fixed
|
|
10
|
+
* values. The simulator follows the same direction, so anything it cannot
|
|
11
|
+
* classify stays public and gets refused.
|
|
12
|
+
*/
|
|
13
|
+
export class SimS3PublicPolicy {
|
|
14
|
+
/**
|
|
15
|
+
* Whether any statement in the document grants public access.
|
|
16
|
+
*/
|
|
17
|
+
isPublic(document) {
|
|
18
|
+
return simIamPolicyDocumentStatements(document).some((statement) => this.statementIsPublic(statement));
|
|
19
|
+
}
|
|
20
|
+
statementIsPublic(statement) {
|
|
21
|
+
if (statement.Effect !== "Allow") {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
// NotPrincipal grants to everyone except the listed identities, which is
|
|
25
|
+
// public by any reading.
|
|
26
|
+
if (statement.NotPrincipal !== undefined) {
|
|
27
|
+
return true;
|
|
28
|
+
}
|
|
29
|
+
if (!simS3PrincipalIsWildcard(statement.Principal)) {
|
|
30
|
+
return false;
|
|
31
|
+
}
|
|
32
|
+
return !simS3ConditionPinsPrincipal(statement.Condition);
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
//# sourceMappingURL=sim-s3-public-policy.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-policy.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-policy.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,8BAA8B,EAAE,MAAM,wDAAwD,CAAC;AAKxG,OAAO,EAAE,2BAA2B,EAAE,MAAM,+BAA+B,CAAC;AAC5E,OAAO,EAAE,wBAAwB,EAAE,MAAM,8BAA8B,CAAC;AAExE;;;;;;;;GAQG;AACH,MAAM,OAAO,iBAAiB;IAC5B;;OAEG;IACH,QAAQ,CAAC,QAA8B;QACrC,OAAO,8BAA8B,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CACjE,IAAI,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAClC,CAAC;IACJ,CAAC;IAEO,iBAAiB,CAAC,SAAwC;QAChE,IAAI,SAAS,CAAC,MAAM,KAAK,OAAO,EAAE,CAAC;YACjC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,yEAAyE;QACzE,yBAAyB;QACzB,IAAI,SAAS,CAAC,YAAY,KAAK,SAAS,EAAE,CAAC;YACzC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC,wBAAwB,CAAC,SAAS,CAAC,SAAS,CAAC,EAAE,CAAC;YACnD,OAAO,KAAK,CAAC;QACf,CAAC;QAED,OAAO,CAAC,2BAA2B,CAAC,SAAS,CAAC,SAAS,CAAC,CAAC;IAC3D,CAAC;CACF"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { SimIamPolicyDocumentPrincipal } from "../../../iam/policy/sim-iam-policy.js";
|
|
2
|
+
/**
|
|
3
|
+
* Whether a policy statement Principal names everyone rather than fixed
|
|
4
|
+
* identities.
|
|
5
|
+
*
|
|
6
|
+
* Only the `AWS` principal type can be a wildcard that opens a Bucket to the
|
|
7
|
+
* world. A `Service`, `Federated` or `CanonicalUser` principal names something
|
|
8
|
+
* specific, so a statement granting one of those is not public.
|
|
9
|
+
*/
|
|
10
|
+
export declare function simS3PrincipalIsWildcard(principal: SimIamPolicyDocumentPrincipal | undefined): boolean;
|
|
11
|
+
//# sourceMappingURL=sim-s3-public-principal.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-principal.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-principal.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,6BAA6B,EAE9B,MAAM,uCAAuC,CAAC;AAE/C;;;;;;;GAOG;AACH,wBAAgB,wBAAwB,CACtC,SAAS,EAAE,6BAA6B,GAAG,SAAS,GACnD,OAAO,CAkBT"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Whether a policy statement Principal names everyone rather than fixed
|
|
3
|
+
* identities.
|
|
4
|
+
*
|
|
5
|
+
* Only the `AWS` principal type can be a wildcard that opens a Bucket to the
|
|
6
|
+
* world. A `Service`, `Federated` or `CanonicalUser` principal names something
|
|
7
|
+
* specific, so a statement granting one of those is not public.
|
|
8
|
+
*/
|
|
9
|
+
export function simS3PrincipalIsWildcard(principal) {
|
|
10
|
+
if (principal === undefined) {
|
|
11
|
+
// A Bucket policy statement must name a Principal. One that does not is
|
|
12
|
+
// not something the simulator can classify, so it counts as public.
|
|
13
|
+
return true;
|
|
14
|
+
}
|
|
15
|
+
if (typeof principal === "string") {
|
|
16
|
+
return principal === "*";
|
|
17
|
+
}
|
|
18
|
+
if (Array.isArray(principal)) {
|
|
19
|
+
return principal.includes("*");
|
|
20
|
+
}
|
|
21
|
+
return awsPrincipalIsWildcard(principal);
|
|
22
|
+
}
|
|
23
|
+
function awsPrincipalIsWildcard(principal) {
|
|
24
|
+
for (const [principalType, value] of Object.entries(principal)) {
|
|
25
|
+
if (principalType.toLowerCase() !== "aws") {
|
|
26
|
+
continue;
|
|
27
|
+
}
|
|
28
|
+
if (typeof value === "string" ? value === "*" : value.includes("*")) {
|
|
29
|
+
return true;
|
|
30
|
+
}
|
|
31
|
+
}
|
|
32
|
+
return false;
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=sim-s3-public-principal.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-principal.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/public-access/sim-s3-public-principal.ts"],"names":[],"mappings":"AAKA;;;;;;;GAOG;AACH,MAAM,UAAU,wBAAwB,CACtC,SAAoD;IAEpD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,wEAAwE;QACxE,oEAAoE;QACpE,OAAO,IAAI,CAAC;IACd,CAAC;IAED,IAAI,OAAO,SAAS,KAAK,QAAQ,EAAE,CAAC;QAClC,OAAO,SAAS,KAAK,GAAG,CAAC;IAC3B,CAAC;IAED,IAAI,KAAK,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC7B,OAAO,SAAS,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC;IACjC,CAAC;IAED,OAAO,sBAAsB,CAC3B,SAAgD,CACjD,CAAC;AACJ,CAAC;AAED,SAAS,sBAAsB,CAC7B,SAA8C;IAE9C,KAAK,MAAM,CAAC,aAAa,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,SAAS,CAAC,EAAE,CAAC;QAC/D,IAAI,aAAa,CAAC,WAAW,EAAE,KAAK,KAAK,EAAE,CAAC;YAC1C,SAAS;QACX,CAAC;QAED,IAAI,OAAO,KAAK,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,KAAK,GAAG,CAAC,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;YACpE,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAED,OAAO,KAAK,CAAC;AACf,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import type { SimS3BucketName } from "./sim-s3-bucket.js";
|
|
2
|
+
/**
|
|
3
|
+
* The ARN of a simulated S3 Bucket.
|
|
4
|
+
*
|
|
5
|
+
* S3 Bucket ARNs name no Account and no Region, because Bucket names are
|
|
6
|
+
* globally unique in S3. Object ARNs are this with `/<key>` appended.
|
|
7
|
+
*/
|
|
8
|
+
export declare function simS3BucketArn(bucketName: SimS3BucketName | string): string;
|
|
9
|
+
//# sourceMappingURL=sim-s3-bucket-arn.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-bucket-arn.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket-arn.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,GAAG,MAAM,CAE3E"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The ARN of a simulated S3 Bucket.
|
|
3
|
+
*
|
|
4
|
+
* S3 Bucket ARNs name no Account and no Region, because Bucket names are
|
|
5
|
+
* globally unique in S3. Object ARNs are this with `/<key>` appended.
|
|
6
|
+
*/
|
|
7
|
+
export function simS3BucketArn(bucketName) {
|
|
8
|
+
return `arn:aws:s3:::${bucketName}`;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=sim-s3-bucket-arn.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-bucket-arn.js","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket-arn.ts"],"names":[],"mappings":"AAEA;;;;;GAKG;AACH,MAAM,UAAU,cAAc,CAAC,UAAoC;IACjE,OAAO,gBAAgB,UAAU,EAAE,CAAC;AACtC,CAAC"}
|
|
@@ -2,6 +2,7 @@ import type { Brand } from "../../../util/brand.type.js";
|
|
|
2
2
|
import type { SimS3BucketStorage } from "../storage/s3-bucket-storage.js";
|
|
3
3
|
import type { SimS3Object } from "../object/s3-object.js";
|
|
4
4
|
import { SimS3BucketWebsite } from "./website/sim-s3-bucket-website.js";
|
|
5
|
+
import { SimS3PublicAccessBlock } from "./public-access/sim-s3-public-access-block.js";
|
|
5
6
|
import type { SimAwsAccountRegionScope } from "../../aws/sim-aws-account-region-scope.js";
|
|
6
7
|
import type { SimIamPolicyDocument } from "../../iam/policy/sim-iam-policy.js";
|
|
7
8
|
export type SimS3BucketName = Brand<string, "SimS3BucketName">;
|
|
@@ -11,6 +12,7 @@ interface SimS3BucketProperties {
|
|
|
11
12
|
readonly storage?: SimS3BucketStorage;
|
|
12
13
|
readonly website?: SimS3BucketWebsite;
|
|
13
14
|
readonly policy?: SimIamPolicyDocument | undefined;
|
|
15
|
+
readonly publicAccessBlock?: SimS3PublicAccessBlock;
|
|
14
16
|
}
|
|
15
17
|
/**
|
|
16
18
|
* Simulated S3 Bucket.
|
|
@@ -21,6 +23,7 @@ export declare class SimS3Bucket {
|
|
|
21
23
|
private storage;
|
|
22
24
|
private website;
|
|
23
25
|
private policy;
|
|
26
|
+
private publicAccessBlock;
|
|
24
27
|
constructor(properties: SimS3BucketProperties);
|
|
25
28
|
/**
|
|
26
29
|
* Put a simulated S3 Object into storage.
|
|
@@ -54,6 +57,28 @@ export declare class SimS3Bucket {
|
|
|
54
57
|
* Get the Bucket resource policy.
|
|
55
58
|
*/
|
|
56
59
|
getPolicy(): SimIamPolicyDocument | undefined;
|
|
60
|
+
/**
|
|
61
|
+
* Remove the Bucket resource policy.
|
|
62
|
+
*
|
|
63
|
+
* Real S3 DeleteBucketPolicy is idempotent, so this reports nothing about
|
|
64
|
+
* whether there was a policy to remove.
|
|
65
|
+
*/
|
|
66
|
+
deletePolicy(): void;
|
|
67
|
+
/**
|
|
68
|
+
* Replace this Bucket's Block Public Access settings.
|
|
69
|
+
*/
|
|
70
|
+
configurePublicAccessBlock(publicAccessBlock: SimS3PublicAccessBlock): void;
|
|
71
|
+
/**
|
|
72
|
+
* Get this Bucket's Block Public Access settings.
|
|
73
|
+
*/
|
|
74
|
+
getPublicAccessBlock(): SimS3PublicAccessBlock;
|
|
75
|
+
/**
|
|
76
|
+
* Remove this Bucket's Block Public Access settings.
|
|
77
|
+
*
|
|
78
|
+
* Removing the configuration returns the Bucket to the all-enabled state a
|
|
79
|
+
* new Bucket starts in, rather than leaving it unprotected.
|
|
80
|
+
*/
|
|
81
|
+
deletePublicAccessBlock(): void;
|
|
57
82
|
/**
|
|
58
83
|
* Get the simulated AWS account Region scope for this Bucket.
|
|
59
84
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-bucket.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAK/E,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAE/D,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-s3-bucket.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,6BAA6B,CAAC;AACzD,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AAE1D,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AACvF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,2CAA2C,CAAC;AAC1F,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,oCAAoC,CAAC;AAK/E,MAAM,MAAM,eAAe,GAAG,KAAK,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;AAE/D,UAAU,qBAAqB;IAC7B,QAAQ,CAAC,UAAU,EAAE,eAAe,GAAG,MAAM,CAAC;IAC9C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,OAAO,CAAC,EAAE,kBAAkB,CAAC;IACtC,QAAQ,CAAC,MAAM,CAAC,EAAE,oBAAoB,GAAG,SAAS,CAAC;IACnD,QAAQ,CAAC,iBAAiB,CAAC,EAAE,sBAAsB,CAAC;CACrD;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB,SAAgB,UAAU,EAAE,eAAe,CAAC;IAE5C,OAAO,CAAC,QAAQ,CAAC,kBAAkB,CAA2B;IAC9D,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,OAAO,CAAqB;IACpC,OAAO,CAAC,MAAM,CAAmC;IACjD,OAAO,CAAC,iBAAiB,CAAyB;IAElD,YAAY,UAAU,EAAE,qBAAqB,EAkB5C;IAED;;OAEG;IACG,SAAS,CAAC,MAAM,EAAE,WAAW,GAAG,OAAO,CAAC,IAAI,CAAC,CAElD;IAED;;OAEG;IACG,SAAS,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,SAAS,CAAC,CAE7D;IAED;;OAEG;IACG,WAAW,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC,CAEzD;IAED;;OAEG;IACH,mBAAmB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAErD;IAED;;OAEG;IACH,gBAAgB,CAAC,OAAO,EAAE,kBAAkB,GAAG,IAAI,CAElD;IAED;;OAEG;IACH,UAAU,IAAI,kBAAkB,CAE/B;IAED;;OAEG;IACH,eAAe,CAAC,MAAM,EAAE,oBAAoB,GAAG,IAAI,CAElD;IAED;;OAEG;IACH,SAAS,IAAI,oBAAoB,GAAG,SAAS,CAE5C;IAED;;;;;OAKG;IACH,YAAY,IAAI,IAAI,CAEnB;IAED;;OAEG;IACH,0BAA0B,CAAC,iBAAiB,EAAE,sBAAsB,GAAG,IAAI,CAE1E;IAED;;OAEG;IACH,oBAAoB,IAAI,sBAAsB,CAE7C;IAED;;;;;OAKG;IACH,uBAAuB,IAAI,IAAI,CAE9B;IAED;;OAEG;IACH,qBAAqB,IAAI,wBAAwB,CAEhD;IAED;;OAEG;IACH,aAAa,IAAI,GAAG,CAMnB;CACF"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { MemoryS3BucketStorage } from "../storage/s3-memory-storage.js";
|
|
2
2
|
import { SimS3BucketWebsite } from "./website/sim-s3-bucket-website.js";
|
|
3
|
+
import { SimS3PublicAccessBlock } from "./public-access/sim-s3-public-access-block.js";
|
|
3
4
|
import { simS3BucketWebsiteUrl } from "./website/sim-s3-bucket-website-url.js";
|
|
4
5
|
import { validateS3BucketName } from "./validate/validate-s3-bucket-name.js";
|
|
5
6
|
import { simAwsAccountRegionScopeFactory } from "../../aws/sim-aws-account-region-scope.factory.js";
|
|
@@ -12,14 +13,16 @@ export class SimS3Bucket {
|
|
|
12
13
|
storage;
|
|
13
14
|
website;
|
|
14
15
|
policy;
|
|
16
|
+
publicAccessBlock;
|
|
15
17
|
constructor(properties) {
|
|
16
|
-
const { bucketName, accountRegionScope = simAwsAccountRegionScopeFactory.make(), storage = new MemoryS3BucketStorage(), website = new SimS3BucketWebsite(), policy, } = properties;
|
|
18
|
+
const { bucketName, accountRegionScope = simAwsAccountRegionScopeFactory.make(), storage = new MemoryS3BucketStorage(), website = new SimS3BucketWebsite(), policy, publicAccessBlock = SimS3PublicAccessBlock.blockingAll(), } = properties;
|
|
17
19
|
validateS3BucketName(bucketName);
|
|
18
20
|
this.bucketName = bucketName;
|
|
19
21
|
this.accountRegionScope = accountRegionScope;
|
|
20
22
|
this.storage = storage;
|
|
21
23
|
this.website = website;
|
|
22
24
|
this.policy = policy;
|
|
25
|
+
this.publicAccessBlock = publicAccessBlock;
|
|
23
26
|
}
|
|
24
27
|
/**
|
|
25
28
|
* Put a simulated S3 Object into storage.
|
|
@@ -69,6 +72,36 @@ export class SimS3Bucket {
|
|
|
69
72
|
getPolicy() {
|
|
70
73
|
return this.policy;
|
|
71
74
|
}
|
|
75
|
+
/**
|
|
76
|
+
* Remove the Bucket resource policy.
|
|
77
|
+
*
|
|
78
|
+
* Real S3 DeleteBucketPolicy is idempotent, so this reports nothing about
|
|
79
|
+
* whether there was a policy to remove.
|
|
80
|
+
*/
|
|
81
|
+
deletePolicy() {
|
|
82
|
+
this.policy = undefined;
|
|
83
|
+
}
|
|
84
|
+
/**
|
|
85
|
+
* Replace this Bucket's Block Public Access settings.
|
|
86
|
+
*/
|
|
87
|
+
configurePublicAccessBlock(publicAccessBlock) {
|
|
88
|
+
this.publicAccessBlock = publicAccessBlock;
|
|
89
|
+
}
|
|
90
|
+
/**
|
|
91
|
+
* Get this Bucket's Block Public Access settings.
|
|
92
|
+
*/
|
|
93
|
+
getPublicAccessBlock() {
|
|
94
|
+
return this.publicAccessBlock;
|
|
95
|
+
}
|
|
96
|
+
/**
|
|
97
|
+
* Remove this Bucket's Block Public Access settings.
|
|
98
|
+
*
|
|
99
|
+
* Removing the configuration returns the Bucket to the all-enabled state a
|
|
100
|
+
* new Bucket starts in, rather than leaving it unprotected.
|
|
101
|
+
*/
|
|
102
|
+
deletePublicAccessBlock() {
|
|
103
|
+
this.publicAccessBlock = SimS3PublicAccessBlock.blockingAll();
|
|
104
|
+
}
|
|
72
105
|
/**
|
|
73
106
|
* Get the simulated AWS account Region scope for this Bucket.
|
|
74
107
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-s3-bucket.js","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-s3-bucket.js","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-bucket.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,qBAAqB,EAAE,MAAM,iCAAiC,CAAC;AACxE,OAAO,EAAE,kBAAkB,EAAE,MAAM,oCAAoC,CAAC;AACxE,OAAO,EAAE,sBAAsB,EAAE,MAAM,+CAA+C,CAAC;AAGvF,OAAO,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AAC/E,OAAO,EAAE,oBAAoB,EAAE,MAAM,uCAAuC,CAAC;AAC7E,OAAO,EAAE,+BAA+B,EAAE,MAAM,mDAAmD,CAAC;AAapG;;GAEG;AACH,MAAM,OAAO,WAAW;IACN,UAAU,CAAkB;IAE3B,kBAAkB,CAA2B;IACtD,OAAO,CAAqB;IAC5B,OAAO,CAAqB;IAC5B,MAAM,CAAmC;IACzC,iBAAiB,CAAyB;IAElD,YAAY,UAAiC;QAC3C,MAAM,EACJ,UAAU,EACV,kBAAkB,GAAG,+BAA+B,CAAC,IAAI,EAAE,EAC3D,OAAO,GAAG,IAAI,qBAAqB,EAAE,EACrC,OAAO,GAAG,IAAI,kBAAkB,EAAE,EAClC,MAAM,EACN,iBAAiB,GAAG,sBAAsB,CAAC,WAAW,EAAE,GACzD,GAAG,UAAU,CAAC;QAEf,oBAAoB,CAAC,UAAU,CAAC,CAAC;QAEjC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,kBAAkB,GAAG,kBAAkB,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;QACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;QACrB,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,MAAmB;QACjC,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;IACvC,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,SAAS,CAAC,GAAW;QACzB,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,GAAG,CAAC,CAAC;IAC3C,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,WAAW,CAAC,MAAe;QAC/B,OAAO,MAAM,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC,MAAM,CAAC,CAAC;IAChD,CAAC;IAED;;OAEG;IACH,mBAAmB,CAAC,OAA2B;QAC7C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,gBAAgB,CAAC,OAA2B;QAC1C,IAAI,CAAC,OAAO,GAAG,OAAO,CAAC;IACzB,CAAC;IAED;;OAEG;IACH,UAAU;QACR,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,MAA4B;QAC1C,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;IAED;;OAEG;IACH,SAAS;QACP,OAAO,IAAI,CAAC,MAAM,CAAC;IACrB,CAAC;IAED;;;;;OAKG;IACH,YAAY;QACV,IAAI,CAAC,MAAM,GAAG,SAAS,CAAC;IAC1B,CAAC;IAED;;OAEG;IACH,0BAA0B,CAAC,iBAAyC;QAClE,IAAI,CAAC,iBAAiB,GAAG,iBAAiB,CAAC;IAC7C,CAAC;IAED;;OAEG;IACH,oBAAoB;QAClB,OAAO,IAAI,CAAC,iBAAiB,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,uBAAuB;QACrB,IAAI,CAAC,iBAAiB,GAAG,sBAAsB,CAAC,WAAW,EAAE,CAAC;IAChE,CAAC;IAED;;OAEG;IACH,qBAAqB;QACnB,OAAO,IAAI,CAAC,kBAAkB,CAAC;IACjC,CAAC;IAED;;OAEG;IACH,aAAa;QACX,OAAO,qBAAqB,CAC1B,IAAI,CAAC,UAAU,EACf,IAAI,CAAC,kBAAkB,EACvB,IAAI,CAAC,OAAO,CACb,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import type { AwsRegionName } from "../../aws/sim-aws-region.js";
|
|
2
|
+
import type { SimS3BucketName } from "./sim-s3-bucket.js";
|
|
3
|
+
/**
|
|
4
|
+
* The simulated S3 REST API endpoint for a Region.
|
|
5
|
+
*
|
|
6
|
+
* This is the URL an AWS SDK client is pointed at, and the client adds the
|
|
7
|
+
* Bucket to it for itself, as it does against real S3. Handing out the service
|
|
8
|
+
* endpoint rather than a Bucket one is therefore what lets the real SDK, and
|
|
9
|
+
* the real presigner, build simulated S3 URLs without being told how.
|
|
10
|
+
*/
|
|
11
|
+
export declare function simS3ServiceUrl(regionName: AwsRegionName): URL;
|
|
12
|
+
/**
|
|
13
|
+
* The simulated S3 REST API endpoint for one Bucket, in virtual-hosted style.
|
|
14
|
+
*/
|
|
15
|
+
export declare function simS3BucketUrl(bucketName: SimS3BucketName, regionName: AwsRegionName): URL;
|
|
16
|
+
//# sourceMappingURL=sim-s3-endpoint-url.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-endpoint-url.d.ts","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-endpoint-url.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACjE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAE1D;;;;;;;GAOG;AACH,wBAAgB,eAAe,CAAC,UAAU,EAAE,aAAa,GAAG,GAAG,CAE9D;AAED;;GAEG;AACH,wBAAgB,cAAc,CAC5B,UAAU,EAAE,eAAe,EAC3B,UAAU,EAAE,aAAa,GACxB,GAAG,CAIL"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { simAwsLocalConfig } from "../../../serve/http/local-server/sim-aws-local.config.js";
|
|
2
|
+
/**
|
|
3
|
+
* The simulated S3 REST API endpoint for a Region.
|
|
4
|
+
*
|
|
5
|
+
* This is the URL an AWS SDK client is pointed at, and the client adds the
|
|
6
|
+
* Bucket to it for itself, as it does against real S3. Handing out the service
|
|
7
|
+
* endpoint rather than a Bucket one is therefore what lets the real SDK, and
|
|
8
|
+
* the real presigner, build simulated S3 URLs without being told how.
|
|
9
|
+
*/
|
|
10
|
+
export function simS3ServiceUrl(regionName) {
|
|
11
|
+
return new URL(`http://s3.${regionName}.${simAwsLocalConfig.hostname}/`);
|
|
12
|
+
}
|
|
13
|
+
/**
|
|
14
|
+
* The simulated S3 REST API endpoint for one Bucket, in virtual-hosted style.
|
|
15
|
+
*/
|
|
16
|
+
export function simS3BucketUrl(bucketName, regionName) {
|
|
17
|
+
return new URL(`http://${bucketName}.s3.${regionName}.${simAwsLocalConfig.hostname}/`);
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=sim-s3-endpoint-url.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-endpoint-url.js","sourceRoot":"","sources":["../../../../src/service/s3/bucket/sim-s3-endpoint-url.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,0DAA0D,CAAC;AAI7F;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,UAAyB;IACvD,OAAO,IAAI,GAAG,CAAC,aAAa,UAAU,IAAI,iBAAiB,CAAC,QAAQ,GAAG,CAAC,CAAC;AAC3E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,UAA2B,EAC3B,UAAyB;IAEzB,OAAO,IAAI,GAAG,CACZ,UAAU,UAAU,OAAO,UAAU,IAAI,iBAAiB,CAAC,QAAQ,GAAG,CACvE,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { SimS3 } from "../../sim-s3.js";
|
|
2
|
+
/**
|
|
3
|
+
* Make a Bucket's Objects publicly readable, as a static website Bucket must
|
|
4
|
+
* be.
|
|
5
|
+
*
|
|
6
|
+
* Real S3 serves a website endpoint only what the Bucket policy has made
|
|
7
|
+
* readable, and blocks a public Bucket policy on a new Bucket, so a website
|
|
8
|
+
* needs both steps. This issues exactly the two commands a real deployment
|
|
9
|
+
* issues rather than reaching around them, so a test using it exercises the
|
|
10
|
+
* same path a user's own setup would.
|
|
11
|
+
*/
|
|
12
|
+
export declare function grantPublicWebsiteRead(simS3: SimS3, bucketName: string): Promise<void>;
|
|
13
|
+
//# sourceMappingURL=sim-s3-public-website.fixture.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-website.fixture.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/website/sim-s3-public-website.fixture.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAE7C;;;;;;;;;GASG;AACH,wBAAsB,sBAAsB,CAC1C,KAAK,EAAE,KAAK,EACZ,UAAU,EAAE,MAAM,GACjB,OAAO,CAAC,IAAI,CAAC,CAyBf"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Make a Bucket's Objects publicly readable, as a static website Bucket must
|
|
3
|
+
* be.
|
|
4
|
+
*
|
|
5
|
+
* Real S3 serves a website endpoint only what the Bucket policy has made
|
|
6
|
+
* readable, and blocks a public Bucket policy on a new Bucket, so a website
|
|
7
|
+
* needs both steps. This issues exactly the two commands a real deployment
|
|
8
|
+
* issues rather than reaching around them, so a test using it exercises the
|
|
9
|
+
* same path a user's own setup would.
|
|
10
|
+
*/
|
|
11
|
+
export async function grantPublicWebsiteRead(simS3, bucketName) {
|
|
12
|
+
await simS3.putPublicAccessBlock({
|
|
13
|
+
input: {
|
|
14
|
+
Bucket: bucketName,
|
|
15
|
+
PublicAccessBlockConfiguration: {
|
|
16
|
+
BlockPublicAcls: true,
|
|
17
|
+
IgnorePublicAcls: true,
|
|
18
|
+
},
|
|
19
|
+
},
|
|
20
|
+
});
|
|
21
|
+
await simS3.putBucketPolicy({
|
|
22
|
+
input: {
|
|
23
|
+
Bucket: bucketName,
|
|
24
|
+
Policy: JSON.stringify({
|
|
25
|
+
Version: "2012-10-17",
|
|
26
|
+
Statement: {
|
|
27
|
+
Effect: "Allow",
|
|
28
|
+
Principal: "*",
|
|
29
|
+
Action: "s3:GetObject",
|
|
30
|
+
Resource: `arn:aws:s3:::${bucketName}/*`,
|
|
31
|
+
},
|
|
32
|
+
}),
|
|
33
|
+
},
|
|
34
|
+
});
|
|
35
|
+
}
|
|
36
|
+
//# sourceMappingURL=sim-s3-public-website.fixture.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-s3-public-website.fixture.js","sourceRoot":"","sources":["../../../../../src/service/s3/bucket/website/sim-s3-public-website.fixture.ts"],"names":[],"mappings":"AAEA;;;;;;;;;GASG;AACH,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,KAAY,EACZ,UAAkB;IAElB,MAAM,KAAK,CAAC,oBAAoB,CAAC;QAC/B,KAAK,EAAE;YACL,MAAM,EAAE,UAAU;YAClB,8BAA8B,EAAE;gBAC9B,eAAe,EAAE,IAAI;gBACrB,gBAAgB,EAAE,IAAI;aACvB;SACF;KACF,CAAC,CAAC;IAEH,MAAM,KAAK,CAAC,eAAe,CAAC;QAC1B,KAAK,EAAE;YACL,MAAM,EAAE,UAAU;YAClB,MAAM,EAAE,IAAI,CAAC,SAAS,CAAC;gBACrB,OAAO,EAAE,YAAY;gBACrB,SAAS,EAAE;oBACT,MAAM,EAAE,OAAO;oBACf,SAAS,EAAE,GAAG;oBACd,MAAM,EAAE,cAAc;oBACtB,QAAQ,EAAE,gBAAgB,UAAU,IAAI;iBACzC;aACF,CAAC;SACH;KACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
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 { SimS3 } from "../../sim-s3.js";
|
|
4
|
+
import type { SimS3Bucket } from "../../bucket/sim-s3-bucket.js";
|
|
5
|
+
interface SimCfnS3BucketCreatorProperties {
|
|
6
|
+
readonly simS3: SimS3;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Creates simulated S3 Buckets from AWS::S3::Bucket CloudFormation Resources.
|
|
10
|
+
*/
|
|
11
|
+
export declare class SimCfnS3BucketCreator {
|
|
12
|
+
private readonly simS3;
|
|
13
|
+
constructor(properties: SimCfnS3BucketCreatorProperties);
|
|
14
|
+
/**
|
|
15
|
+
* Create a simulated Bucket, with its website configuration when declared.
|
|
16
|
+
*/
|
|
17
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimS3Bucket>;
|
|
18
|
+
/**
|
|
19
|
+
* Read PublicAccessBlockConfiguration, which a template uses to open a
|
|
20
|
+
* Bucket up from the all-blocked state a new Bucket starts in.
|
|
21
|
+
*/
|
|
22
|
+
private publicAccessConfigurationForResource;
|
|
23
|
+
private bucketNameForResource;
|
|
24
|
+
private websiteConfigurationForResource;
|
|
25
|
+
}
|
|
26
|
+
export {};
|
|
27
|
+
//# sourceMappingURL=sim-cfn-s3-bucket-creator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-s3-bucket-creator.d.ts","sourceRoot":"","sources":["../../../../../src/service/s3/cfn/bucket/sim-cfn-s3-bucket-creator.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAC7C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,+BAA+B,CAAC;AAMjE,UAAU,+BAA+B;IACvC,QAAQ,CAAC,KAAK,EAAE,KAAK,CAAC;CACvB;AAED;;GAEG;AACH,qBAAa,qBAAqB;IAChC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAQ;IAE9B,YAAY,UAAU,EAAE,+BAA+B,EAEtD;IAED;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,WAAW,CAAC,CAwCtB;IAED;;;OAGG;IACH,OAAO,CAAC,oCAAoC;IAiB5C,OAAO,CAAC,qBAAqB;IAa7B,OAAO,CAAC,+BAA+B;CAqCxC"}
|