@kensio/yulin 0.35.0 → 0.37.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/README.md +37 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/index.js.map +1 -1
- package/dist/serve/controller/factory/sim-aws-service-controller-factory.d.ts.map +1 -1
- package/dist/serve/controller/factory/sim-aws-service-controller-factory.js +4 -0
- package/dist/serve/controller/factory/sim-aws-service-controller-factory.js.map +1 -1
- package/dist/serve/controller/sim-aws-service-signing-name.d.ts +11 -0
- package/dist/serve/controller/sim-aws-service-signing-name.d.ts.map +1 -0
- package/dist/serve/controller/sim-aws-service-signing-name.js +25 -0
- package/dist/serve/controller/sim-aws-service-signing-name.js.map +1 -0
- package/dist/serve/controller/sim-service-controller.d.ts +29 -2
- package/dist/serve/controller/sim-service-controller.d.ts.map +1 -1
- package/dist/serve/controller/sim-service-controller.js +26 -1
- package/dist/serve/controller/sim-service-controller.js.map +1 -1
- package/dist/serve/http/request/sim-aws-received-request.d.ts +29 -0
- package/dist/serve/http/request/sim-aws-received-request.d.ts.map +1 -0
- package/dist/serve/http/request/sim-aws-received-request.js +53 -0
- package/dist/serve/http/request/sim-aws-received-request.js.map +1 -0
- package/dist/serve/http/request/sim-aws-request-authenticator.d.ts +31 -0
- package/dist/serve/http/request/sim-aws-request-authenticator.d.ts.map +1 -0
- package/dist/serve/http/request/sim-aws-request-authenticator.js +45 -0
- package/dist/serve/http/request/sim-aws-request-authenticator.js.map +1 -0
- package/dist/serve/http/response/sim-aws-auth-failure-response.d.ts +30 -0
- package/dist/serve/http/response/sim-aws-auth-failure-response.d.ts.map +1 -0
- package/dist/serve/http/response/sim-aws-auth-failure-response.js +51 -0
- package/dist/serve/http/response/sim-aws-auth-failure-response.js.map +1 -0
- package/dist/serve/http/response/sim-aws-response-hints.d.ts +35 -0
- package/dist/serve/http/response/sim-aws-response-hints.d.ts.map +1 -0
- package/dist/serve/http/response/sim-aws-response-hints.js +49 -0
- package/dist/serve/http/response/sim-aws-response-hints.js.map +1 -0
- package/dist/serve/http/sim-aws-http.d.ts +17 -0
- package/dist/serve/http/sim-aws-http.d.ts.map +1 -1
- package/dist/serve/http/sim-aws-http.js +34 -2
- package/dist/serve/http/sim-aws-http.js.map +1 -1
- package/dist/serve/http/url/sim-aws-local-url.d.ts +8 -0
- package/dist/serve/http/url/sim-aws-local-url.d.ts.map +1 -1
- package/dist/serve/http/url/sim-aws-local-url.js +14 -3
- package/dist/serve/http/url/sim-aws-local-url.js.map +1 -1
- package/dist/serve/index.d.ts +2 -0
- package/dist/serve/index.d.ts.map +1 -1
- package/dist/serve/index.js +2 -0
- package/dist/serve/index.js.map +1 -1
- package/dist/service/acm/certificate/sim-acm-certificate.d.ts +7 -0
- package/dist/service/acm/certificate/sim-acm-certificate.d.ts.map +1 -1
- package/dist/service/acm/certificate/sim-acm-certificate.js +5 -2
- package/dist/service/acm/certificate/sim-acm-certificate.js.map +1 -1
- package/dist/service/acm/command/request-certificate/request-cert-factory.d.ts +3 -0
- package/dist/service/acm/command/request-certificate/request-cert-factory.d.ts.map +1 -1
- package/dist/service/acm/command/request-certificate/request-cert-factory.js +4 -1
- package/dist/service/acm/command/request-certificate/request-cert-factory.js.map +1 -1
- package/dist/service/acm/command/request-certificate/request-certificate.handler.d.ts.map +1 -1
- package/dist/service/acm/command/request-certificate/request-certificate.handler.js +1 -0
- package/dist/service/acm/command/request-certificate/request-certificate.handler.js.map +1 -1
- package/dist/service/aws/caller/sim-aws-caller-resolver.d.ts +2 -1
- package/dist/service/aws/caller/sim-aws-caller-resolver.d.ts.map +1 -1
- package/dist/service/aws/caller/sim-aws-caller-resolver.js +5 -1
- package/dist/service/aws/caller/sim-aws-caller-resolver.js.map +1 -1
- package/dist/service/aws/caller/sim-aws-caller.d.ts +16 -1
- package/dist/service/aws/caller/sim-aws-caller.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-account-service-cache.d.ts +3 -0
- 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 +13 -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 +35 -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 +45 -0
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-properties.d.ts +36 -0
- package/dist/service/aws/sim-aws-properties.d.ts.map +1 -0
- package/dist/service/aws/sim-aws-properties.js +2 -0
- package/dist/service/aws/sim-aws-properties.js.map +1 -0
- package/dist/service/aws/sim-aws-timekeeping.d.ts +33 -0
- package/dist/service/aws/sim-aws-timekeeping.d.ts.map +1 -0
- package/dist/service/aws/sim-aws-timekeeping.js +49 -0
- package/dist/service/aws/sim-aws-timekeeping.js.map +1 -0
- package/dist/service/aws/sim-aws.d.ts +67 -7
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +81 -2
- package/dist/service/aws/sim-aws.js.map +1 -1
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.d.ts +11 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.js +57 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-bytes.js.map +1 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.d.ts +55 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.js +86 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-asset-publications.js.map +1 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.d.ts +56 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.d.ts.map +1 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js +112 -0
- package/dist/service/cloudformation/cdk/assets/sim-cdk-assets-publisher.js.map +1 -0
- package/dist/service/cloudformation/cdk/sim-cdk-out-context.d.ts +1 -0
- package/dist/service/cloudformation/cdk/sim-cdk-out-context.d.ts.map +1 -1
- package/dist/service/cloudformation/cdk/sim-cdk-out-context.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.d.ts +29 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.js +34 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-function-url-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +8 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts +5 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack.d.ts.map +1 -1
- package/dist/service/cloudformation/stack/sim-cfn-stack.js +13 -0
- package/dist/service/cloudformation/stack/sim-cfn-stack.js.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.d.ts.map +1 -1
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js +1 -0
- package/dist/service/cloudfront/command/create-distribution/create-distribution.handler.js.map +1 -1
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.d.ts +5 -5
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.d.ts.map +1 -1
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.js +5 -5
- package/dist/service/cloudfront/controller/sim-cloudfront-controller.js.map +1 -1
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts +6 -0
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.d.ts.map +1 -1
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js +4 -2
- package/dist/service/cloudfront/distribution/sim-cloudfront-distribution.js.map +1 -1
- package/dist/service/dynamodb/table/sim-dynamodb-table.js +1 -1
- package/dist/service/dynamodb/table/sim-dynamodb-table.js.map +1 -1
- package/dist/service/iam/authorize/allow/sim-iam-allow-requirement.d.ts +60 -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 +60 -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 +46 -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 +67 -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-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 +39 -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 +42 -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/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 +27 -13
- package/dist/service/iam/authorize/sim-iam-decision.js.map +1 -1
- package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.d.ts +1 -0
- package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.d.ts.map +1 -1
- package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.js +1 -2
- package/dist/service/iam/command/policy/create-policy/create-policy-record-factory.js.map +1 -1
- package/dist/service/iam/command/policy/create-policy/create-policy.handler.d.ts.map +1 -1
- package/dist/service/iam/command/policy/create-policy/create-policy.handler.js +1 -0
- package/dist/service/iam/command/policy/create-policy/create-policy.handler.js.map +1 -1
- package/dist/service/iam/command/role/create-role/create-role-record-factory.d.ts +1 -0
- package/dist/service/iam/command/role/create-role/create-role-record-factory.d.ts.map +1 -1
- package/dist/service/iam/command/role/create-role/create-role-record-factory.js +1 -2
- package/dist/service/iam/command/role/create-role/create-role-record-factory.js.map +1 -1
- package/dist/service/iam/command/role/create-role/create-role.handler.d.ts.map +1 -1
- package/dist/service/iam/command/role/create-role/create-role.handler.js +1 -0
- package/dist/service/iam/command/role/create-role/create-role.handler.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/command/user/create-access-key/create-access-key.handler.d.ts.map +1 -1
- package/dist/service/iam/command/user/create-access-key/create-access-key.handler.js +1 -0
- package/dist/service/iam/command/user/create-access-key/create-access-key.handler.js.map +1 -1
- package/dist/service/iam/command/user/create-user/create-user-record-factory.d.ts +1 -0
- package/dist/service/iam/command/user/create-user/create-user-record-factory.d.ts.map +1 -1
- package/dist/service/iam/command/user/create-user/create-user-record-factory.js +1 -1
- package/dist/service/iam/command/user/create-user/create-user-record-factory.js.map +1 -1
- package/dist/service/iam/command/user/create-user/create-user.handler.d.ts.map +1 -1
- package/dist/service/iam/command/user/create-user/create-user.handler.js +1 -0
- package/dist/service/iam/command/user/create-user/create-user.handler.js.map +1 -1
- package/dist/service/iam/credential/sim-iam-access-key-checks.d.ts +30 -0
- package/dist/service/iam/credential/sim-iam-access-key-checks.d.ts.map +1 -0
- package/dist/service/iam/credential/sim-iam-access-key-checks.js +67 -0
- package/dist/service/iam/credential/sim-iam-access-key-checks.js.map +1 -0
- package/dist/service/iam/credential/sim-iam-access-key.d.ts +6 -1
- package/dist/service/iam/credential/sim-iam-access-key.d.ts.map +1 -1
- package/dist/service/iam/credential/sim-iam-access-key.js +1 -1
- package/dist/service/iam/credential/sim-iam-access-key.js.map +1 -1
- package/dist/service/iam/credential/sim-iam-account-signing-credentials.d.ts +21 -0
- package/dist/service/iam/credential/sim-iam-account-signing-credentials.d.ts.map +1 -0
- package/dist/service/iam/credential/sim-iam-account-signing-credentials.js +28 -0
- package/dist/service/iam/credential/sim-iam-account-signing-credentials.js.map +1 -0
- package/dist/service/iam/credential/sim-iam-credential-registry.d.ts +28 -0
- package/dist/service/iam/credential/sim-iam-credential-registry.d.ts.map +1 -1
- package/dist/service/iam/credential/sim-iam-credential-registry.js +32 -43
- package/dist/service/iam/credential/sim-iam-credential-registry.js.map +1 -1
- package/dist/service/iam/credential/sim-iam-signing-credential.d.ts +32 -0
- package/dist/service/iam/credential/sim-iam-signing-credential.d.ts.map +1 -0
- package/dist/service/iam/credential/sim-iam-signing-credential.js +2 -0
- package/dist/service/iam/credential/sim-iam-signing-credential.js.map +1 -0
- package/dist/service/iam/index.d.ts +6 -0
- package/dist/service/iam/index.d.ts.map +1 -1
- package/dist/service/iam/index.js +4 -0
- package/dist/service/iam/index.js.map +1 -1
- package/dist/service/iam/registry/sim-iam-access-key-registry.d.ts +39 -0
- package/dist/service/iam/registry/sim-iam-access-key-registry.d.ts.map +1 -0
- package/dist/service/iam/registry/sim-iam-access-key-registry.js +47 -0
- package/dist/service/iam/registry/sim-iam-access-key-registry.js.map +1 -0
- 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-global-credential-resolver.d.ts +25 -0
- package/dist/service/iam/registry/sim-iam-global-credential-resolver.d.ts.map +1 -0
- package/dist/service/iam/registry/sim-iam-global-credential-resolver.js +31 -0
- package/dist/service/iam/registry/sim-iam-global-credential-resolver.js.map +1 -0
- 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/error/sim-aws-request-auth.error.d.ts +27 -0
- package/dist/service/iam/request/error/sim-aws-request-auth.error.d.ts.map +1 -0
- package/dist/service/iam/request/error/sim-aws-request-auth.error.js +25 -0
- package/dist/service/iam/request/error/sim-aws-request-auth.error.js.map +1 -0
- package/dist/service/iam/request/sim-aws-caller-header.d.ts +28 -0
- package/dist/service/iam/request/sim-aws-caller-header.d.ts.map +1 -0
- package/dist/service/iam/request/sim-aws-caller-header.js +62 -0
- package/dist/service/iam/request/sim-aws-caller-header.js.map +1 -0
- package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts +49 -0
- package/dist/service/iam/request/sim-aws-request-caller-resolver.d.ts.map +1 -0
- package/dist/service/iam/request/sim-aws-request-caller-resolver.js +68 -0
- package/dist/service/iam/request/sim-aws-request-caller-resolver.js.map +1 -0
- package/dist/service/iam/request/sim-aws-request-caller.d.ts +50 -0
- package/dist/service/iam/request/sim-aws-request-caller.d.ts.map +1 -0
- package/dist/service/iam/request/sim-aws-request-caller.js +55 -0
- package/dist/service/iam/request/sim-aws-request-caller.js.map +1 -0
- package/dist/service/iam/sigv4/canonical/sigv4-byte-order.d.ts +9 -0
- package/dist/service/iam/sigv4/canonical/sigv4-byte-order.d.ts.map +1 -0
- package/dist/service/iam/sigv4/canonical/sigv4-byte-order.js +14 -0
- package/dist/service/iam/sigv4/canonical/sigv4-byte-order.js.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.d.ts +22 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.d.ts.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.js +48 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-headers.js.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.d.ts +14 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.d.ts.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js +31 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-path.js.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.d.ts +19 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.d.ts.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.js +78 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-query.js.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts +20 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.d.ts.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js +36 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-canonical-request.js.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts +19 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.d.ts.map +1 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js +52 -0
- package/dist/service/iam/sigv4/canonical/sim-iam-sigv4-payload-hash.js.map +1 -0
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts +60 -0
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.d.ts.map +1 -0
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js +68 -0
- package/dist/service/iam/sigv4/error/sim-iam-sigv4.error.js.map +1 -0
- package/dist/service/iam/sigv4/sigv4-uri-escape.d.ts +8 -0
- package/dist/service/iam/sigv4/sigv4-uri-escape.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sigv4-uri-escape.js +10 -0
- package/dist/service/iam/sigv4/sigv4-uri-escape.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts +33 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.js +70 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-authorization.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.d.ts +11 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.js +45 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-failure.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.d.ts +30 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.js +52 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-credential-scope.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.d.ts +39 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.js +52 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-expected-scope.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts +16 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js +31 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-request-date.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts +18 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js +25 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-check.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.d.ts +9 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.js +26 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signature-match.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.d.ts +19 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.js +12 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signed-request.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts +13 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js +18 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-credentials.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.d.ts +26 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.js +40 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-signing-key.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts +32 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js +45 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verifier.js.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.d.ts +17 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.d.ts.map +1 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.js +2 -0
- package/dist/service/iam/sigv4/sim-iam-sigv4-verify-options.js.map +1 -0
- 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 -67
- package/dist/service/iam/sim-iam.js.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.d.ts +8 -6
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.js +12 -7
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-cdk-assets-skip.js.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.d.ts +9 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.js +5 -2
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-code-input.js.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.js +7 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-function-creator.js.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts +6 -2
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.d.ts.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js +16 -3
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-property-parser.js.map +1 -1
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.d.ts +29 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.d.ts.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.js +43 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-runtime-skip.js.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts +12 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.d.ts.map +1 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js +20 -0
- package/dist/service/lambda/cfn/function/sim-cfn-lambda-target-function.js.map +1 -0
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts +31 -0
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.d.ts.map +1 -0
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js +48 -0
- package/dist/service/lambda/cfn/permission/sim-cfn-lambda-permission-creator.js.map +1 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts +2 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.d.ts.map +1 -1
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js +12 -0
- package/dist/service/lambda/cfn/sim-cfn-lambda-resource-factory.js.map +1 -1
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.d.ts +25 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.d.ts.map +1 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js +35 -0
- package/dist/service/lambda/cfn/url/sim-cfn-lambda-url-creator.js.map +1 -0
- package/dist/service/lambda/command/add-permission/add-permission.command.d.ts +32 -0
- package/dist/service/lambda/command/add-permission/add-permission.command.d.ts.map +1 -0
- package/dist/service/lambda/command/add-permission/add-permission.command.js +2 -0
- package/dist/service/lambda/command/add-permission/add-permission.command.js.map +1 -0
- package/dist/service/lambda/command/add-permission/add-permission.handler.d.ts +31 -0
- package/dist/service/lambda/command/add-permission/add-permission.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/add-permission/add-permission.handler.js +52 -0
- package/dist/service/lambda/command/add-permission/add-permission.handler.js.map +1 -0
- package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.d.ts +13 -0
- package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.d.ts.map +1 -0
- package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.js +26 -0
- package/dist/service/lambda/command/authorize/sim-lambda-resource-policies.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 +1 -0
- package/dist/service/lambda/command/create-function/create-function.handler.js.map +1 -1
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts +29 -0
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.js +5 -0
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.command.js.map +1 -0
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.d.ts +35 -0
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js +47 -0
- package/dist/service/lambda/command/create-function-url-config/create-function-url-config.handler.js.map +1 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.d.ts +26 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.js +5 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.command.js.map +1 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.d.ts +34 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.js +38 -0
- package/dist/service/lambda/command/delete-function-url-config/delete-function-url-config.handler.js.map +1 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts +50 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.d.ts.map +1 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.js +35 -0
- package/dist/service/lambda/command/function/sim-lambda-function-commands.js.map +1 -0
- package/dist/service/lambda/command/function-url/function-url-authorizer.d.ts +29 -0
- package/dist/service/lambda/command/function-url/function-url-authorizer.d.ts.map +1 -0
- package/dist/service/lambda/command/function-url/function-url-authorizer.js +39 -0
- package/dist/service/lambda/command/function-url/function-url-authorizer.js.map +1 -0
- package/dist/service/lambda/command/function-url/function-url-input.d.ts +24 -0
- package/dist/service/lambda/command/function-url/function-url-input.d.ts.map +1 -0
- package/dist/service/lambda/command/function-url/function-url-input.js +49 -0
- package/dist/service/lambda/command/function-url/function-url-input.js.map +1 -0
- package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.d.ts +52 -0
- package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.d.ts.map +1 -0
- package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.js +49 -0
- package/dist/service/lambda/command/function-url/sim-lambda-function-url-commands.js.map +1 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.d.ts +24 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.js +5 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.command.js.map +1 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.d.ts +34 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.js +41 -0
- package/dist/service/lambda/command/get-function-url-config/get-function-url-config.handler.js.map +1 -0
- package/dist/service/lambda/command/get-policy/get-policy.command.d.ts +22 -0
- package/dist/service/lambda/command/get-policy/get-policy.command.d.ts.map +1 -0
- package/dist/service/lambda/command/get-policy/get-policy.command.js +2 -0
- package/dist/service/lambda/command/get-policy/get-policy.command.js.map +1 -0
- package/dist/service/lambda/command/get-policy/get-policy.handler.d.ts +35 -0
- package/dist/service/lambda/command/get-policy/get-policy.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/get-policy/get-policy.handler.js +45 -0
- package/dist/service/lambda/command/get-policy/get-policy.handler.js.map +1 -0
- package/dist/service/lambda/command/invoke/invoke-authorizer.d.ts +8 -2
- package/dist/service/lambda/command/invoke/invoke-authorizer.d.ts.map +1 -1
- package/dist/service/lambda/command/invoke/invoke-authorizer.js +9 -2
- package/dist/service/lambda/command/invoke/invoke-authorizer.js.map +1 -1
- package/dist/service/lambda/command/invoke/invoke.handler.d.ts.map +1 -1
- package/dist/service/lambda/command/invoke/invoke.handler.js +4 -1
- package/dist/service/lambda/command/invoke/invoke.handler.js.map +1 -1
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.d.ts +25 -0
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.d.ts.map +1 -0
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.js +5 -0
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.command.js.map +1 -0
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.d.ts +37 -0
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.js +46 -0
- package/dist/service/lambda/command/list-function-url-configs/list-function-url-configs.handler.js.map +1 -0
- package/dist/service/lambda/command/permission/sim-lambda-permission-commands.d.ts +40 -0
- package/dist/service/lambda/command/permission/sim-lambda-permission-commands.d.ts.map +1 -0
- package/dist/service/lambda/command/permission/sim-lambda-permission-commands.js +35 -0
- package/dist/service/lambda/command/permission/sim-lambda-permission-commands.js.map +1 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.command.d.ts +21 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.command.d.ts.map +1 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.command.js +2 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.command.js.map +1 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.handler.d.ts +31 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.handler.js +36 -0
- package/dist/service/lambda/command/remove-permission/remove-permission.handler.js.map +1 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts +19 -0
- package/dist/service/lambda/command/sim-lambda-command.types.d.ts.map +1 -0
- package/dist/service/lambda/command/sim-lambda-command.types.js +9 -0
- package/dist/service/lambda/command/sim-lambda-command.types.js.map +1 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts +29 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.d.ts.map +1 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.js +5 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.command.js.map +1 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.d.ts +35 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.d.ts.map +1 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js +48 -0
- package/dist/service/lambda/command/update-function-url-config/update-function-url-config.handler.js.map +1 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts +7 -0
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.d.ts.map +1 -1
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js +4 -3
- package/dist/service/lambda/function/invoke/sim-lambda-invoke-context-builder.js.map +1 -1
- package/dist/service/lambda/function/policy/sim-lambda-function-policy.d.ts +47 -0
- package/dist/service/lambda/function/policy/sim-lambda-function-policy.d.ts.map +1 -0
- package/dist/service/lambda/function/policy/sim-lambda-function-policy.js +79 -0
- package/dist/service/lambda/function/policy/sim-lambda-function-policy.js.map +1 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission-principal.d.ts +11 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission-principal.d.ts.map +1 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission-principal.js +22 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission-principal.js.map +1 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission.d.ts +66 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission.d.ts.map +1 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission.js +101 -0
- package/dist/service/lambda/function/policy/sim-lambda-permission.js.map +1 -0
- package/dist/service/lambda/function/sim-lambda-function.d.ts +18 -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/function/url/sim-lambda-function-lookup.d.ts +30 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.d.ts.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.js +36 -0
- package/dist/service/lambda/function/url/sim-lambda-function-lookup.js.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts +37 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.d.ts.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js +42 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-factory.js.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-host.d.ts +30 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-host.d.ts.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-host.js +29 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-host.js.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts +45 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.d.ts.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.js +72 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url-store.js.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts +103 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.d.ts.map +1 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.js +92 -0
- package/dist/service/lambda/function/url/sim-lambda-function-url.js.map +1 -0
- package/dist/service/lambda/index.d.ts +1 -0
- package/dist/service/lambda/index.d.ts.map +1 -1
- package/dist/service/lambda/registry/sim-lambda-url-registry.d.ts +31 -0
- package/dist/service/lambda/registry/sim-lambda-url-registry.d.ts.map +1 -0
- package/dist/service/lambda/registry/sim-lambda-url-registry.js +43 -0
- package/dist/service/lambda/registry/sim-lambda-url-registry.js.map +1 -0
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.d.ts.map +1 -1
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js +32 -0
- package/dist/service/lambda/sdk/sim-lambda-sdk-command-router.js.map +1 -1
- package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.d.ts +46 -0
- package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.d.ts.map +1 -0
- package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.js +47 -0
- package/dist/service/lambda/serve/auth/sim-lambda-url-authorizer.js.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.d.ts +25 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.d.ts.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.js +53 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-body-encoding.js.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.d.ts +36 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.d.ts.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.js +61 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-builder.js.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-time.d.ts +9 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-time.d.ts.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-time.js +38 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event-time.js.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event.type.d.ts +103 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event.type.d.ts.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event.type.js +2 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-event.type.js.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.d.ts +30 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.d.ts.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.js +55 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-iam-authorizer.js.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-context.d.ts +29 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-context.d.ts.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-context.js +54 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-context.js.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.d.ts +26 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.d.ts.map +1 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.js +50 -0
- package/dist/service/lambda/serve/event/sim-lambda-url-request-parts.js.map +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-error-response.d.ts +24 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-error-response.d.ts.map +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-error-response.js +35 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-error-response.js.map +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.d.ts +21 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.d.ts.map +1 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.js +57 -0
- package/dist/service/lambda/serve/response/sim-lambda-url-response-builder.js.map +1 -0
- package/dist/service/lambda/serve/sim-lambda-controller.d.ts +42 -0
- package/dist/service/lambda/serve/sim-lambda-controller.d.ts.map +1 -0
- package/dist/service/lambda/serve/sim-lambda-controller.js +82 -0
- package/dist/service/lambda/serve/sim-lambda-controller.js.map +1 -0
- package/dist/service/lambda/serve/sim-lambda-url-router.d.ts +44 -0
- package/dist/service/lambda/serve/sim-lambda-url-router.d.ts.map +1 -0
- package/dist/service/lambda/serve/sim-lambda-url-router.js +47 -0
- package/dist/service/lambda/serve/sim-lambda-url-router.js.map +1 -0
- package/dist/service/lambda/sim-lambda.d.ts +52 -9
- package/dist/service/lambda/sim-lambda.d.ts.map +1 -1
- package/dist/service/lambda/sim-lambda.js +115 -44
- package/dist/service/lambda/sim-lambda.js.map +1 -1
- package/dist/service/route53/command/change-resource-record-sets/change-resource-record-sets.handler.d.ts.map +1 -1
- package/dist/service/route53/command/change-resource-record-sets/change-resource-record-sets.handler.js +3 -2
- package/dist/service/route53/command/change-resource-record-sets/change-resource-record-sets.handler.js.map +1 -1
- package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.d.ts +10 -0
- package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.d.ts.map +1 -0
- package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.js +13 -0
- package/dist/service/route53/command/change-resource-record-sets/sim-route53-change-id.js.map +1 -0
- package/dist/service/route53/command/create-hosted-zone/create-hosted-zone.handler.js +1 -1
- package/dist/service/route53/command/create-hosted-zone/create-hosted-zone.handler.js.map +1 -1
- package/dist/service/route53/resolve/sim-r53-service-target-resolver.d.ts +12 -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 +33 -1
- package/dist/service/route53/resolve/sim-r53-service-target-resolver.js.map +1 -1
- package/dist/service/route53/serve/sim-route53-controller.d.ts +2 -2
- package/dist/service/route53/serve/sim-route53-controller.d.ts.map +1 -1
- package/dist/service/route53/serve/sim-route53-controller.js +2 -2
- package/dist/service/route53/serve/sim-route53-controller.js.map +1 -1
- package/dist/service/s3/serve/sim-s3-controller.d.ts +2 -2
- package/dist/service/s3/serve/sim-s3-controller.d.ts.map +1 -1
- package/dist/service/s3/serve/sim-s3-controller.js +2 -1
- package/dist/service/s3/serve/sim-s3-controller.js.map +1 -1
- package/dist/service/sts/assume/sim-sts-assume-role-session-creator.d.ts +7 -0
- package/dist/service/sts/assume/sim-sts-assume-role-session-creator.d.ts.map +1 -1
- package/dist/service/sts/assume/sim-sts-assume-role-session-creator.js +4 -1
- package/dist/service/sts/assume/sim-sts-assume-role-session-creator.js.map +1 -1
- package/dist/service/sts/command/assume-role/assume-role.handler.d.ts.map +1 -1
- package/dist/service/sts/command/assume-role/assume-role.handler.js +1 -0
- package/dist/service/sts/command/assume-role/assume-role.handler.js.map +1 -1
- package/dist/util/background/background-due-tasks.d.ts +44 -0
- package/dist/util/background/background-due-tasks.d.ts.map +1 -0
- package/dist/util/background/background-due-tasks.js +71 -0
- package/dist/util/background/background-due-tasks.js.map +1 -0
- package/dist/util/background/background-jitter.d.ts +16 -0
- package/dist/util/background/background-jitter.d.ts.map +1 -0
- package/dist/util/background/background-jitter.js +23 -0
- package/dist/util/background/background-jitter.js.map +1 -0
- package/dist/util/background/background-settled-tasks.d.ts +17 -0
- package/dist/util/background/background-settled-tasks.d.ts.map +1 -0
- package/dist/util/background/background-settled-tasks.js +24 -0
- package/dist/util/background/background-settled-tasks.js.map +1 -0
- package/dist/util/background/background.d.ts +63 -2
- package/dist/util/background/background.d.ts.map +1 -1
- package/dist/util/background/background.js +35 -0
- package/dist/util/background/background.js.map +1 -1
- package/dist/util/background/non-deterministic-background.d.ts +24 -4
- package/dist/util/background/non-deterministic-background.d.ts.map +1 -1
- package/dist/util/background/non-deterministic-background.js +36 -13
- package/dist/util/background/non-deterministic-background.js.map +1 -1
- package/dist/util/clock/sim-clock-control.d.ts +94 -0
- package/dist/util/clock/sim-clock-control.d.ts.map +1 -0
- package/dist/util/clock/sim-clock-control.js +116 -0
- package/dist/util/clock/sim-clock-control.js.map +1 -0
- package/dist/util/clock/sim-clock-mode.d.ts +74 -0
- package/dist/util/clock/sim-clock-mode.d.ts.map +1 -0
- package/dist/util/clock/sim-clock-mode.js +58 -0
- package/dist/util/clock/sim-clock-mode.js.map +1 -0
- package/dist/util/clock/sim-clock.d.ts +41 -0
- package/dist/util/clock/sim-clock.d.ts.map +1 -0
- package/dist/util/clock/sim-clock.js +33 -0
- package/dist/util/clock/sim-clock.js.map +1 -0
- package/dist/util/clock/sim-controllable-clock.d.ts +55 -0
- package/dist/util/clock/sim-controllable-clock.d.ts.map +1 -0
- package/dist/util/clock/sim-controllable-clock.js +62 -0
- package/dist/util/clock/sim-controllable-clock.js.map +1 -0
- package/dist/util/clock/sim-duration.d.ts +44 -0
- package/dist/util/clock/sim-duration.d.ts.map +1 -0
- package/dist/util/clock/sim-duration.js +69 -0
- package/dist/util/clock/sim-duration.js.map +1 -0
- package/package.json +3 -1
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { SimIamIncompleteSignature } from "./error/sim-iam-sigv4.error.js";
|
|
2
|
+
const amzDatePattern = /^(?<dateStamp>\d{8})T\d{6}Z$/;
|
|
3
|
+
/**
|
|
4
|
+
* Read the `X-Amz-Date` a request was signed at.
|
|
5
|
+
*
|
|
6
|
+
* The stamp is required, has to be well formed, and has to agree with the date
|
|
7
|
+
* in the credential scope, because both feed the signature and a signer that
|
|
8
|
+
* disagrees with itself cannot have produced one.
|
|
9
|
+
*
|
|
10
|
+
* It is deliberately never compared to a clock. Rejecting an old signature
|
|
11
|
+
* would buy nothing a caller could assert on, and would break every client that
|
|
12
|
+
* stamps real time and has no way to know what time this simulation is keeping.
|
|
13
|
+
* This is a documented divergence from real AWS, which enforces a five minute
|
|
14
|
+
* window.
|
|
15
|
+
*/
|
|
16
|
+
export function simIamSigV4RequestDate(headers, scope) {
|
|
17
|
+
const amzDate = headers.get("x-amz-date");
|
|
18
|
+
if (amzDate === null || amzDate.length === 0) {
|
|
19
|
+
throw new SimIamIncompleteSignature("Signed request carries no X-Amz-Date header");
|
|
20
|
+
}
|
|
21
|
+
const dateStamp = amzDatePattern.exec(amzDate)?.groups?.["dateStamp"];
|
|
22
|
+
if (dateStamp === undefined) {
|
|
23
|
+
throw new SimIamIncompleteSignature(`X-Amz-Date ${amzDate} must be an ISO 8601 basic stamp, ` +
|
|
24
|
+
`YYYYMMDDTHHMMSSZ`);
|
|
25
|
+
}
|
|
26
|
+
if (dateStamp !== scope.dateStamp) {
|
|
27
|
+
throw new SimIamIncompleteSignature(`X-Amz-Date ${amzDate} is not on the day its credential scope names, ${scope.dateStamp}`);
|
|
28
|
+
}
|
|
29
|
+
return amzDate;
|
|
30
|
+
}
|
|
31
|
+
//# sourceMappingURL=sim-iam-sigv4-request-date.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-request-date.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-request-date.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,yBAAyB,EAAE,MAAM,gCAAgC,CAAC;AAG3E,MAAM,cAAc,GAAG,8BAA8B,CAAC;AAEtD;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,sBAAsB,CACpC,OAAgB,EAChB,KAAiC;IAEjC,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,YAAY,CAAC,CAAC;IAE1C,IAAI,OAAO,KAAK,IAAI,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC7C,MAAM,IAAI,yBAAyB,CACjC,6CAA6C,CAC9C,CAAC;IACJ,CAAC;IAED,MAAM,SAAS,GAAG,cAAc,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,EAAE,CAAC,WAAW,CAAC,CAAC;IAEtE,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;QAC5B,MAAM,IAAI,yBAAyB,CACjC,cAAc,OAAO,oCAAoC;YACvD,kBAAkB,CACrB,CAAC;IACJ,CAAC;IAED,IAAI,SAAS,KAAK,KAAK,CAAC,SAAS,EAAE,CAAC;QAClC,MAAM,IAAI,yBAAyB,CACjC,cAAc,OAAO,kDACnB,KAAK,CAAC,SACR,EAAE,CACH,CAAC;IACJ,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import type { SimIamSigV4Authorization } from "./sim-iam-sigv4-authorization.js";
|
|
2
|
+
import type { SimIamSigV4SignedRequest } from "./sim-iam-sigv4-signed-request.js";
|
|
3
|
+
interface SimIamSigV4SignatureCheckInput {
|
|
4
|
+
readonly signedRequest: SimIamSigV4SignedRequest;
|
|
5
|
+
readonly authorization: SimIamSigV4Authorization;
|
|
6
|
+
readonly signingKey: Buffer;
|
|
7
|
+
readonly amzDate: string;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* Rebuild the signature the request should carry, and refuse it otherwise.
|
|
11
|
+
*
|
|
12
|
+
* The canonical request travels with the failure, because a mismatch is
|
|
13
|
+
* otherwise undiagnosable: the only way to see which byte differed is to have
|
|
14
|
+
* the bytes the simulator signed over.
|
|
15
|
+
*/
|
|
16
|
+
export declare function simIamSigV4CheckSignature(input: SimIamSigV4SignatureCheckInput): void;
|
|
17
|
+
export {};
|
|
18
|
+
//# sourceMappingURL=sim-iam-sigv4-signature-check.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signature-check.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signature-check.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAMlF,UAAU,8BAA8B;IACtC,QAAQ,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACjD,QAAQ,CAAC,aAAa,EAAE,wBAAwB,CAAC;IACjD,QAAQ,CAAC,UAAU,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CACvC,KAAK,EAAE,8BAA8B,GACpC,IAAI,CAwBN"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { SimIamSigV4CanonicalRequest } from "./canonical/sim-iam-sigv4-canonical-request.js";
|
|
2
|
+
import { SimIamSignatureDoesNotMatch } from "./error/sim-iam-sigv4.error.js";
|
|
3
|
+
import { simIamSigV4SignaturesMatch } from "./sim-iam-sigv4-signature-match.js";
|
|
4
|
+
import { simIamSigV4Signature, simIamSigV4StringToSign, } from "./sim-iam-sigv4-signing-key.js";
|
|
5
|
+
/**
|
|
6
|
+
* Rebuild the signature the request should carry, and refuse it otherwise.
|
|
7
|
+
*
|
|
8
|
+
* The canonical request travels with the failure, because a mismatch is
|
|
9
|
+
* otherwise undiagnosable: the only way to see which byte differed is to have
|
|
10
|
+
* the bytes the simulator signed over.
|
|
11
|
+
*/
|
|
12
|
+
export function simIamSigV4CheckSignature(input) {
|
|
13
|
+
const { signedRequest, authorization, signingKey, amzDate } = input;
|
|
14
|
+
const canonicalRequest = new SimIamSigV4CanonicalRequest(signedRequest, authorization.signedHeaderNames).toString();
|
|
15
|
+
const expected = simIamSigV4Signature(signingKey, simIamSigV4StringToSign({
|
|
16
|
+
amzDate,
|
|
17
|
+
scope: authorization.scope,
|
|
18
|
+
canonicalRequest,
|
|
19
|
+
}));
|
|
20
|
+
if (!simIamSigV4SignaturesMatch(expected, authorization.signature)) {
|
|
21
|
+
throw new SimIamSignatureDoesNotMatch(`Request signature does not match the signature the simulator ` +
|
|
22
|
+
`calculated for access key ${authorization.accessKeyId}`, canonicalRequest);
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
//# sourceMappingURL=sim-iam-sigv4-signature-check.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signature-check.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signature-check.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAC7F,OAAO,EAAE,2BAA2B,EAAE,MAAM,gCAAgC,CAAC;AAE7E,OAAO,EAAE,0BAA0B,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EACL,oBAAoB,EACpB,uBAAuB,GACxB,MAAM,gCAAgC,CAAC;AASxC;;;;;;GAMG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAqC;IAErC,MAAM,EAAE,aAAa,EAAE,aAAa,EAAE,UAAU,EAAE,OAAO,EAAE,GAAG,KAAK,CAAC;IAEpE,MAAM,gBAAgB,GAAG,IAAI,2BAA2B,CACtD,aAAa,EACb,aAAa,CAAC,iBAAiB,CAChC,CAAC,QAAQ,EAAE,CAAC;IAEb,MAAM,QAAQ,GAAG,oBAAoB,CACnC,UAAU,EACV,uBAAuB,CAAC;QACtB,OAAO;QACP,KAAK,EAAE,aAAa,CAAC,KAAK;QAC1B,gBAAgB;KACjB,CAAC,CACH,CAAC;IAEF,IAAI,CAAC,0BAA0B,CAAC,QAAQ,EAAE,aAAa,CAAC,SAAS,CAAC,EAAE,CAAC;QACnE,MAAM,IAAI,2BAA2B,CACnC,+DAA+D;YAC7D,6BAA6B,aAAa,CAAC,WAAW,EAAE,EAC1D,gBAAgB,CACjB,CAAC;IACJ,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Compare a calculated signature with the one a request presented.
|
|
3
|
+
*
|
|
4
|
+
* The comparison is over the decoded bytes and takes the same time whatever
|
|
5
|
+
* they are, so nothing about the expected signature can be learned by measuring
|
|
6
|
+
* how quickly a wrong one is rejected.
|
|
7
|
+
*/
|
|
8
|
+
export declare function simIamSigV4SignaturesMatch(expected: string, presented: string): boolean;
|
|
9
|
+
//# sourceMappingURL=sim-iam-sigv4-signature-match.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signature-match.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signature-match.ts"],"names":[],"mappings":"AASA;;;;;;GAMG;AACH,wBAAgB,0BAA0B,CACxC,QAAQ,EAAE,MAAM,EAChB,SAAS,EAAE,MAAM,GAChB,OAAO,CAaT"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import { timingSafeEqual } from "node:crypto";
|
|
2
|
+
/**
|
|
3
|
+
* A SigV4 signature is a SHA-256 digest, so it is always exactly 64 hex
|
|
4
|
+
* characters. Requiring that here means nothing shorter, longer or oddly sized
|
|
5
|
+
* reaches the decoder, rather than relying on how it handles such input.
|
|
6
|
+
*/
|
|
7
|
+
const hexSignaturePattern = /^[\da-f]{64}$/i;
|
|
8
|
+
/**
|
|
9
|
+
* Compare a calculated signature with the one a request presented.
|
|
10
|
+
*
|
|
11
|
+
* The comparison is over the decoded bytes and takes the same time whatever
|
|
12
|
+
* they are, so nothing about the expected signature can be learned by measuring
|
|
13
|
+
* how quickly a wrong one is rejected.
|
|
14
|
+
*/
|
|
15
|
+
export function simIamSigV4SignaturesMatch(expected, presented) {
|
|
16
|
+
if (!hexSignaturePattern.test(presented)) {
|
|
17
|
+
return false;
|
|
18
|
+
}
|
|
19
|
+
const expectedBytes = Buffer.from(expected, "hex");
|
|
20
|
+
const presentedBytes = Buffer.from(presented, "hex");
|
|
21
|
+
if (expectedBytes.length !== presentedBytes.length) {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
return timingSafeEqual(expectedBytes, presentedBytes);
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=sim-iam-sigv4-signature-match.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signature-match.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signature-match.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAE9C;;;;GAIG;AACH,MAAM,mBAAmB,GAAG,gBAAgB,CAAC;AAE7C;;;;;;GAMG;AACH,MAAM,UAAU,0BAA0B,CACxC,QAAgB,EAChB,SAAiB;IAEjB,IAAI,CAAC,mBAAmB,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;QACzC,OAAO,KAAK,CAAC;IACf,CAAC;IAED,MAAM,aAAa,GAAG,MAAM,CAAC,IAAI,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACnD,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,KAAK,CAAC,CAAC;IAErD,IAAI,aAAa,CAAC,MAAM,KAAK,cAAc,CAAC,MAAM,EAAE,CAAC;QACnD,OAAO,KAAK,CAAC;IACf,CAAC;IAED,OAAO,eAAe,CAAC,aAAa,EAAE,cAAc,CAAC,CAAC;AACxD,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* A request as received, in the shape SigV4 verification needs it.
|
|
3
|
+
*
|
|
4
|
+
* The body is passed alongside rather than read from the request, because a
|
|
5
|
+
* request body can only be consumed once and the caller serving the request
|
|
6
|
+
* needs it too. Whoever receives the request buffers it once and hands the same
|
|
7
|
+
* bytes to both.
|
|
8
|
+
*/
|
|
9
|
+
export interface SimIamSigV4SignedRequest {
|
|
10
|
+
readonly method: string;
|
|
11
|
+
readonly url: URL;
|
|
12
|
+
readonly headers: Headers;
|
|
13
|
+
readonly body?: Uint8Array | undefined;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* Build the verification input from a Fetch request and its buffered body.
|
|
17
|
+
*/
|
|
18
|
+
export declare function simIamSigV4SignedRequest(request: Request, body?: Uint8Array): SimIamSigV4SignedRequest;
|
|
19
|
+
//# sourceMappingURL=sim-iam-sigv4-signed-request.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signed-request.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signed-request.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,MAAM,WAAW,wBAAwB;IACvC,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,GAAG,EAAE,GAAG,CAAC;IAClB,QAAQ,CAAC,OAAO,EAAE,OAAO,CAAC;IAC1B,QAAQ,CAAC,IAAI,CAAC,EAAE,UAAU,GAAG,SAAS,CAAC;CACxC;AAED;;GAEG;AACH,wBAAgB,wBAAwB,CACtC,OAAO,EAAE,OAAO,EAChB,IAAI,CAAC,EAAE,UAAU,GAChB,wBAAwB,CAO1B"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Build the verification input from a Fetch request and its buffered body.
|
|
3
|
+
*/
|
|
4
|
+
export function simIamSigV4SignedRequest(request, body) {
|
|
5
|
+
return {
|
|
6
|
+
method: request.method,
|
|
7
|
+
url: new URL(request.url),
|
|
8
|
+
headers: request.headers,
|
|
9
|
+
body,
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=sim-iam-sigv4-signed-request.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signed-request.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signed-request.ts"],"names":[],"mappings":"AAeA;;GAEG;AACH,MAAM,UAAU,wBAAwB,CACtC,OAAgB,EAChB,IAAiB;IAEjB,OAAO;QACL,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,GAAG,EAAE,IAAI,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC;QACzB,OAAO,EAAE,OAAO,CAAC,OAAO;QACxB,IAAI;KACL,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { SimIamSigningCredential, SimIamSigningCredentialResolver } from "../credential/sim-iam-signing-credential.js";
|
|
2
|
+
import type { SimIamSigV4Authorization } from "./sim-iam-sigv4-authorization.js";
|
|
3
|
+
import type { SimIamSigV4SignedRequest } from "./sim-iam-sigv4-signed-request.js";
|
|
4
|
+
/**
|
|
5
|
+
* Find the signing key the request claims to have been signed with.
|
|
6
|
+
*
|
|
7
|
+
* A signed request never presents its secret, so this asks for the key the
|
|
8
|
+
* named access key would have derived rather than for the secret itself, and
|
|
9
|
+
* the signature comparison settles whether the signer really held it. Any
|
|
10
|
+
* rejection is restated in the vocabulary a signed request is answered in.
|
|
11
|
+
*/
|
|
12
|
+
export declare function simIamSigV4SigningCredential(credentials: SimIamSigningCredentialResolver, signedRequest: SimIamSigV4SignedRequest, authorization: SimIamSigV4Authorization, now: Date | undefined): SimIamSigningCredential;
|
|
13
|
+
//# sourceMappingURL=sim-iam-sigv4-signing-credentials.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signing-credentials.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signing-credentials.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uBAAuB,EACvB,+BAA+B,EAChC,MAAM,6CAA6C,CAAC;AACrD,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAEjF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElF;;;;;;;GAOG;AACH,wBAAgB,4BAA4B,CAC1C,WAAW,EAAE,+BAA+B,EAC5C,aAAa,EAAE,wBAAwB,EACvC,aAAa,EAAE,wBAAwB,EACvC,GAAG,EAAE,IAAI,GAAG,SAAS,GACpB,uBAAuB,CAUzB"}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { simIamSigV4CredentialFailure } from "./sim-iam-sigv4-credential-failure.js";
|
|
2
|
+
/**
|
|
3
|
+
* Find the signing key the request claims to have been signed with.
|
|
4
|
+
*
|
|
5
|
+
* A signed request never presents its secret, so this asks for the key the
|
|
6
|
+
* named access key would have derived rather than for the secret itself, and
|
|
7
|
+
* the signature comparison settles whether the signer really held it. Any
|
|
8
|
+
* rejection is restated in the vocabulary a signed request is answered in.
|
|
9
|
+
*/
|
|
10
|
+
export function simIamSigV4SigningCredential(credentials, signedRequest, authorization, now) {
|
|
11
|
+
return simIamSigV4CredentialFailure(authorization.accessKeyId, () => credentials.signingCredentialFor({
|
|
12
|
+
accessKeyId: authorization.accessKeyId,
|
|
13
|
+
sessionToken: signedRequest.headers.get("x-amz-security-token") ?? undefined,
|
|
14
|
+
scope: authorization.scope,
|
|
15
|
+
now,
|
|
16
|
+
}));
|
|
17
|
+
}
|
|
18
|
+
//# sourceMappingURL=sim-iam-sigv4-signing-credentials.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signing-credentials.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signing-credentials.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAGrF;;;;;;;GAOG;AACH,MAAM,UAAU,4BAA4B,CAC1C,WAA4C,EAC5C,aAAuC,EACvC,aAAuC,EACvC,GAAqB;IAErB,OAAO,4BAA4B,CAAC,aAAa,CAAC,WAAW,EAAE,GAAG,EAAE,CAClE,WAAW,CAAC,oBAAoB,CAAC;QAC/B,WAAW,EAAE,aAAa,CAAC,WAAW;QACtC,YAAY,EACV,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,sBAAsB,CAAC,IAAI,SAAS;QAChE,KAAK,EAAE,aAAa,CAAC,KAAK;QAC1B,GAAG;KACJ,CAAC,CACH,CAAC;AACJ,CAAC"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { SimIamSigV4CredentialScope } from "./sim-iam-sigv4-credential-scope.js";
|
|
2
|
+
/**
|
|
3
|
+
* Derive the signing key for one secret access key in one scope.
|
|
4
|
+
*
|
|
5
|
+
* The chain is what stops a signature being reusable outside the scope it was
|
|
6
|
+
* made in: the date, Region and service are inputs to the key itself, so a
|
|
7
|
+
* signature for another day or another service cannot be produced without the
|
|
8
|
+
* secret, whatever the request claims.
|
|
9
|
+
*/
|
|
10
|
+
export declare function simIamSigV4SigningKey(secretAccessKey: string, scope: SimIamSigV4CredentialScope): Buffer;
|
|
11
|
+
/**
|
|
12
|
+
* Build the string a SigV4 signature is actually computed over.
|
|
13
|
+
*
|
|
14
|
+
* The canonical request is hashed rather than signed directly, so the string to
|
|
15
|
+
* sign is a fixed size whatever the request was.
|
|
16
|
+
*/
|
|
17
|
+
export declare function simIamSigV4StringToSign(properties: {
|
|
18
|
+
readonly amzDate: string;
|
|
19
|
+
readonly scope: SimIamSigV4CredentialScope;
|
|
20
|
+
readonly canonicalRequest: string;
|
|
21
|
+
}): string;
|
|
22
|
+
/**
|
|
23
|
+
* Sign a string to sign with a derived signing key.
|
|
24
|
+
*/
|
|
25
|
+
export declare function simIamSigV4Signature(signingKey: Buffer, stringToSign: string): string;
|
|
26
|
+
//# sourceMappingURL=sim-iam-sigv4-signing-key.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signing-key.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signing-key.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,qCAAqC,CAAC;AAEtF;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CACnC,eAAe,EAAE,MAAM,EACvB,KAAK,EAAE,0BAA0B,GAChC,MAAM,CAUR;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,CAAC,UAAU,EAAE;IAClD,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,0BAA0B,CAAC;IAC3C,QAAQ,CAAC,gBAAgB,EAAE,MAAM,CAAC;CACnC,GAAG,MAAM,CAOT;AAED;;GAEG;AACH,wBAAgB,oBAAoB,CAClC,UAAU,EAAE,MAAM,EAClB,YAAY,EAAE,MAAM,GACnB,MAAM,CAER"}
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { createHash, createHmac } from "node:crypto";
|
|
2
|
+
import { simIamSigV4Algorithm } from "./sim-iam-sigv4-authorization.js";
|
|
3
|
+
/**
|
|
4
|
+
* Derive the signing key for one secret access key in one scope.
|
|
5
|
+
*
|
|
6
|
+
* The chain is what stops a signature being reusable outside the scope it was
|
|
7
|
+
* made in: the date, Region and service are inputs to the key itself, so a
|
|
8
|
+
* signature for another day or another service cannot be produced without the
|
|
9
|
+
* secret, whatever the request claims.
|
|
10
|
+
*/
|
|
11
|
+
export function simIamSigV4SigningKey(secretAccessKey, scope) {
|
|
12
|
+
let key = createHmac("sha256", `AWS4${secretAccessKey}`)
|
|
13
|
+
.update(scope.dateStamp)
|
|
14
|
+
.digest();
|
|
15
|
+
for (const part of [scope.regionName, scope.serviceName, "aws4_request"]) {
|
|
16
|
+
key = createHmac("sha256", key).update(part).digest();
|
|
17
|
+
}
|
|
18
|
+
return key;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Build the string a SigV4 signature is actually computed over.
|
|
22
|
+
*
|
|
23
|
+
* The canonical request is hashed rather than signed directly, so the string to
|
|
24
|
+
* sign is a fixed size whatever the request was.
|
|
25
|
+
*/
|
|
26
|
+
export function simIamSigV4StringToSign(properties) {
|
|
27
|
+
return [
|
|
28
|
+
simIamSigV4Algorithm,
|
|
29
|
+
properties.amzDate,
|
|
30
|
+
properties.scope.toString(),
|
|
31
|
+
createHash("sha256").update(properties.canonicalRequest).digest("hex"),
|
|
32
|
+
].join("\n");
|
|
33
|
+
}
|
|
34
|
+
/**
|
|
35
|
+
* Sign a string to sign with a derived signing key.
|
|
36
|
+
*/
|
|
37
|
+
export function simIamSigV4Signature(signingKey, stringToSign) {
|
|
38
|
+
return createHmac("sha256", signingKey).update(stringToSign).digest("hex");
|
|
39
|
+
}
|
|
40
|
+
//# sourceMappingURL=sim-iam-sigv4-signing-key.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-signing-key.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-signing-key.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAErD,OAAO,EAAE,oBAAoB,EAAE,MAAM,kCAAkC,CAAC;AAGxE;;;;;;;GAOG;AACH,MAAM,UAAU,qBAAqB,CACnC,eAAuB,EACvB,KAAiC;IAEjC,IAAI,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,OAAO,eAAe,EAAE,CAAC;SACrD,MAAM,CAAC,KAAK,CAAC,SAAS,CAAC;SACvB,MAAM,EAAE,CAAC;IAEZ,KAAK,MAAM,IAAI,IAAI,CAAC,KAAK,CAAC,UAAU,EAAE,KAAK,CAAC,WAAW,EAAE,cAAc,CAAC,EAAE,CAAC;QACzE,GAAG,GAAG,UAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,CAAC;IACxD,CAAC;IAED,OAAO,GAAG,CAAC;AACb,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,uBAAuB,CAAC,UAIvC;IACC,OAAO;QACL,oBAAoB;QACpB,UAAU,CAAC,OAAO;QAClB,UAAU,CAAC,KAAK,CAAC,QAAQ,EAAE;QAC3B,UAAU,CAAC,QAAQ,CAAC,CAAC,MAAM,CAAC,UAAU,CAAC,gBAAgB,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;KACvE,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;AACf,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,oBAAoB,CAClC,UAAkB,EAClB,YAAoB;IAEpB,OAAO,UAAU,CAAC,QAAQ,EAAE,UAAU,CAAC,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;AAC7E,CAAC"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import type { SimIamCredentialIdentity } from "../credential/sim-aws-credentials.js";
|
|
2
|
+
import type { SimIamSigningCredentialResolver } from "../credential/sim-iam-signing-credential.js";
|
|
3
|
+
import type { SimIamSigV4SignedRequest } from "./sim-iam-sigv4-signed-request.js";
|
|
4
|
+
import type { SimIamSigV4VerifyOptions } from "./sim-iam-sigv4-verify-options.js";
|
|
5
|
+
interface SimIamSigV4VerifierProperties {
|
|
6
|
+
readonly credentials: SimIamSigningCredentialResolver;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Verifies the SigV4 signature on a request and resolves who signed it.
|
|
10
|
+
*
|
|
11
|
+
* This is authentication, not authorization: the answer is which simulated
|
|
12
|
+
* principal made the request, which is exactly the question the IAM
|
|
13
|
+
* authorization already built has no way to ask of an HTTP request.
|
|
14
|
+
*
|
|
15
|
+
* Verification needs no clock. The signing date is an input to the signing key
|
|
16
|
+
* and comes from the request, so a correctly signed request verifies whenever
|
|
17
|
+
* it arrives. Only the credentials behind it can go stale, and that is judged in
|
|
18
|
+
* simulated time by the registry.
|
|
19
|
+
*/
|
|
20
|
+
export declare class SimIamSigV4Verifier {
|
|
21
|
+
private readonly credentials;
|
|
22
|
+
constructor(properties: SimIamSigV4VerifierProperties);
|
|
23
|
+
/**
|
|
24
|
+
* Verify a signed request, returning the identity that signed it.
|
|
25
|
+
*
|
|
26
|
+
* Throws a SimIamSigV4Error carrying the AWS error code real AWS would answer
|
|
27
|
+
* with when the request cannot be attributed to a registered access key.
|
|
28
|
+
*/
|
|
29
|
+
verify(signedRequest: SimIamSigV4SignedRequest, options?: SimIamSigV4VerifyOptions): SimIamCredentialIdentity;
|
|
30
|
+
}
|
|
31
|
+
export {};
|
|
32
|
+
//# sourceMappingURL=sim-iam-sigv4-verifier.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-verifier.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-verifier.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,sCAAsC,CAAC;AACrF,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,6CAA6C,CAAC;AAKnG,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElF,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElF,UAAU,6BAA6B;IACrC,QAAQ,CAAC,WAAW,EAAE,+BAA+B,CAAC;CACvD;AAED;;;;;;;;;;;GAWG;AACH,qBAAa,mBAAmB;IAC9B,OAAO,CAAC,QAAQ,CAAC,WAAW,CAAkC;IAE9D,YAAY,UAAU,EAAE,6BAA6B,EAEpD;IAED;;;;;OAKG;IACH,MAAM,CACJ,aAAa,EAAE,wBAAwB,EACvC,OAAO,GAAE,wBAA6B,GACrC,wBAAwB,CA4B1B;CACF"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { SimIamSigV4Authorization } from "./sim-iam-sigv4-authorization.js";
|
|
2
|
+
import { simIamSigV4CheckExpectedScope } from "./sim-iam-sigv4-expected-scope.js";
|
|
3
|
+
import { simIamSigV4CheckSignature } from "./sim-iam-sigv4-signature-check.js";
|
|
4
|
+
import { simIamSigV4RequestDate } from "./sim-iam-sigv4-request-date.js";
|
|
5
|
+
import { simIamSigV4SigningCredential } from "./sim-iam-sigv4-signing-credentials.js";
|
|
6
|
+
/**
|
|
7
|
+
* Verifies the SigV4 signature on a request and resolves who signed it.
|
|
8
|
+
*
|
|
9
|
+
* This is authentication, not authorization: the answer is which simulated
|
|
10
|
+
* principal made the request, which is exactly the question the IAM
|
|
11
|
+
* authorization already built has no way to ask of an HTTP request.
|
|
12
|
+
*
|
|
13
|
+
* Verification needs no clock. The signing date is an input to the signing key
|
|
14
|
+
* and comes from the request, so a correctly signed request verifies whenever
|
|
15
|
+
* it arrives. Only the credentials behind it can go stale, and that is judged in
|
|
16
|
+
* simulated time by the registry.
|
|
17
|
+
*/
|
|
18
|
+
export class SimIamSigV4Verifier {
|
|
19
|
+
credentials;
|
|
20
|
+
constructor(properties) {
|
|
21
|
+
this.credentials = properties.credentials;
|
|
22
|
+
}
|
|
23
|
+
/**
|
|
24
|
+
* Verify a signed request, returning the identity that signed it.
|
|
25
|
+
*
|
|
26
|
+
* Throws a SimIamSigV4Error carrying the AWS error code real AWS would answer
|
|
27
|
+
* with when the request cannot be attributed to a registered access key.
|
|
28
|
+
*/
|
|
29
|
+
verify(signedRequest, options = {}) {
|
|
30
|
+
const authorization = SimIamSigV4Authorization.parse(signedRequest.headers.get("authorization"));
|
|
31
|
+
// Checked before anything else can fail on it, so a signature made for the
|
|
32
|
+
// wrong endpoint says so rather than looking like a bad secret.
|
|
33
|
+
simIamSigV4CheckExpectedScope(options.expectedScope, authorization.scope);
|
|
34
|
+
const amzDate = simIamSigV4RequestDate(signedRequest.headers, authorization.scope);
|
|
35
|
+
const { signingKey, identity } = simIamSigV4SigningCredential(this.credentials, signedRequest, authorization, options.now);
|
|
36
|
+
simIamSigV4CheckSignature({
|
|
37
|
+
signedRequest,
|
|
38
|
+
authorization,
|
|
39
|
+
signingKey,
|
|
40
|
+
amzDate,
|
|
41
|
+
});
|
|
42
|
+
return identity;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
//# sourceMappingURL=sim-iam-sigv4-verifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-verifier.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-verifier.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,wBAAwB,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,6BAA6B,EAAE,MAAM,mCAAmC,CAAC;AAClF,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAC/E,OAAO,EAAE,sBAAsB,EAAE,MAAM,iCAAiC,CAAC;AAEzE,OAAO,EAAE,4BAA4B,EAAE,MAAM,wCAAwC,CAAC;AAOtF;;;;;;;;;;;GAWG;AACH,MAAM,OAAO,mBAAmB;IACb,WAAW,CAAkC;IAE9D,YAAY,UAAyC;QACnD,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC,WAAW,CAAC;IAC5C,CAAC;IAED;;;;;OAKG;IACH,MAAM,CACJ,aAAuC,EACvC,OAAO,GAA6B,EAAE;QAEtC,MAAM,aAAa,GAAG,wBAAwB,CAAC,KAAK,CAClD,aAAa,CAAC,OAAO,CAAC,GAAG,CAAC,eAAe,CAAC,CAC3C,CAAC;QAEF,2EAA2E;QAC3E,gEAAgE;QAChE,6BAA6B,CAAC,OAAO,CAAC,aAAa,EAAE,aAAa,CAAC,KAAK,CAAC,CAAC;QAE1E,MAAM,OAAO,GAAG,sBAAsB,CACpC,aAAa,CAAC,OAAO,EACrB,aAAa,CAAC,KAAK,CACpB,CAAC;QACF,MAAM,EAAE,UAAU,EAAE,QAAQ,EAAE,GAAG,4BAA4B,CAC3D,IAAI,CAAC,WAAW,EAChB,aAAa,EACb,aAAa,EACb,OAAO,CAAC,GAAG,CACZ,CAAC;QAEF,yBAAyB,CAAC;YACxB,aAAa;YACb,aAAa;YACb,UAAU;YACV,OAAO;SACR,CAAC,CAAC;QAEH,OAAO,QAAQ,CAAC;IAClB,CAAC;CACF"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import type { SimIamSigV4ExpectedScope } from "./sim-iam-sigv4-expected-scope.js";
|
|
2
|
+
/**
|
|
3
|
+
* Anything verifying a signature needs beyond the request itself.
|
|
4
|
+
*/
|
|
5
|
+
export interface SimIamSigV4VerifyOptions {
|
|
6
|
+
/**
|
|
7
|
+
* The service and Region the signature should have been scoped to. Omitted
|
|
8
|
+
* when nothing about the receiving endpoint is known, as when a test verifies
|
|
9
|
+
* a signature on its own.
|
|
10
|
+
*/
|
|
11
|
+
readonly expectedScope?: SimIamSigV4ExpectedScope | undefined;
|
|
12
|
+
/**
|
|
13
|
+
* Simulated time that credential expiry is judged against.
|
|
14
|
+
*/
|
|
15
|
+
readonly now?: Date | undefined;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=sim-iam-sigv4-verify-options.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-verify-options.d.ts","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-verify-options.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,wBAAwB;IACvC;;;;OAIG;IACH,QAAQ,CAAC,aAAa,CAAC,EAAE,wBAAwB,GAAG,SAAS,CAAC;IAC9D;;OAEG;IACH,QAAQ,CAAC,GAAG,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC;CACjC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-sigv4-verify-options.js","sourceRoot":"","sources":["../../../../src/service/iam/sigv4/sim-iam-sigv4-verify-options.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import { type BackgroundScheduler } from "../../util/background/background.js";
|
|
2
|
+
import type { SimAwsAccountId } from "../aws/sim-aws-account.js";
|
|
3
|
+
import type { SimAwsAccountRegionScope } from "../aws/sim-aws-account-region-scope.js";
|
|
4
|
+
import { SimIamAccountAuthZ } from "./authorize/sim-iam-account-auth-z.js";
|
|
5
|
+
import type { SimIamInterServiceAuthZ } from "./authorize/sim-iam-inter-service-auth-z.js";
|
|
6
|
+
import { SimIamCommandHandlers } from "./command/sim-iam-command-handlers.js";
|
|
7
|
+
import { SimIamCredentialRegistry } from "./credential/sim-iam-credential-registry.js";
|
|
8
|
+
import { type SimIamSessionCredentialGenerator } from "./credential/session/sim-iam-session-cred-gen.js";
|
|
9
|
+
import { SimIamSessionManager } from "./credential/session/sim-iam-session-manager.js";
|
|
10
|
+
import { type SimIamUserCredentialGenerator } from "./credential/user/sim-iam-user-credential-generator.js";
|
|
11
|
+
import type { SimIamManagedPolicy } from "./policy/sim-iam-policy.js";
|
|
12
|
+
import type { SimIamAccountResolver } from "./registry/sim-iam-account-resolver.js";
|
|
13
|
+
import type { SimIamRole, SimIamRoleName } from "./role/sim-iam-role.js";
|
|
14
|
+
import type { SimIamUser, SimIamUsername } from "./user/sim-iam-user.js";
|
|
15
|
+
export interface SimIamProperties {
|
|
16
|
+
readonly accountRegionScope?: SimAwsAccountRegionScope;
|
|
17
|
+
readonly background?: BackgroundScheduler;
|
|
18
|
+
readonly credentialRegistry?: SimIamCredentialRegistry;
|
|
19
|
+
readonly sessionCredentialGenerator?: SimIamSessionCredentialGenerator;
|
|
20
|
+
readonly userCredentialGenerator?: SimIamUserCredentialGenerator;
|
|
21
|
+
/**
|
|
22
|
+
* Resolves the IAM of other Accounts in the same simulation.
|
|
23
|
+
*
|
|
24
|
+
* A cross-Account request is decided in both Accounts, so deciding one needs
|
|
25
|
+
* a way to reach the caller's own Account. A standalone SimIam has no
|
|
26
|
+
* simulation around it and so leaves this out.
|
|
27
|
+
*/
|
|
28
|
+
readonly iamResolver?: SimIamAccountResolver;
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* The state and collaborators of one simulated IAM Account.
|
|
32
|
+
*
|
|
33
|
+
* SimIam is the SDK-facing facade. This class is what it is a facade over: the
|
|
34
|
+
* Account's stored Roles, Users and Policies, the credential registry and
|
|
35
|
+
* session manager, and the authorization and command-handling collaborators
|
|
36
|
+
* that work on them. Keeping the construction and defaulting rules here leaves
|
|
37
|
+
* the facade as state plus delegation.
|
|
38
|
+
*/
|
|
39
|
+
export declare class SimIamAccountParts {
|
|
40
|
+
readonly accountId: SimAwsAccountId;
|
|
41
|
+
readonly background: BackgroundScheduler;
|
|
42
|
+
readonly credentials: SimIamCredentialRegistry;
|
|
43
|
+
readonly sessionManager: SimIamSessionManager;
|
|
44
|
+
readonly accountAuthZ: SimIamAccountAuthZ;
|
|
45
|
+
readonly policies: Map<`arn:aws:${string}:${string}:${string}:${string}/${string}`, SimIamManagedPolicy>;
|
|
46
|
+
readonly roles: Map<SimIamRoleName, SimIamRole>;
|
|
47
|
+
readonly users: Map<SimIamUsername, SimIamUser>;
|
|
48
|
+
private readonly userCredentialGenerator;
|
|
49
|
+
constructor(properties: SimIamProperties);
|
|
50
|
+
/**
|
|
51
|
+
* Make the command handlers for this Account.
|
|
52
|
+
*
|
|
53
|
+
* IAM authorizes its own control-plane commands, so the handlers need the
|
|
54
|
+
* service facade the commands arrive at and cannot be built before it.
|
|
55
|
+
*/
|
|
56
|
+
commandHandlers(iam: SimIamInterServiceAuthZ): SimIamCommandHandlers;
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=sim-iam-account-parts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-account-parts.d.ts","sourceRoot":"","sources":["../../../src/service/iam/sim-iam-account-parts.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAEvF,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAC3E,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,6CAA6C,CAAC;AAC3F,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EAEL,KAAK,gCAAgC,EACtC,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AACvF,OAAO,EAEL,KAAK,6BAA6B,EACnC,MAAM,wDAAwD,CAAC;AAChE,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,4BAA4B,CAAC;AACtE,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,wCAAwC,CAAC;AACpF,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AACzE,OAAO,KAAK,EAAE,UAAU,EAAE,cAAc,EAAE,MAAM,wBAAwB,CAAC;AAEzE,MAAM,WAAW,gBAAgB;IAC/B,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,UAAU,CAAC,EAAE,mBAAmB,CAAC;IAC1C,QAAQ,CAAC,kBAAkB,CAAC,EAAE,wBAAwB,CAAC;IACvD,QAAQ,CAAC,0BAA0B,CAAC,EAAE,gCAAgC,CAAC;IACvE,QAAQ,CAAC,uBAAuB,CAAC,EAAE,6BAA6B,CAAC;IAEjE;;;;;;OAMG;IACH,QAAQ,CAAC,WAAW,CAAC,EAAE,qBAAqB,CAAC;CAC9C;AAED;;;;;;;;GAQG;AACH,qBAAa,kBAAkB;IAC7B,QAAQ,CAAC,SAAS,EAAE,eAAe,CAAC;IACpC,QAAQ,CAAC,UAAU,EAAE,mBAAmB,CAAC;IACzC,QAAQ,CAAC,WAAW,EAAE,wBAAwB,CAAC;IAC/C,QAAQ,CAAC,cAAc,EAAE,oBAAoB,CAAC;IAC9C,QAAQ,CAAC,YAAY,EAAE,kBAAkB,CAAC;IAE1C,QAAQ,CAAC,QAAQ,wFAA0C;IAC3D,QAAQ,CAAC,KAAK,kCAAyC;IACvD,QAAQ,CAAC,KAAK,kCAAyC;IAEvD,OAAO,CAAC,QAAQ,CAAC,uBAAuB,CAAgC;IAExE,YAAY,UAAU,EAAE,gBAAgB,EAgCvC;IAED;;;;;OAKG;IACH,eAAe,CAAC,GAAG,EAAE,uBAAuB,GAAG,qBAAqB,CAWnE;CACF"}
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
import { BackgroundTasks, } from "../../util/background/background.js";
|
|
2
|
+
import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-scope.factory.js";
|
|
3
|
+
import { SimIamAccountAuthZ } from "./authorize/sim-iam-account-auth-z.js";
|
|
4
|
+
import { SimIamCommandHandlers } from "./command/sim-iam-command-handlers.js";
|
|
5
|
+
import { SimIamCredentialRegistry } from "./credential/sim-iam-credential-registry.js";
|
|
6
|
+
import { SimIamRandomSessionCredentialGenerator, } from "./credential/session/sim-iam-session-cred-gen.js";
|
|
7
|
+
import { SimIamSessionManager } from "./credential/session/sim-iam-session-manager.js";
|
|
8
|
+
import { SimIamRandomUserCredentialGenerator, } from "./credential/user/sim-iam-user-credential-generator.js";
|
|
9
|
+
/**
|
|
10
|
+
* The state and collaborators of one simulated IAM Account.
|
|
11
|
+
*
|
|
12
|
+
* SimIam is the SDK-facing facade. This class is what it is a facade over: the
|
|
13
|
+
* Account's stored Roles, Users and Policies, the credential registry and
|
|
14
|
+
* session manager, and the authorization and command-handling collaborators
|
|
15
|
+
* that work on them. Keeping the construction and defaulting rules here leaves
|
|
16
|
+
* the facade as state plus delegation.
|
|
17
|
+
*/
|
|
18
|
+
export class SimIamAccountParts {
|
|
19
|
+
accountId;
|
|
20
|
+
background;
|
|
21
|
+
credentials;
|
|
22
|
+
sessionManager;
|
|
23
|
+
accountAuthZ;
|
|
24
|
+
policies = new Map();
|
|
25
|
+
roles = new Map();
|
|
26
|
+
users = new Map();
|
|
27
|
+
userCredentialGenerator;
|
|
28
|
+
constructor(properties) {
|
|
29
|
+
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), background = new BackgroundTasks(), sessionCredentialGenerator = new SimIamRandomSessionCredentialGenerator(), userCredentialGenerator = new SimIamRandomUserCredentialGenerator(), } = properties;
|
|
30
|
+
// The scheduler is this simulation's clock, so session expiry is judged in
|
|
31
|
+
// the same time as every other simulated timestamp.
|
|
32
|
+
const credentialRegistry = properties.credentialRegistry ??
|
|
33
|
+
new SimIamCredentialRegistry({ clock: background });
|
|
34
|
+
this.accountId = accountRegionScope.accountId;
|
|
35
|
+
this.background = background;
|
|
36
|
+
this.credentials = credentialRegistry;
|
|
37
|
+
this.userCredentialGenerator = userCredentialGenerator;
|
|
38
|
+
this.sessionManager = new SimIamSessionManager({
|
|
39
|
+
accountId: this.accountId,
|
|
40
|
+
roles: this.roles,
|
|
41
|
+
credentialRegistry,
|
|
42
|
+
credentialGenerator: sessionCredentialGenerator,
|
|
43
|
+
});
|
|
44
|
+
this.accountAuthZ = new SimIamAccountAuthZ({
|
|
45
|
+
accountId: this.accountId,
|
|
46
|
+
policies: this.policies,
|
|
47
|
+
roles: this.roles,
|
|
48
|
+
users: this.users,
|
|
49
|
+
credentialIdentityResolver: credentialRegistry,
|
|
50
|
+
iamResolver: properties.iamResolver,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Make the command handlers for this Account.
|
|
55
|
+
*
|
|
56
|
+
* IAM authorizes its own control-plane commands, so the handlers need the
|
|
57
|
+
* service facade the commands arrive at and cannot be built before it.
|
|
58
|
+
*/
|
|
59
|
+
commandHandlers(iam) {
|
|
60
|
+
return new SimIamCommandHandlers({
|
|
61
|
+
accountId: this.accountId,
|
|
62
|
+
policies: this.policies,
|
|
63
|
+
roles: this.roles,
|
|
64
|
+
users: this.users,
|
|
65
|
+
credentialRegistry: this.credentials,
|
|
66
|
+
userCredentialGenerator: this.userCredentialGenerator,
|
|
67
|
+
background: this.background,
|
|
68
|
+
iam,
|
|
69
|
+
});
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
//# sourceMappingURL=sim-iam-account-parts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-iam-account-parts.js","sourceRoot":"","sources":["../../../src/service/iam/sim-iam-account-parts.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAI7C,OAAO,EAAE,+BAA+B,EAAE,MAAM,gDAAgD,CAAC;AACjG,OAAO,EAAE,kBAAkB,EAAE,MAAM,uCAAuC,CAAC;AAE3E,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,wBAAwB,EAAE,MAAM,6CAA6C,CAAC;AACvF,OAAO,EACL,sCAAsC,GAEvC,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,oBAAoB,EAAE,MAAM,iDAAiD,CAAC;AACvF,OAAO,EACL,mCAAmC,GAEpC,MAAM,wDAAwD,CAAC;AAuBhE;;;;;;;;GAQG;AACH,MAAM,OAAO,kBAAkB;IACpB,SAAS,CAAkB;IAC3B,UAAU,CAAsB;IAChC,WAAW,CAA2B;IACtC,cAAc,CAAuB;IACrC,YAAY,CAAqB;IAEjC,QAAQ,GAAG,IAAI,GAAG,EAA+B,CAAC;IAClD,KAAK,GAAG,IAAI,GAAG,EAA8B,CAAC;IAC9C,KAAK,GAAG,IAAI,GAAG,EAA8B,CAAC;IAEtC,uBAAuB,CAAgC;IAExE,YAAY,UAA4B;QACtC,MAAM,EACJ,kBAAkB,GAAG,+BAA+B,CAAC,IAAI,EAAE,EAC3D,UAAU,GAAG,IAAI,eAAe,EAAE,EAClC,0BAA0B,GAAG,IAAI,sCAAsC,EAAE,EACzE,uBAAuB,GAAG,IAAI,mCAAmC,EAAE,GACpE,GAAG,UAAU,CAAC;QAEf,2EAA2E;QAC3E,oDAAoD;QACpD,MAAM,kBAAkB,GACtB,UAAU,CAAC,kBAAkB;YAC7B,IAAI,wBAAwB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,CAAC,CAAC;QAEtD,IAAI,CAAC,SAAS,GAAG,kBAAkB,CAAC,SAAS,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,WAAW,GAAG,kBAAkB,CAAC;QACtC,IAAI,CAAC,uBAAuB,GAAG,uBAAuB,CAAC;QACvD,IAAI,CAAC,cAAc,GAAG,IAAI,oBAAoB,CAAC;YAC7C,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,kBAAkB;YAClB,mBAAmB,EAAE,0BAA0B;SAChD,CAAC,CAAC;QACH,IAAI,CAAC,YAAY,GAAG,IAAI,kBAAkB,CAAC;YACzC,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,0BAA0B,EAAE,kBAAkB;YAC9C,WAAW,EAAE,UAAU,CAAC,WAAW;SACpC,CAAC,CAAC;IACL,CAAC;IAED;;;;;OAKG;IACH,eAAe,CAAC,GAA4B;QAC1C,OAAO,IAAI,qBAAqB,CAAC;YAC/B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,kBAAkB,EAAE,IAAI,CAAC,WAAW;YACpC,uBAAuB,EAAE,IAAI,CAAC,uBAAuB;YACrD,UAAU,EAAE,IAAI,CAAC,UAAU;YAC3B,GAAG;SACJ,CAAC,CAAC;IACL,CAAC;CACF"}
|