@kensio/yulin 0.40.0 → 0.42.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 +2 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.d.ts.map +1 -1
- package/dist/sdk/router/resolve-sim-sdk-command-router.js +6 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +23 -24
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.js +37 -24
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +10 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.js +12 -0
- package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
- package/dist/service/aws/sim-aws.d.ts +17 -33
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +19 -33
- package/dist/service/aws/sim-aws.js.map +1 -1
- 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 +2 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-parameter-cfn.d.ts +27 -0
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-parameter-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-parameter-cfn.js +36 -0
- package/dist/service/cloudformation/resource/cfn/ssm/sim-ssm-parameter-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js +3 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js.map +1 -1
- package/dist/service/cognito/command/authorize/sim-cognito-authorizer.d.ts +36 -0
- package/dist/service/cognito/command/authorize/sim-cognito-authorizer.d.ts.map +1 -0
- package/dist/service/cognito/command/authorize/sim-cognito-authorizer.js +54 -0
- package/dist/service/cognito/command/authorize/sim-cognito-authorizer.js.map +1 -0
- package/dist/service/cognito/command/client/list-user-pool-clients.command.d.ts +29 -0
- package/dist/service/cognito/command/client/list-user-pool-clients.command.d.ts.map +1 -0
- package/dist/service/cognito/command/client/list-user-pool-clients.command.js +2 -0
- package/dist/service/cognito/command/client/list-user-pool-clients.command.js.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-list-user-pool-clients.d.ts +30 -0
- package/dist/service/cognito/command/client/sim-cognito-list-user-pool-clients.d.ts.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-list-user-pool-clients.js +44 -0
- package/dist/service/cognito/command/client/sim-cognito-list-user-pool-clients.js.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.d.ts +16 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.d.ts.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js +28 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-client-options.js.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-managed-login.d.ts +23 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-managed-login.d.ts.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-managed-login.js +51 -0
- package/dist/service/cognito/command/client/sim-cognito-unsimulated-managed-login.js.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-commands.d.ts +50 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-commands.d.ts.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-commands.js +75 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-commands.js.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-view.d.ts +27 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-view.d.ts.map +1 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-view.js +45 -0
- package/dist/service/cognito/command/client/sim-cognito-user-pool-client-view.js.map +1 -0
- package/dist/service/cognito/command/client/user-pool-client.command.d.ts +97 -0
- package/dist/service/cognito/command/client/user-pool-client.command.d.ts.map +1 -0
- package/dist/service/cognito/command/client/user-pool-client.command.js +2 -0
- package/dist/service/cognito/command/client/user-pool-client.command.js.map +1 -0
- package/dist/service/cognito/command/sim-cognito-command.types.d.ts +8 -0
- package/dist/service/cognito/command/sim-cognito-command.types.d.ts.map +1 -0
- package/dist/service/cognito/command/sim-cognito-command.types.js +2 -0
- package/dist/service/cognito/command/sim-cognito-command.types.js.map +1 -0
- package/dist/service/cognito/command/sim-cognito-page.d.ts +29 -0
- package/dist/service/cognito/command/sim-cognito-page.d.ts.map +1 -0
- package/dist/service/cognito/command/sim-cognito-page.js +59 -0
- package/dist/service/cognito/command/sim-cognito-page.js.map +1 -0
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.d.ts +21 -0
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.d.ts.map +1 -0
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.js +37 -0
- package/dist/service/cognito/command/sim-cognito-unsimulated-input.js.map +1 -0
- package/dist/service/cognito/command/user-pool/list-user-pools.command.d.ts +29 -0
- package/dist/service/cognito/command/user-pool/list-user-pools.command.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/list-user-pools.command.js +2 -0
- package/dist/service/cognito/command/user-pool/list-user-pools.command.js.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-list-user-pools.d.ts +37 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-list-user-pools.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-list-user-pools.js +48 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-list-user-pools.js.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-features.d.ts +16 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-features.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-features.js +30 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-features.js.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.d.ts +16 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.js +24 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-messaging.js.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.d.ts +28 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.js +47 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-unsimulated-pool-options.js.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-commands.d.ts +41 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-commands.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-commands.js +65 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-commands.js.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts +25 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js +41 -0
- package/dist/service/cognito/command/user-pool/sim-cognito-user-pool-view.js.map +1 -0
- package/dist/service/cognito/command/user-pool/user-pool.command.d.ts +94 -0
- package/dist/service/cognito/command/user-pool/user-pool.command.d.ts.map +1 -0
- package/dist/service/cognito/command/user-pool/user-pool.command.js +2 -0
- package/dist/service/cognito/command/user-pool/user-pool.command.js.map +1 -0
- package/dist/service/cognito/error/sim-cognito.error.d.ts +34 -0
- package/dist/service/cognito/error/sim-cognito.error.d.ts.map +1 -0
- package/dist/service/cognito/error/sim-cognito.error.js +35 -0
- package/dist/service/cognito/error/sim-cognito.error.js.map +1 -0
- package/dist/service/cognito/index.d.ts +13 -0
- package/dist/service/cognito/index.d.ts.map +1 -0
- package/dist/service/cognito/index.js +11 -0
- package/dist/service/cognito/index.js.map +1 -0
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.d.ts +18 -0
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.d.ts.map +1 -0
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.js +56 -0
- package/dist/service/cognito/sdk/sim-cognito-sdk-command-router.js.map +1 -0
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts +81 -0
- package/dist/service/cognito/sim-cognito-identity-provider.d.ts.map +1 -0
- package/dist/service/cognito/sim-cognito-identity-provider.js +132 -0
- package/dist/service/cognito/sim-cognito-identity-provider.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-client-secret.d.ts +10 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-client-secret.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-client-secret.js +22 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-client-secret.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-explicit-auth-flows.d.ts +23 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-explicit-auth-flows.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-explicit-auth-flows.js +77 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-explicit-auth-flows.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-refresh-token-lifetime.d.ts +13 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-refresh-token-lifetime.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-refresh-token-lifetime.js +28 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-refresh-token-lifetime.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime-specs.d.ts +29 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime-specs.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime-specs.js +41 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime-specs.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime.d.ts +49 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime.js +66 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-lifetime.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-validity.d.ts +41 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-validity.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-validity.js +40 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-token-validity.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.d.ts +32 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.js +44 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-factory.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-id.d.ts +11 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-id.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-id.js +39 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-id.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-store.d.ts +37 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-store.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-store.js +52 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client-store.js.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.d.ts +50 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.js +47 -0
- package/dist/service/cognito/user-pool/client/sim-cognito-user-pool-client.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-deletion-protection.d.ts +18 -0
- package/dist/service/cognito/user-pool/sim-cognito-deletion-protection.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-deletion-protection.js +31 -0
- package/dist/service/cognito/user-pool/sim-cognito-deletion-protection.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-name.d.ts +22 -0
- package/dist/service/cognito/user-pool/sim-cognito-name.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-name.js +29 -0
- package/dist/service/cognito/user-pool/sim-cognito-name.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-password-policy.d.ts +56 -0
- package/dist/service/cognito/user-pool/sim-cognito-password-policy.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-password-policy.js +51 -0
- package/dist/service/cognito/user-pool/sim-cognito-password-policy.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.d.ts +26 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.js +26 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-arn.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.d.ts +34 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.js +44 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-factory.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.d.ts +20 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.js +48 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-id.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.d.ts +36 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.js +51 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool-store.js.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.d.ts +65 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.d.ts.map +1 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.js +71 -0
- package/dist/service/cognito/user-pool/sim-cognito-user-pool.js.map +1 -0
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.d.ts +23 -4
- 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 +22 -9
- package/dist/service/iam/authorize/context/sim-iam-auth-z-context-builder.js.map +1 -1
- package/dist/service/iam/authorize/context/sim-iam-caller-condition-source.d.ts +21 -0
- package/dist/service/iam/authorize/context/sim-iam-caller-condition-source.d.ts.map +1 -0
- package/dist/service/iam/authorize/context/sim-iam-caller-condition-source.js +2 -0
- package/dist/service/iam/authorize/context/sim-iam-caller-condition-source.js.map +1 -0
- package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts +3 -6
- package/dist/service/kms/command/alias/sim-kms-alias-commands.d.ts.map +1 -1
- package/dist/service/kms/command/alias/sim-kms-alias-commands.js +2 -2
- package/dist/service/kms/command/alias/sim-kms-alias-commands.js.map +1 -1
- package/dist/service/kms/command/authorize/sim-kms-authorizer.d.ts +16 -3
- package/dist/service/kms/command/authorize/sim-kms-authorizer.d.ts.map +1 -1
- package/dist/service/kms/command/authorize/sim-kms-authorizer.js +32 -4
- package/dist/service/kms/command/authorize/sim-kms-authorizer.js.map +1 -1
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.d.ts +3 -6
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.d.ts.map +1 -1
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.js +2 -2
- package/dist/service/kms/command/crypto/sim-kms-crypto-commands.js.map +1 -1
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.d.ts +2 -5
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.d.ts.map +1 -1
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.js +1 -1
- package/dist/service/kms/command/crypto/sim-kms-generate-data-key.js.map +1 -1
- package/dist/service/kms/command/key/sim-kms-key-commands.d.ts +3 -6
- package/dist/service/kms/command/key/sim-kms-key-commands.d.ts.map +1 -1
- package/dist/service/kms/command/key/sim-kms-key-commands.js +2 -2
- package/dist/service/kms/command/key/sim-kms-key-commands.js.map +1 -1
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.d.ts +5 -8
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.d.ts.map +1 -1
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.js +4 -4
- package/dist/service/kms/command/key/sim-kms-key-lifecycle-commands.js.map +1 -1
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.d.ts +3 -6
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.d.ts.map +1 -1
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.js +2 -2
- package/dist/service/kms/command/key/sim-kms-key-policy-commands.js.map +1 -1
- package/dist/service/kms/command/key/sim-kms-list-keys.d.ts +2 -5
- package/dist/service/kms/command/key/sim-kms-list-keys.d.ts.map +1 -1
- package/dist/service/kms/command/key/sim-kms-list-keys.js +1 -1
- package/dist/service/kms/command/key/sim-kms-list-keys.js.map +1 -1
- package/dist/service/kms/command/sim-kms-request-options.d.ts +24 -0
- package/dist/service/kms/command/sim-kms-request-options.d.ts.map +1 -0
- package/dist/service/kms/command/sim-kms-request-options.js +2 -0
- package/dist/service/kms/command/sim-kms-request-options.js.map +1 -0
- package/dist/service/kms/index.d.ts +2 -1
- package/dist/service/kms/index.d.ts.map +1 -1
- package/dist/service/kms/index.js.map +1 -1
- package/dist/service/kms/key/sim-kms-caller-account.d.ts +25 -0
- package/dist/service/kms/key/sim-kms-caller-account.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-caller-account.js +27 -0
- package/dist/service/kms/key/sim-kms-caller-account.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-factory.d.ts +17 -2
- package/dist/service/kms/key/sim-kms-key-factory.d.ts.map +1 -1
- package/dist/service/kms/key/sim-kms-key-factory.js +25 -7
- package/dist/service/kms/key/sim-kms-key-factory.js.map +1 -1
- package/dist/service/kms/key/sim-kms-key-policy.d.ts +14 -0
- package/dist/service/kms/key/sim-kms-key-policy.d.ts.map +1 -1
- package/dist/service/kms/key/sim-kms-key-policy.js +49 -0
- package/dist/service/kms/key/sim-kms-key-policy.js.map +1 -1
- package/dist/service/kms/key/sim-kms-key-store.d.ts +5 -1
- package/dist/service/kms/key/sim-kms-key-store.d.ts.map +1 -1
- package/dist/service/kms/key/sim-kms-key-store.js +7 -3
- package/dist/service/kms/key/sim-kms-key-store.js.map +1 -1
- package/dist/service/kms/key/sim-kms-via-service.d.ts +37 -0
- package/dist/service/kms/key/sim-kms-via-service.d.ts.map +1 -0
- package/dist/service/kms/key/sim-kms-via-service.js +50 -0
- package/dist/service/kms/key/sim-kms-via-service.js.map +1 -0
- package/dist/service/kms/sim-kms.d.ts +1 -4
- package/dist/service/kms/sim-kms.d.ts.map +1 -1
- package/dist/service/kms/sim-kms.js.map +1 -1
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-metadata-update.d.ts +24 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-metadata-update.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-metadata-update.js +27 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-metadata-update.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.d.ts +1 -1
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.d.ts.map +1 -1
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.js +26 -10
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.js.map +1 -1
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.d.ts +6 -6
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.d.ts.map +1 -1
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.js +21 -19
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.js.map +1 -1
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.d.ts +10 -2
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.d.ts.map +1 -1
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.js +19 -5
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.js.map +1 -1
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.d.ts +22 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.d.ts.map +1 -1
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.js +26 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.js.map +1 -1
- package/dist/service/secretsmanager/index.d.ts +2 -1
- package/dist/service/secretsmanager/index.d.ts.map +1 -1
- package/dist/service/secretsmanager/index.js +2 -1
- package/dist/service/secretsmanager/index.js.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-encrypted-value.d.ts +35 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-encrypted-value.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-encrypted-value.js +34 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-encrypted-value.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-crypto.d.ts +63 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-crypto.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-crypto.js +24 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-crypto.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-key-problems.d.ts +17 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-key-problems.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-key-problems.js +30 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-kms-key-problems.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.d.ts +21 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.d.ts.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.js +29 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.js.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.d.ts +16 -4
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.d.ts.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.js +40 -11
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.js.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.d.ts +7 -3
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.d.ts.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.js +4 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.js.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.d.ts +5 -5
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.js +5 -5
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-cipher.d.ts +20 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-cipher.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-cipher.js +53 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-cipher.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-encryption.d.ts +45 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-encryption.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-encryption.js +56 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-value-encryption.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-write.d.ts +37 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-write.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-write.js +2 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-write.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.d.ts +13 -14
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.d.ts.map +1 -1
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.js +14 -7
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.js.map +1 -1
- package/dist/service/secretsmanager/sim-secrets-manager.d.ts +7 -0
- package/dist/service/secretsmanager/sim-secrets-manager.d.ts.map +1 -1
- package/dist/service/secretsmanager/sim-secrets-manager.js +10 -4
- package/dist/service/secretsmanager/sim-secrets-manager.js.map +1 -1
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts +30 -0
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.d.ts.map +1 -0
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js +48 -0
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.js.map +1 -0
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-properties.d.ts +77 -0
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-properties.d.ts.map +1 -0
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-properties.js +125 -0
- package/dist/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-properties.js.map +1 -0
- package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts +23 -0
- package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.d.ts.map +1 -0
- package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js +30 -0
- package/dist/service/ssm/cfn/sim-cfn-ssm-resource-factory.js.map +1 -0
- package/dist/service/ssm/command/authorize/sim-ssm-authorizer.d.ts +44 -0
- package/dist/service/ssm/command/authorize/sim-ssm-authorizer.d.ts.map +1 -0
- package/dist/service/ssm/command/authorize/sim-ssm-authorizer.js +65 -0
- package/dist/service/ssm/command/authorize/sim-ssm-authorizer.js.map +1 -0
- package/dist/service/ssm/command/parameter/parameter.command.d.ts +99 -0
- package/dist/service/ssm/command/parameter/parameter.command.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/parameter.command.js +2 -0
- package/dist/service/ssm/command/parameter/parameter.command.js.map +1 -0
- package/dist/service/ssm/command/parameter/query.command.d.ts +85 -0
- package/dist/service/ssm/command/parameter/query.command.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/query.command.js +2 -0
- package/dist/service/ssm/command/parameter/query.command.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.d.ts +38 -0
- package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.js +62 -0
- package/dist/service/ssm/command/parameter/sim-ssm-delete-parameter-commands.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.d.ts +43 -0
- package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.js +63 -0
- package/dist/service/ssm/command/parameter/sim-ssm-describe-parameters.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.d.ts +39 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.js +70 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameter-commands.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.d.ts +41 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.js +60 -0
- package/dist/service/ssm/command/parameter/sim-ssm-get-parameters-by-path.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.d.ts +5 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.js +22 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-names.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.d.ts +35 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.js +51 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-page.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-read.d.ts +23 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-read.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-read.js +2 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-read.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.d.ts +41 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.js +60 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-reader.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.d.ts +37 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.js +60 -0
- package/dist/service/ssm/command/parameter/sim-ssm-parameter-view.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.d.ts +34 -0
- package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.js +51 -0
- package/dist/service/ssm/command/parameter/sim-ssm-put-parameter.js.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.d.ts +19 -0
- package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.d.ts.map +1 -0
- package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.js +47 -0
- package/dist/service/ssm/command/parameter/sim-ssm-unsimulated-put-options.js.map +1 -0
- package/dist/service/ssm/command/sim-ssm-command.types.d.ts +6 -0
- package/dist/service/ssm/command/sim-ssm-command.types.d.ts.map +1 -0
- package/dist/service/ssm/command/sim-ssm-command.types.js +2 -0
- package/dist/service/ssm/command/sim-ssm-command.types.js.map +1 -0
- package/dist/service/ssm/error/sim-ssm.error.d.ts +99 -0
- package/dist/service/ssm/error/sim-ssm.error.d.ts.map +1 -0
- package/dist/service/ssm/error/sim-ssm.error.js +114 -0
- package/dist/service/ssm/error/sim-ssm.error.js.map +1 -0
- package/dist/service/ssm/index.d.ts +12 -0
- package/dist/service/ssm/index.d.ts.map +1 -0
- package/dist/service/ssm/index.js +12 -0
- package/dist/service/ssm/index.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-crypto.d.ts +55 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-crypto.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-crypto.js +20 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-crypto.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-key-problems.d.ts +12 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-key-problems.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-key-problems.js +24 -0
- package/dist/service/ssm/parameter/sim-ssm-kms-key-problems.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-arn.d.ts +33 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-arn.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-arn.js +34 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-arn.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-encryption.d.ts +42 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-encryption.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-encryption.js +52 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-encryption.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-kms.d.ts +43 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-kms.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-kms.js +68 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-kms.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-name.d.ts +48 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-name.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-name.js +117 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-name.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-overwrite.d.ts +34 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-overwrite.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-overwrite.js +48 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-overwrite.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-path.d.ts +36 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-path.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-path.js +56 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-path.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-selector.d.ts +34 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-selector.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-selector.js +63 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-selector.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-store.d.ts +46 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-store.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-store.js +66 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-store.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-type.d.ts +29 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-type.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-type.js +46 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-type.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-value.d.ts +30 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-value.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-value.js +54 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-value.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-version.d.ts +46 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-version.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-version.js +34 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-version.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-writer.d.ts +72 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-writer.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-writer.js +65 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter-writer.js.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter.d.ts +41 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter.d.ts.map +1 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter.js +57 -0
- package/dist/service/ssm/parameter/sim-ssm-parameter.js.map +1 -0
- package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.d.ts +18 -0
- package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.d.ts.map +1 -0
- package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.js +52 -0
- package/dist/service/ssm/sdk/sim-ssm-sdk-command-router.js.map +1 -0
- package/dist/service/ssm/sim-ssm.d.ts +90 -0
- package/dist/service/ssm/sim-ssm.d.ts.map +1 -0
- package/dist/service/ssm/sim-ssm.js +144 -0
- package/dist/service/ssm/sim-ssm.js.map +1 -0
- package/package.json +11 -1
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
import { createCipheriv, createDecipheriv, randomBytes } from "node:crypto";
|
|
2
|
+
import { SimSecretsManagerEncryptedValue } from "./sim-secrets-manager-encrypted-value.js";
|
|
3
|
+
import { SimSecretsManagerSecretValue } from "./sim-secrets-manager-secret-value.js";
|
|
4
|
+
/**
|
|
5
|
+
* The cipher a data key encrypts a secret value with.
|
|
6
|
+
*
|
|
7
|
+
* This is the half of envelope encryption that does not happen inside KMS.
|
|
8
|
+
* KMS produces and later recovers the data key; the value itself is encrypted
|
|
9
|
+
* out here with AES-256-GCM, which is what the AWS Encryption SDK does with a
|
|
10
|
+
* data key too.
|
|
11
|
+
*/
|
|
12
|
+
const algorithm = "aes-256-gcm";
|
|
13
|
+
const ivLength = 12;
|
|
14
|
+
/**
|
|
15
|
+
* Encrypts and decrypts a secret value under a plaintext data key.
|
|
16
|
+
*
|
|
17
|
+
* The encryption context is not bound in here. KMS binds it to the data key,
|
|
18
|
+
* so a decryption naming a different secret or version fails at the KMS call
|
|
19
|
+
* rather than at this cipher, which is where real Secrets Manager fails too.
|
|
20
|
+
*/
|
|
21
|
+
export class SimSecretsManagerValueCipher {
|
|
22
|
+
/**
|
|
23
|
+
* Encrypt a value under a data key.
|
|
24
|
+
*/
|
|
25
|
+
seal(value, dataKey, dataKeyCiphertext) {
|
|
26
|
+
const iv = randomBytes(ivLength);
|
|
27
|
+
const cipher = createCipheriv(algorithm, dataKey, iv);
|
|
28
|
+
const ciphertext = Buffer.concat([
|
|
29
|
+
cipher.update(value.bytes),
|
|
30
|
+
cipher.final(),
|
|
31
|
+
]);
|
|
32
|
+
return new SimSecretsManagerEncryptedValue({
|
|
33
|
+
dataKeyCiphertext,
|
|
34
|
+
iv: Uint8Array.from(iv),
|
|
35
|
+
authTag: Uint8Array.from(cipher.getAuthTag()),
|
|
36
|
+
ciphertext: Uint8Array.from(ciphertext),
|
|
37
|
+
digest: value.digest,
|
|
38
|
+
});
|
|
39
|
+
}
|
|
40
|
+
/**
|
|
41
|
+
* Decrypt a value with the data key KMS recovered for it.
|
|
42
|
+
*/
|
|
43
|
+
open(encrypted, dataKey) {
|
|
44
|
+
const decipher = createDecipheriv(algorithm, dataKey, encrypted.iv);
|
|
45
|
+
decipher.setAuthTag(encrypted.authTag);
|
|
46
|
+
const plaintext = Buffer.concat([
|
|
47
|
+
decipher.update(encrypted.ciphertext),
|
|
48
|
+
decipher.final(),
|
|
49
|
+
]);
|
|
50
|
+
return SimSecretsManagerSecretValue.fromBytes(Uint8Array.from(plaintext));
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=sim-secrets-manager-value-cipher.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-value-cipher.js","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-value-cipher.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,gBAAgB,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAC5E,OAAO,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAC3F,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAErF;;;;;;;GAOG;AACH,MAAM,SAAS,GAAG,aAAa,CAAC;AAChC,MAAM,QAAQ,GAAG,EAAE,CAAC;AAEpB;;;;;;GAMG;AACH,MAAM,OAAO,4BAA4B;IACvC;;OAEG;IACH,IAAI,CACF,KAAmC,EACnC,OAAmB,EACnB,iBAA6B;QAE7B,MAAM,EAAE,GAAG,WAAW,CAAC,QAAQ,CAAC,CAAC;QACjC,MAAM,MAAM,GAAG,cAAc,CAAC,SAAS,EAAE,OAAO,EAAE,EAAE,CAAC,CAAC;QAEtD,MAAM,UAAU,GAAG,MAAM,CAAC,MAAM,CAAC;YAC/B,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC;YAC1B,MAAM,CAAC,KAAK,EAAE;SACf,CAAC,CAAC;QAEH,OAAO,IAAI,+BAA+B,CAAC;YACzC,iBAAiB;YACjB,EAAE,EAAE,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC;YACvB,OAAO,EAAE,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,EAAE,CAAC;YAC7C,UAAU,EAAE,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC;YACvC,MAAM,EAAE,KAAK,CAAC,MAAM;SACrB,CAAC,CAAC;IACL,CAAC;IAED;;OAEG;IACH,IAAI,CACF,SAA0C,EAC1C,OAAmB;QAEnB,MAAM,QAAQ,GAAG,gBAAgB,CAAC,SAAS,EAAE,OAAO,EAAE,SAAS,CAAC,EAAE,CAAC,CAAC;QACpE,QAAQ,CAAC,UAAU,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;QAEvC,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC;YAC9B,QAAQ,CAAC,MAAM,CAAC,SAAS,CAAC,UAAU,CAAC;YACrC,QAAQ,CAAC,KAAK,EAAE;SACjB,CAAC,CAAC;QAEH,OAAO,4BAA4B,CAAC,SAAS,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IAC5E,CAAC;CACF"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
|
|
2
|
+
import type { SimSecretsManagerEncryptedValue } from "./sim-secrets-manager-encrypted-value.js";
|
|
3
|
+
import { type SimSecretsManagerKmsCrypto } from "./sim-secrets-manager-kms-crypto.js";
|
|
4
|
+
import type { SimSecretsManagerSecretValue } from "./sim-secrets-manager-secret-value.js";
|
|
5
|
+
/**
|
|
6
|
+
* What a secret version's encryption is bound to.
|
|
7
|
+
*
|
|
8
|
+
* Real Secrets Manager binds both the secret and the version, so a ciphertext
|
|
9
|
+
* lifted out of one version cannot be decrypted as another, and a
|
|
10
|
+
* `kms:EncryptionContext:SecretARN` policy condition matches on the secret it
|
|
11
|
+
* belongs to.
|
|
12
|
+
*/
|
|
13
|
+
export interface SimSecretsManagerEncryptionBinding {
|
|
14
|
+
readonly secretArn: string;
|
|
15
|
+
readonly versionId: string;
|
|
16
|
+
}
|
|
17
|
+
interface SimSecretsManagerValueEncryptionProperties {
|
|
18
|
+
readonly kms: SimSecretsManagerKmsCrypto;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* The KMS calls a secret version's value makes.
|
|
22
|
+
*
|
|
23
|
+
* The calls are made as the caller rather than as the service, which is what
|
|
24
|
+
* puts a customer managed key's permissions in the way: a write needs the
|
|
25
|
+
* caller's own `kms:GenerateDataKey` and a read needs `kms:Decrypt`, each on
|
|
26
|
+
* top of the Secrets Manager permission for the secret itself. They are made
|
|
27
|
+
* through the service as well, so the `aws/secretsmanager` managed key needs
|
|
28
|
+
* no KMS permission at all, as on real AWS.
|
|
29
|
+
*/
|
|
30
|
+
export declare class SimSecretsManagerValueEncryption {
|
|
31
|
+
private readonly kms;
|
|
32
|
+
private readonly cipher;
|
|
33
|
+
constructor(properties: SimSecretsManagerValueEncryptionProperties);
|
|
34
|
+
/**
|
|
35
|
+
* Encrypt a value as a new version, under the secret's key.
|
|
36
|
+
*/
|
|
37
|
+
encrypt(binding: SimSecretsManagerEncryptionBinding, value: SimSecretsManagerSecretValue, keyId: string | undefined, caller: SimAwsCaller | undefined): Promise<SimSecretsManagerEncryptedValue>;
|
|
38
|
+
/**
|
|
39
|
+
* Decrypt a stored version, which needs the same binding it was made with.
|
|
40
|
+
*/
|
|
41
|
+
decrypt(binding: SimSecretsManagerEncryptionBinding, encrypted: SimSecretsManagerEncryptedValue, caller: SimAwsCaller | undefined): Promise<SimSecretsManagerSecretValue>;
|
|
42
|
+
private contextFor;
|
|
43
|
+
}
|
|
44
|
+
export {};
|
|
45
|
+
//# sourceMappingURL=sim-secrets-manager-value-encryption.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-value-encryption.d.ts","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-value-encryption.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,+BAA+B,EAAE,MAAM,0CAA0C,CAAC;AAChG,OAAO,EAIL,KAAK,0BAA0B,EAChC,MAAM,qCAAqC,CAAC;AAE7C,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAG1F;;;;;;;GAOG;AACH,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAC;CAC5B;AAED,UAAU,0CAA0C;IAClD,QAAQ,CAAC,GAAG,EAAE,0BAA0B,CAAC;CAC1C;AAED;;;;;;;;;GASG;AACH,qBAAa,gCAAgC;IAC3C,OAAO,CAAC,QAAQ,CAAC,GAAG,CAA6B;IACjD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAsC;IAE7D,YAAY,UAAU,EAAE,0CAA0C,EAEjE;IAED;;OAEG;IACG,OAAO,CACX,OAAO,EAAE,kCAAkC,EAC3C,KAAK,EAAE,4BAA4B,EACnC,KAAK,EAAE,MAAM,GAAG,SAAS,EACzB,MAAM,EAAE,YAAY,GAAG,SAAS,GAC/B,OAAO,CAAC,+BAA+B,CAAC,CA0B1C;IAED;;OAEG;IACG,OAAO,CACX,OAAO,EAAE,kCAAkC,EAC3C,SAAS,EAAE,+BAA+B,EAC1C,MAAM,EAAE,YAAY,GAAG,SAAS,GAC/B,OAAO,CAAC,4BAA4B,CAAC,CAqBvC;IAED,OAAO,CAAC,UAAU;CAQnB"}
|
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import { assertDefined } from "../../../util/type-guard/defined.js";
|
|
2
|
+
import { secretsManagerDataKeySpec, secretsManagerDefaultKeyAlias, secretsManagerKmsViaService, } from "./sim-secrets-manager-kms-crypto.js";
|
|
3
|
+
import { reportingKeyProblems } from "./sim-secrets-manager-kms-key-problems.js";
|
|
4
|
+
import { SimSecretsManagerValueCipher } from "./sim-secrets-manager-value-cipher.js";
|
|
5
|
+
/**
|
|
6
|
+
* The KMS calls a secret version's value makes.
|
|
7
|
+
*
|
|
8
|
+
* The calls are made as the caller rather than as the service, which is what
|
|
9
|
+
* puts a customer managed key's permissions in the way: a write needs the
|
|
10
|
+
* caller's own `kms:GenerateDataKey` and a read needs `kms:Decrypt`, each on
|
|
11
|
+
* top of the Secrets Manager permission for the secret itself. They are made
|
|
12
|
+
* through the service as well, so the `aws/secretsmanager` managed key needs
|
|
13
|
+
* no KMS permission at all, as on real AWS.
|
|
14
|
+
*/
|
|
15
|
+
export class SimSecretsManagerValueEncryption {
|
|
16
|
+
kms;
|
|
17
|
+
cipher = new SimSecretsManagerValueCipher();
|
|
18
|
+
constructor(properties) {
|
|
19
|
+
this.kms = properties.kms;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Encrypt a value as a new version, under the secret's key.
|
|
23
|
+
*/
|
|
24
|
+
async encrypt(binding, value, keyId, caller) {
|
|
25
|
+
const dataKey = await reportingKeyProblems("encrypting", async () => await this.kms.generateDataKey({
|
|
26
|
+
input: {
|
|
27
|
+
KeyId: keyId ?? secretsManagerDefaultKeyAlias,
|
|
28
|
+
KeySpec: secretsManagerDataKeySpec,
|
|
29
|
+
EncryptionContext: this.contextFor(binding),
|
|
30
|
+
},
|
|
31
|
+
}, { caller, viaService: secretsManagerKmsViaService }));
|
|
32
|
+
assertDefined(dataKey.Plaintext, `Simulated KMS generated no data key for ${binding.secretArn}`);
|
|
33
|
+
assertDefined(dataKey.CiphertextBlob, `Simulated KMS encrypted no data key for ${binding.secretArn}`);
|
|
34
|
+
return this.cipher.seal(value, dataKey.Plaintext, dataKey.CiphertextBlob);
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Decrypt a stored version, which needs the same binding it was made with.
|
|
38
|
+
*/
|
|
39
|
+
async decrypt(binding, encrypted, caller) {
|
|
40
|
+
const dataKey = await reportingKeyProblems("decrypting", async () => await this.kms.decrypt({
|
|
41
|
+
input: {
|
|
42
|
+
CiphertextBlob: encrypted.dataKeyCiphertext,
|
|
43
|
+
EncryptionContext: this.contextFor(binding),
|
|
44
|
+
},
|
|
45
|
+
}, { caller, viaService: secretsManagerKmsViaService }));
|
|
46
|
+
assertDefined(dataKey.Plaintext, `Simulated KMS recovered no data key for ${binding.secretArn}`);
|
|
47
|
+
return this.cipher.open(encrypted, dataKey.Plaintext);
|
|
48
|
+
}
|
|
49
|
+
contextFor(binding) {
|
|
50
|
+
return {
|
|
51
|
+
SecretARN: binding.secretArn,
|
|
52
|
+
SecretVersionId: binding.versionId,
|
|
53
|
+
};
|
|
54
|
+
}
|
|
55
|
+
}
|
|
56
|
+
//# sourceMappingURL=sim-secrets-manager-value-encryption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-value-encryption.js","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-value-encryption.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,qCAAqC,CAAC;AAGpE,OAAO,EACL,yBAAyB,EACzB,6BAA6B,EAC7B,2BAA2B,GAE5B,MAAM,qCAAqC,CAAC;AAC7C,OAAO,EAAE,oBAAoB,EAAE,MAAM,2CAA2C,CAAC;AAEjF,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAmBrF;;;;;;;;;GASG;AACH,MAAM,OAAO,gCAAgC;IAC1B,GAAG,CAA6B;IAChC,MAAM,GAAG,IAAI,4BAA4B,EAAE,CAAC;IAE7D,YAAY,UAAsD;QAChE,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,OAA2C,EAC3C,KAAmC,EACnC,KAAyB,EACzB,MAAgC;QAEhC,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC,YAAY,EACZ,KAAK,IAAI,EAAE,CACT,MAAM,IAAI,CAAC,GAAG,CAAC,eAAe,CAC5B;YACE,KAAK,EAAE;gBACL,KAAK,EAAE,KAAK,IAAI,6BAA6B;gBAC7C,OAAO,EAAE,yBAAyB;gBAClC,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;aAC5C;SACF,EACD,EAAE,MAAM,EAAE,UAAU,EAAE,2BAA2B,EAAE,CACpD,CACJ,CAAC;QAEF,aAAa,CACX,OAAO,CAAC,SAAS,EACjB,2CAA2C,OAAO,CAAC,SAAS,EAAE,CAC/D,CAAC;QACF,aAAa,CACX,OAAO,CAAC,cAAc,EACtB,2CAA2C,OAAO,CAAC,SAAS,EAAE,CAC/D,CAAC;QAEF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,SAAS,EAAE,OAAO,CAAC,cAAc,CAAC,CAAC;IAC5E,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,OAAO,CACX,OAA2C,EAC3C,SAA0C,EAC1C,MAAgC;QAEhC,MAAM,OAAO,GAAG,MAAM,oBAAoB,CACxC,YAAY,EACZ,KAAK,IAAI,EAAE,CACT,MAAM,IAAI,CAAC,GAAG,CAAC,OAAO,CACpB;YACE,KAAK,EAAE;gBACL,cAAc,EAAE,SAAS,CAAC,iBAAiB;gBAC3C,iBAAiB,EAAE,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;aAC5C;SACF,EACD,EAAE,MAAM,EAAE,UAAU,EAAE,2BAA2B,EAAE,CACpD,CACJ,CAAC;QAEF,aAAa,CACX,OAAO,CAAC,SAAS,EACjB,2CAA2C,OAAO,CAAC,SAAS,EAAE,CAC/D,CAAC;QAEF,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,SAAS,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC;IACxD,CAAC;IAEO,UAAU,CAChB,OAA2C;QAE3C,OAAO;YACL,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,eAAe,EAAE,OAAO,CAAC,SAAS;SACnC,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -0,0 +1,37 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../aws/caller/sim-aws-caller.js";
|
|
2
|
+
import type { SimSecretsManagerSecret } from "./sim-secrets-manager-secret.js";
|
|
3
|
+
import type { SimSecretsManagerSecretValue } from "./sim-secrets-manager-secret-value.js";
|
|
4
|
+
/**
|
|
5
|
+
* The version-shaping fields a write request can carry.
|
|
6
|
+
*/
|
|
7
|
+
export interface SimSecretsManagerVersionWriteInput {
|
|
8
|
+
readonly ClientRequestToken?: string | undefined;
|
|
9
|
+
readonly VersionStages?: readonly string[] | undefined;
|
|
10
|
+
}
|
|
11
|
+
/**
|
|
12
|
+
* One write of a secret version, as the three writing commands describe it.
|
|
13
|
+
*
|
|
14
|
+
* CreateSecret, PutSecretValue and UpdateSecret differ in what they do around
|
|
15
|
+
* the write and agree on the write itself, so what they have to say about it
|
|
16
|
+
* is one shape rather than three argument lists.
|
|
17
|
+
*/
|
|
18
|
+
export interface SimSecretsManagerVersionWrite {
|
|
19
|
+
readonly secret: SimSecretsManagerSecret;
|
|
20
|
+
readonly value: SimSecretsManagerSecretValue;
|
|
21
|
+
readonly input: SimSecretsManagerVersionWriteInput;
|
|
22
|
+
/**
|
|
23
|
+
* The key the new version is encrypted under, in any form KMS accepts.
|
|
24
|
+
* Undefined leaves Secrets Manager to use its own AWS managed key.
|
|
25
|
+
*
|
|
26
|
+
* It is passed rather than read off the secret because UpdateSecret can
|
|
27
|
+
* change the key and the value in one request, and the new version belongs
|
|
28
|
+
* to the new key.
|
|
29
|
+
*/
|
|
30
|
+
readonly keyId: string | undefined;
|
|
31
|
+
/**
|
|
32
|
+
* The caller the KMS call is made as, so that writing a version needs the
|
|
33
|
+
* caller's own `kms:GenerateDataKey` on a customer managed key.
|
|
34
|
+
*/
|
|
35
|
+
readonly caller: SimAwsCaller | undefined;
|
|
36
|
+
}
|
|
37
|
+
//# sourceMappingURL=sim-secrets-manager-version-write.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-version-write.d.ts","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-version-write.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,oCAAoC,CAAC;AACvE,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,iCAAiC,CAAC;AAC/E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAE1F;;GAEG;AACH,MAAM,WAAW,kCAAkC;IACjD,QAAQ,CAAC,kBAAkB,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACjD,QAAQ,CAAC,aAAa,CAAC,EAAE,SAAS,MAAM,EAAE,GAAG,SAAS,CAAC;CACxD;AAED;;;;;;GAMG;AACH,MAAM,WAAW,6BAA6B;IAC5C,QAAQ,CAAC,MAAM,EAAE,uBAAuB,CAAC;IACzC,QAAQ,CAAC,KAAK,EAAE,4BAA4B,CAAC;IAC7C,QAAQ,CAAC,KAAK,EAAE,kCAAkC,CAAC;IAEnD;;;;;;;OAOG;IACH,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,SAAS,CAAC;IAEnC;;;OAGG;IACH,QAAQ,CAAC,MAAM,EAAE,YAAY,GAAG,SAAS,CAAC;CAC3C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-version-write.js","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-version-write.ts"],"names":[],"mappings":""}
|
|
@@ -1,27 +1,23 @@
|
|
|
1
1
|
import type { SimClock } from "../../../util/clock/sim-clock.js";
|
|
2
|
-
import type { SimSecretsManagerSecret } from "./sim-secrets-manager-secret.js";
|
|
3
2
|
import { SimSecretsManagerSecretVersion } from "./sim-secrets-manager-secret-version.js";
|
|
4
|
-
import type {
|
|
5
|
-
|
|
6
|
-
* The version-shaping fields a write request can carry.
|
|
7
|
-
*/
|
|
8
|
-
export interface SimSecretsManagerVersionWriteInput {
|
|
9
|
-
readonly ClientRequestToken?: string | undefined;
|
|
10
|
-
readonly VersionStages?: readonly string[] | undefined;
|
|
11
|
-
}
|
|
3
|
+
import type { SimSecretsManagerValueEncryption } from "./sim-secrets-manager-value-encryption.js";
|
|
4
|
+
import type { SimSecretsManagerVersionWrite } from "./sim-secrets-manager-version-write.js";
|
|
12
5
|
interface SimSecretsManagerVersionWriterProperties {
|
|
13
6
|
readonly clock: SimClock;
|
|
7
|
+
readonly encryption: SimSecretsManagerValueEncryption;
|
|
14
8
|
}
|
|
15
9
|
/**
|
|
16
10
|
* Writes a new version of a secret, the way every Secrets Manager write does.
|
|
17
11
|
*
|
|
18
|
-
* CreateSecret, PutSecretValue and UpdateSecret all end in the same place:
|
|
19
|
-
*
|
|
20
|
-
* Keeping that in one collaborator is what stops the three commands
|
|
21
|
-
* apart on staging labels
|
|
12
|
+
* CreateSecret, PutSecretValue and UpdateSecret all end in the same place: a
|
|
13
|
+
* new version carrying the encrypted value, labelled AWSCURRENT unless told
|
|
14
|
+
* otherwise. Keeping that in one collaborator is what stops the three commands
|
|
15
|
+
* drifting apart on staging labels, on request-token idempotency or on which
|
|
16
|
+
* key the value is encrypted under.
|
|
22
17
|
*/
|
|
23
18
|
export declare class SimSecretsManagerVersionWriter {
|
|
24
19
|
private readonly clock;
|
|
20
|
+
private readonly encryption;
|
|
25
21
|
constructor(properties: SimSecretsManagerVersionWriterProperties);
|
|
26
22
|
/**
|
|
27
23
|
* Write a value as a new version of a secret.
|
|
@@ -30,8 +26,11 @@ export declare class SimSecretsManagerVersionWriter {
|
|
|
30
26
|
* repeat of the same token with the same value is ignored, which is what
|
|
31
27
|
* makes a retried write safe; the same token with a different value is
|
|
32
28
|
* refused, because a version's value never changes once written.
|
|
29
|
+
*
|
|
30
|
+
* The value is encrypted before anything is stored, so a write refused for
|
|
31
|
+
* a key the caller may not use leaves no version behind.
|
|
33
32
|
*/
|
|
34
|
-
write(
|
|
33
|
+
write(request: SimSecretsManagerVersionWrite): Promise<SimSecretsManagerSecretVersion>;
|
|
35
34
|
/**
|
|
36
35
|
* Resolve the staging labels a new version is written with.
|
|
37
36
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-secrets-manager-version-writer.d.ts","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-version-writer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAKjE,OAAO,
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-version-writer.d.ts","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-version-writer.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,kCAAkC,CAAC;AAKjE,OAAO,EACL,8BAA8B,EAE/B,MAAM,yCAAyC,CAAC;AAEjD,OAAO,KAAK,EAAE,gCAAgC,EAAE,MAAM,2CAA2C,CAAC;AAClG,OAAO,KAAK,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAE5F,UAAU,wCAAwC;IAChD,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;IACzB,QAAQ,CAAC,UAAU,EAAE,gCAAgC,CAAC;CACvD;AAED;;;;;;;;GAQG;AACH,qBAAa,8BAA8B;IACzC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IACjC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAmC;IAE9D,YAAY,UAAU,EAAE,wCAAwC,EAG/D;IAED;;;;;;;;;;OAUG;IACG,KAAK,CACT,OAAO,EAAE,6BAA6B,GACrC,OAAO,CAAC,8BAA8B,CAAC,CAwBzC;IAED;;OAEG;IACH,OAAO,CAAC,MAAM;IAcd,OAAO,CAAC,aAAa;CAatB"}
|
|
@@ -4,15 +4,18 @@ import { SimSecretsManagerSecretVersion, SimSecretsManagerStagingLabel, } from "
|
|
|
4
4
|
/**
|
|
5
5
|
* Writes a new version of a secret, the way every Secrets Manager write does.
|
|
6
6
|
*
|
|
7
|
-
* CreateSecret, PutSecretValue and UpdateSecret all end in the same place:
|
|
8
|
-
*
|
|
9
|
-
* Keeping that in one collaborator is what stops the three commands
|
|
10
|
-
* apart on staging labels
|
|
7
|
+
* CreateSecret, PutSecretValue and UpdateSecret all end in the same place: a
|
|
8
|
+
* new version carrying the encrypted value, labelled AWSCURRENT unless told
|
|
9
|
+
* otherwise. Keeping that in one collaborator is what stops the three commands
|
|
10
|
+
* drifting apart on staging labels, on request-token idempotency or on which
|
|
11
|
+
* key the value is encrypted under.
|
|
11
12
|
*/
|
|
12
13
|
export class SimSecretsManagerVersionWriter {
|
|
13
14
|
clock;
|
|
15
|
+
encryption;
|
|
14
16
|
constructor(properties) {
|
|
15
17
|
this.clock = properties.clock;
|
|
18
|
+
this.encryption = properties.encryption;
|
|
16
19
|
}
|
|
17
20
|
/**
|
|
18
21
|
* Write a value as a new version of a secret.
|
|
@@ -21,8 +24,12 @@ export class SimSecretsManagerVersionWriter {
|
|
|
21
24
|
* repeat of the same token with the same value is ignored, which is what
|
|
22
25
|
* makes a retried write safe; the same token with a different value is
|
|
23
26
|
* refused, because a version's value never changes once written.
|
|
27
|
+
*
|
|
28
|
+
* The value is encrypted before anything is stored, so a write refused for
|
|
29
|
+
* a key the caller may not use leaves no version behind.
|
|
24
30
|
*/
|
|
25
|
-
write(
|
|
31
|
+
async write(request) {
|
|
32
|
+
const { secret, value, input } = request;
|
|
26
33
|
const versionId = input.ClientRequestToken ?? randomUUID();
|
|
27
34
|
const existing = secret.versions.byId(versionId);
|
|
28
35
|
if (existing !== undefined) {
|
|
@@ -30,7 +37,7 @@ export class SimSecretsManagerVersionWriter {
|
|
|
30
37
|
}
|
|
31
38
|
const version = new SimSecretsManagerSecretVersion({
|
|
32
39
|
versionId,
|
|
33
|
-
value,
|
|
40
|
+
value: await this.encryption.encrypt({ secretArn: secret.arn.value, versionId }, value, request.keyId, request.caller),
|
|
34
41
|
createdDate: this.clock.now(),
|
|
35
42
|
});
|
|
36
43
|
secret.versions.add(version, this.stages(input.VersionStages));
|
|
@@ -50,7 +57,7 @@ export class SimSecretsManagerVersionWriter {
|
|
|
50
57
|
return requested;
|
|
51
58
|
}
|
|
52
59
|
repeatedWrite(existing, value) {
|
|
53
|
-
if (existing.value.
|
|
60
|
+
if (existing.value.holds(value)) {
|
|
54
61
|
return existing;
|
|
55
62
|
}
|
|
56
63
|
throw new SimSecretsManagerResourceExistsException(`Version ${existing.versionId} already exists with a different value. ` +
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-secrets-manager-version-writer.js","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-version-writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACL,0CAA0C,EAC1C,wCAAwC,GACzC,MAAM,uCAAuC,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-version-writer.js","sourceRoot":"","sources":["../../../../src/service/secretsmanager/secret/sim-secrets-manager-version-writer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,EACL,0CAA0C,EAC1C,wCAAwC,GACzC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACL,8BAA8B,EAC9B,6BAA6B,GAC9B,MAAM,yCAAyC,CAAC;AAUjD;;;;;;;;GAQG;AACH,MAAM,OAAO,8BAA8B;IACxB,KAAK,CAAW;IAChB,UAAU,CAAmC;IAE9D,YAAY,UAAoD;QAC9D,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;QAC9B,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,CAAC;IAED;;;;;;;;;;OAUG;IACH,KAAK,CAAC,KAAK,CACT,OAAsC;QAEtC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QACzC,MAAM,SAAS,GAAG,KAAK,CAAC,kBAAkB,IAAI,UAAU,EAAE,CAAC;QAC3D,MAAM,QAAQ,GAAG,MAAM,CAAC,QAAQ,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC;QAEjD,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC3B,OAAO,IAAI,CAAC,aAAa,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,8BAA8B,CAAC;YACjD,SAAS;YACT,KAAK,EAAE,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAClC,EAAE,SAAS,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,EAC1C,KAAK,EACL,OAAO,CAAC,KAAK,EACb,OAAO,CAAC,MAAM,CACf;YACD,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE;SAC9B,CAAC,CAAC;QAEH,MAAM,CAAC,QAAQ,CAAC,GAAG,CAAC,OAAO,EAAE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,CAAC;QAC/D,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;QAE1C,OAAO,OAAO,CAAC;IACjB,CAAC;IAED;;OAEG;IACK,MAAM,CAAC,SAAwC;QACrD,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,CAAC,6BAA6B,CAAC,OAAO,CAAC,CAAC;QACjD,CAAC;QAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,MAAM,IAAI,0CAA0C,CAClD,oDAAoD,CACrD,CAAC;QACJ,CAAC;QAED,OAAO,SAAS,CAAC;IACnB,CAAC;IAEO,aAAa,CACnB,QAAwC,EACxC,KAAmC;QAEnC,IAAI,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC;YAChC,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,MAAM,IAAI,wCAAwC,CAChD,WAAW,QAAQ,CAAC,SAAS,0CAA0C;YACrE,mDAAmD,CACtD,CAAC;IACJ,CAAC;CACF"}
|
|
@@ -6,6 +6,7 @@ import { type SimIamInterServiceAuthZ } from "../iam/authorize/sim-iam-inter-ser
|
|
|
6
6
|
import { SimSecretsManagerCfnResourceFactory } from "./cfn/sim-cfn-secrets-manager-resource-factory.js";
|
|
7
7
|
import type * as simSecretsManagerCommands from "./command/sim-secrets-manager-command.types.js";
|
|
8
8
|
import type { SimSecretsManagerSecret } from "./secret/sim-secrets-manager-secret.js";
|
|
9
|
+
import type { SimSecretsManagerKmsCrypto } from "./secret/sim-secrets-manager-kms-crypto.js";
|
|
9
10
|
export interface SimSecretsManagerRequestOptions {
|
|
10
11
|
readonly caller?: SimAwsCaller;
|
|
11
12
|
}
|
|
@@ -13,6 +14,12 @@ interface SimSecretsManagerProperties {
|
|
|
13
14
|
readonly accountRegionScope?: SimAwsAccountRegionScope;
|
|
14
15
|
readonly iam?: SimIamInterServiceAuthZ;
|
|
15
16
|
readonly background?: BackgroundScheduler;
|
|
17
|
+
/**
|
|
18
|
+
* The simulated KMS that secret values are encrypted through. One is created
|
|
19
|
+
* for this scope when none is supplied, so a standalone SimSecretsManager
|
|
20
|
+
* still encrypts rather than quietly storing secrets in the clear.
|
|
21
|
+
*/
|
|
22
|
+
readonly kms?: SimSecretsManagerKmsCrypto;
|
|
16
23
|
}
|
|
17
24
|
/**
|
|
18
25
|
* Simulated Secrets Manager. Handles SDK commands. Emulates AWS behaviour and
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-secrets-manager.d.ts","sourceRoot":"","sources":["../../../src/service/secretsmanager/sim-secrets-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,KAAK,mBAAmB,EAEzB,MAAM,qCAAqC,CAAC;AAC7C,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,iDAAiD,CAAC;AAC3F,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,iCAAiC,CAAC;AACpE,OAAO,KAAK,EAAE,wBAAwB,EAAE,MAAM,wCAAwC,CAAC;AAEvF,OAAO,EAEL,KAAK,uBAAuB,EAC7B,MAAM,kDAAkD,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager.d.ts","sourceRoot":"","sources":["../../../src/service/secretsmanager/sim-secrets-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { BackgroundTasks, } from "../../util/background/background.js";
|
|
2
2
|
import { simAwsAccountRegionScopeFactory } from "../aws/sim-aws-account-region-scope.factory.js";
|
|
3
3
|
import { SimIamAllowAllAuth, } from "../iam/authorize/sim-iam-inter-service-auth-z.js";
|
|
4
|
+
import { SimKms } from "../kms/index.js";
|
|
4
5
|
import { SimSecretsManagerCfnResourceFactory } from "./cfn/sim-cfn-secrets-manager-resource-factory.js";
|
|
5
6
|
import { SimSecretsManagerAuthorizer } from "./command/authorize/sim-secrets-manager-authorizer.js";
|
|
6
7
|
import { SimSecretsManagerLifecycleCommands } from "./command/secret/sim-secrets-manager-lifecycle-commands.js";
|
|
@@ -11,6 +12,7 @@ import { SimSecretsManagerValueCommands } from "./command/value/sim-secrets-mana
|
|
|
11
12
|
import { SimSecretsManagerSecretExpiry } from "./secret/sim-secrets-manager-secret-expiry.js";
|
|
12
13
|
import { SimSecretsManagerSecretFactory } from "./secret/sim-secrets-manager-secret-factory.js";
|
|
13
14
|
import { SimSecretsManagerSecretStore } from "./secret/sim-secrets-manager-secret-store.js";
|
|
15
|
+
import { SimSecretsManagerValueEncryption } from "./secret/sim-secrets-manager-value-encryption.js";
|
|
14
16
|
import { SimSecretsManagerVersionWriter } from "./secret/sim-secrets-manager-version-writer.js";
|
|
15
17
|
import { SimSecretsManagerSdkCommandRouter } from "./sdk/sim-secrets-manager-sdk-command-router.js";
|
|
16
18
|
/**
|
|
@@ -34,9 +36,12 @@ export class SimSecretsManager {
|
|
|
34
36
|
});
|
|
35
37
|
constructor(properties = {}) {
|
|
36
38
|
const { accountRegionScope = simAwsAccountRegionScopeFactory.make(), iam = new SimIamAllowAllAuth(), background = new BackgroundTasks(), } = properties;
|
|
39
|
+
const { kms = new SimKms({ accountRegionScope, iam, background }) } = properties;
|
|
37
40
|
const authorizer = new SimSecretsManagerAuthorizer({ iam });
|
|
41
|
+
const encryption = new SimSecretsManagerValueEncryption({ kms });
|
|
38
42
|
const versionWriter = new SimSecretsManagerVersionWriter({
|
|
39
43
|
clock: background,
|
|
44
|
+
encryption,
|
|
40
45
|
});
|
|
41
46
|
this.background = background;
|
|
42
47
|
this.secrets = new SimSecretsManagerSecretStore({ accountRegionScope });
|
|
@@ -71,6 +76,7 @@ export class SimSecretsManager {
|
|
|
71
76
|
this.valueCommands = new SimSecretsManagerValueCommands({
|
|
72
77
|
secrets: this.secrets,
|
|
73
78
|
versionWriter,
|
|
79
|
+
encryption,
|
|
74
80
|
authorizer,
|
|
75
81
|
});
|
|
76
82
|
}
|
|
@@ -88,7 +94,7 @@ export class SimSecretsManager {
|
|
|
88
94
|
*/
|
|
89
95
|
async createSecret(command, options) {
|
|
90
96
|
await this.background.sequence();
|
|
91
|
-
return this.secretCommands.create(command, options);
|
|
97
|
+
return await this.secretCommands.create(command, options);
|
|
92
98
|
}
|
|
93
99
|
/**
|
|
94
100
|
* Handle a DescribeSecret Command from the SDK.
|
|
@@ -102,7 +108,7 @@ export class SimSecretsManager {
|
|
|
102
108
|
*/
|
|
103
109
|
async updateSecret(command, options) {
|
|
104
110
|
await this.background.sequence();
|
|
105
|
-
return this.updateSecretCommand.handle(command, options);
|
|
111
|
+
return await this.updateSecretCommand.handle(command, options);
|
|
106
112
|
}
|
|
107
113
|
/**
|
|
108
114
|
* Handle a ListSecrets Command from the SDK.
|
|
@@ -116,14 +122,14 @@ export class SimSecretsManager {
|
|
|
116
122
|
*/
|
|
117
123
|
async getSecretValue(command, options) {
|
|
118
124
|
await this.background.sequence();
|
|
119
|
-
return this.valueCommands.get(command, options);
|
|
125
|
+
return await this.valueCommands.get(command, options);
|
|
120
126
|
}
|
|
121
127
|
/**
|
|
122
128
|
* Handle a PutSecretValue Command from the SDK.
|
|
123
129
|
*/
|
|
124
130
|
async putSecretValue(command, options) {
|
|
125
131
|
await this.background.sequence();
|
|
126
|
-
return this.valueCommands.put(command, options);
|
|
132
|
+
return await this.valueCommands.put(command, options);
|
|
127
133
|
}
|
|
128
134
|
/**
|
|
129
135
|
* Handle a DeleteSecret Command from the SDK.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sim-secrets-manager.js","sourceRoot":"","sources":["../../../src/service/secretsmanager/sim-secrets-manager.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,eAAe,GAChB,MAAM,qCAAqC,CAAC;AAI7C,OAAO,EAAE,+BAA+B,EAAE,MAAM,gDAAgD,CAAC;AACjG,OAAO,EACL,kBAAkB,GAEnB,MAAM,kDAAkD,CAAC;AAC1D,OAAO,EAAE,mCAAmC,EAAE,MAAM,mDAAmD,CAAC;AACxG,OAAO,EAAE,2BAA2B,EAAE,MAAM,uDAAuD,CAAC;AACpG,OAAO,EAAE,kCAAkC,EAAE,MAAM,4DAA4D,CAAC;AAChH,OAAO,EAAE,4BAA4B,EAAE,MAAM,sDAAsD,CAAC;AACpG,OAAO,EAAE,+BAA+B,EAAE,MAAM,yDAAyD,CAAC;AAC1G,OAAO,EAAE,6BAA6B,EAAE,MAAM,uDAAuD,CAAC;AAEtG,OAAO,EAAE,8BAA8B,EAAE,MAAM,uDAAuD,CAAC;AAEvG,OAAO,EAAE,6BAA6B,EAAE,MAAM,+CAA+C,CAAC;AAC9F,OAAO,EAAE,8BAA8B,EAAE,MAAM,gDAAgD,CAAC;AAChG,OAAO,EAAE,4BAA4B,EAAE,MAAM,8CAA8C,CAAC;
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager.js","sourceRoot":"","sources":["../../../src/service/secretsmanager/sim-secrets-manager.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,30 @@
|
|
|
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 { SimSsmParameter } from "../../parameter/sim-ssm-parameter.js";
|
|
4
|
+
import type { SimSsm } from "../../sim-ssm.js";
|
|
5
|
+
interface SimCfnSsmParameterCreatorProperties {
|
|
6
|
+
readonly ssm: SimSsm;
|
|
7
|
+
}
|
|
8
|
+
/**
|
|
9
|
+
* Creates simulated parameters from AWS::SSM::Parameter Resources.
|
|
10
|
+
*
|
|
11
|
+
* The parameter is written through the ordinary PutParameter command rather
|
|
12
|
+
* than constructed directly, so a parameter a template deployed is the same
|
|
13
|
+
* thing an SDK caller would have got: the same name validation, the same ARN,
|
|
14
|
+
* the same refusals for the options this simulation does not model.
|
|
15
|
+
*
|
|
16
|
+
* The write is a create rather than an overwrite. Sim CloudFormation has no
|
|
17
|
+
* UpdateStack, so every deployment is a create, and a name already in use
|
|
18
|
+
* fails here as a second stack claiming the same parameter name fails on real
|
|
19
|
+
* CloudFormation.
|
|
20
|
+
*/
|
|
21
|
+
export declare class SimCfnSsmParameterCreator {
|
|
22
|
+
private readonly ssm;
|
|
23
|
+
constructor(properties: SimCfnSsmParameterCreatorProperties);
|
|
24
|
+
/**
|
|
25
|
+
* Create a parameter from an AWS::SSM::Parameter Resource.
|
|
26
|
+
*/
|
|
27
|
+
create(resource: SimCfnResource, properties: SimCfnTemplateValueRecord): Promise<SimSsmParameter>;
|
|
28
|
+
}
|
|
29
|
+
export {};
|
|
30
|
+
//# sourceMappingURL=sim-cfn-ssm-parameter-creator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-ssm-parameter-creator.d.ts","sourceRoot":"","sources":["../../../../../src/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,sDAAsD,CAAC;AAC3F,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,kEAAkE,CAAC;AAClH,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAG/C,UAAU,mCAAmC;IAC3C,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB;AAED;;;;;;;;;;;;GAYG;AACH,qBAAa,yBAAyB;IACpC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAS;IAE7B,YAAY,UAAU,EAAE,mCAAmC,EAE1D;IAED;;OAEG;IACG,MAAM,CACV,QAAQ,EAAE,cAAc,EACxB,UAAU,EAAE,yBAAyB,GACpC,OAAO,CAAC,eAAe,CAAC,CA4B1B;CACF"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import { assertDefined } from "../../../../util/type-guard/defined.js";
|
|
2
|
+
import { SimCfnSsmParameterProperties } from "./sim-cfn-ssm-parameter-properties.js";
|
|
3
|
+
/**
|
|
4
|
+
* Creates simulated parameters from AWS::SSM::Parameter Resources.
|
|
5
|
+
*
|
|
6
|
+
* The parameter is written through the ordinary PutParameter command rather
|
|
7
|
+
* than constructed directly, so a parameter a template deployed is the same
|
|
8
|
+
* thing an SDK caller would have got: the same name validation, the same ARN,
|
|
9
|
+
* the same refusals for the options this simulation does not model.
|
|
10
|
+
*
|
|
11
|
+
* The write is a create rather than an overwrite. Sim CloudFormation has no
|
|
12
|
+
* UpdateStack, so every deployment is a create, and a name already in use
|
|
13
|
+
* fails here as a second stack claiming the same parameter name fails on real
|
|
14
|
+
* CloudFormation.
|
|
15
|
+
*/
|
|
16
|
+
export class SimCfnSsmParameterCreator {
|
|
17
|
+
ssm;
|
|
18
|
+
constructor(properties) {
|
|
19
|
+
this.ssm = properties.ssm;
|
|
20
|
+
}
|
|
21
|
+
/**
|
|
22
|
+
* Create a parameter from an AWS::SSM::Parameter Resource.
|
|
23
|
+
*/
|
|
24
|
+
async create(resource, properties) {
|
|
25
|
+
const parameterProperties = new SimCfnSsmParameterProperties({
|
|
26
|
+
resource,
|
|
27
|
+
properties,
|
|
28
|
+
});
|
|
29
|
+
const name = parameterProperties.name();
|
|
30
|
+
await this.ssm.putParameter({
|
|
31
|
+
input: {
|
|
32
|
+
Name: name,
|
|
33
|
+
Type: parameterProperties.type(),
|
|
34
|
+
Value: parameterProperties.value(),
|
|
35
|
+
Description: parameterProperties.description(),
|
|
36
|
+
Tier: parameterProperties.tier(),
|
|
37
|
+
AllowedPattern: parameterProperties.allowedPattern(),
|
|
38
|
+
DataType: parameterProperties.dataType(),
|
|
39
|
+
Policies: parameterProperties.policies(),
|
|
40
|
+
Tags: parameterProperties.tags(),
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
const parameter = this.ssm.findParameter(name);
|
|
44
|
+
assertDefined(parameter, `sim SSM parameter ${name} after CloudFormation creation`);
|
|
45
|
+
return parameter;
|
|
46
|
+
}
|
|
47
|
+
}
|
|
48
|
+
//# sourceMappingURL=sim-cfn-ssm-parameter-creator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-cfn-ssm-parameter-creator.js","sourceRoot":"","sources":["../../../../../src/service/ssm/cfn/parameter/sim-cfn-ssm-parameter-creator.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,aAAa,EAAE,MAAM,wCAAwC,CAAC;AAKvE,OAAO,EAAE,4BAA4B,EAAE,MAAM,uCAAuC,CAAC;AAMrF;;;;;;;;;;;;GAYG;AACH,MAAM,OAAO,yBAAyB;IACnB,GAAG,CAAS;IAE7B,YAAY,UAA+C;QACzD,IAAI,CAAC,GAAG,GAAG,UAAU,CAAC,GAAG,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,KAAK,CAAC,MAAM,CACV,QAAwB,EACxB,UAAqC;QAErC,MAAM,mBAAmB,GAAG,IAAI,4BAA4B,CAAC;YAC3D,QAAQ;YACR,UAAU;SACX,CAAC,CAAC;QACH,MAAM,IAAI,GAAG,mBAAmB,CAAC,IAAI,EAAE,CAAC;QAExC,MAAM,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;YAC1B,KAAK,EAAE;gBACL,IAAI,EAAE,IAAI;gBACV,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE;gBAChC,KAAK,EAAE,mBAAmB,CAAC,KAAK,EAAE;gBAClC,WAAW,EAAE,mBAAmB,CAAC,WAAW,EAAE;gBAC9C,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE;gBAChC,cAAc,EAAE,mBAAmB,CAAC,cAAc,EAAE;gBACpD,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,EAAE;gBACxC,QAAQ,EAAE,mBAAmB,CAAC,QAAQ,EAAE;gBACxC,IAAI,EAAE,mBAAmB,CAAC,IAAI,EAAE;aACjC;SACF,CAAC,CAAC;QAEH,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC;QAC/C,aAAa,CACX,SAAS,EACT,qBAAqB,IAAI,gCAAgC,CAC1D,CAAC;QAEF,OAAO,SAAS,CAAC;IACnB,CAAC;CACF"}
|