@kensio/yulin 0.38.0 → 0.40.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 +3 -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 +3 -0
- package/dist/sdk/router/resolve-sim-sdk-command-router.js.map +1 -1
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.d.ts +31 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.d.ts.map +1 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.js +31 -0
- package/dist/service/aws/factory/sim-aws-scoped-service-registries.js.map +1 -0
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts +10 -21
- package/dist/service/aws/factory/sim-aws-service-factory.d.ts.map +1 -1
- package/dist/service/aws/factory/sim-aws-service-factory.js +22 -29
- package/dist/service/aws/factory/sim-aws-service-factory.js.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.d.ts +5 -0
- package/dist/service/aws/sim-aws-account-region-scope.d.ts.map +1 -1
- package/dist/service/aws/sim-aws-account-region-scope.js +6 -0
- package/dist/service/aws/sim-aws-account-region-scope.js.map +1 -1
- package/dist/service/aws/sim-aws.d.ts +5 -0
- package/dist/service/aws/sim-aws.d.ts.map +1 -1
- package/dist/service/aws/sim-aws.js +6 -0
- package/dist/service/aws/sim-aws.js.map +1 -1
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/acm/sim-acm-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js +21 -0
- package/dist/service/cloudformation/resource/cfn/cloudfront/sim-cloudfront-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.js +17 -0
- package/dist/service/cloudformation/resource/cfn/iam/sim-iam-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.d.ts +26 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.js +26 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-alias-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.js +19 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.d.ts +25 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.js +34 -0
- package/dist/service/cloudformation/resource/cfn/kms/sim-kms-key-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js +19 -0
- package/dist/service/cloudformation/resource/cfn/lambda/sim-lambda-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/route53/sim-route53-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.d.ts +6 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.js +13 -0
- package/dist/service/cloudformation/resource/cfn/s3/sim-s3-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.d.ts +7 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.js +14 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-cfn-value-adapter.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.d.ts +24 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.d.ts.map +1 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.js +30 -0
- package/dist/service/cloudformation/resource/cfn/secretsmanager/sim-secrets-manager-secret-cfn.js.map +1 -0
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts +11 -2
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js +24 -71
- package/dist/service/cloudformation/resource/cfn/sim-cfn-resource-value-adapter.js.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.d.ts.map +1 -1
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js +6 -0
- package/dist/service/cloudformation/resource/resolve/service/sim-cfn-service-resolver.js.map +1 -1
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.d.ts +25 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.d.ts.map +1 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.js +36 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-creator.js.map +1 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.d.ts +32 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.d.ts.map +1 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.js +35 -0
- package/dist/service/kms/cfn/alias/sim-cfn-kms-alias-properties.js.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.d.ts +36 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.d.ts.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.js +53 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-creator.js.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.d.ts +57 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.d.ts.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.js +74 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-key-properties.js.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.d.ts +49 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.d.ts.map +1 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.js +72 -0
- package/dist/service/kms/cfn/key/sim-cfn-kms-unsimulated-key-properties.js.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.d.ts +56 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.d.ts.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.js +95 -0
- package/dist/service/kms/cfn/sim-cfn-kms-property-parser.js.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts +23 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.d.ts.map +1 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js +34 -0
- package/dist/service/kms/cfn/sim-cfn-kms-resource-factory.js.map +1 -0
- package/dist/service/kms/key/sim-kms-key-store.d.ts +8 -0
- package/dist/service/kms/key/sim-kms-key-store.d.ts.map +1 -1
- package/dist/service/kms/key/sim-kms-key-store.js +10 -0
- package/dist/service/kms/key/sim-kms-key-store.js.map +1 -1
- package/dist/service/kms/sim-kms.d.ts +15 -0
- package/dist/service/kms/sim-kms.d.ts.map +1 -1
- package/dist/service/kms/sim-kms.js +18 -0
- package/dist/service/kms/sim-kms.js.map +1 -1
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.d.ts +22 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.js +47 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-generate-secret-string-parser.js.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.d.ts +24 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.js +38 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-creator.js.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.d.ts +54 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.js +82 -0
- package/dist/service/secretsmanager/cfn/secret/sim-cfn-secrets-manager-secret-properties.js.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.d.ts +58 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.js +122 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-property-parser.js.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts +24 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.d.ts.map +1 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js +31 -0
- package/dist/service/secretsmanager/cfn/sim-cfn-secrets-manager-resource-factory.js.map +1 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.d.ts +29 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.js +47 -0
- package/dist/service/secretsmanager/command/authorize/sim-secrets-manager-authorizer.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/secret.command.d.ts +144 -0
- package/dist/service/secretsmanager/command/secret/secret.command.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/secret.command.js +2 -0
- package/dist/service/secretsmanager/command/secret/secret.command.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.d.ts +44 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.js +61 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-lifecycle-commands.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.d.ts +44 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.js +61 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.d.ts +48 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.js +62 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.d.ts +26 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.js +38 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.d.ts +29 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.js +55 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.js.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.d.ts +46 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.js +67 -0
- package/dist/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.js.map +1 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.d.ts +6 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.js +2 -0
- package/dist/service/secretsmanager/command/sim-secrets-manager-command.types.js.map +1 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.d.ts +39 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.js +61 -0
- package/dist/service/secretsmanager/command/value/sim-secrets-manager-value-commands.js.map +1 -0
- package/dist/service/secretsmanager/command/value/value.command.d.ts +47 -0
- package/dist/service/secretsmanager/command/value/value.command.d.ts.map +1 -0
- package/dist/service/secretsmanager/command/value/value.command.js +2 -0
- package/dist/service/secretsmanager/command/value/value.command.js.map +1 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.d.ts +55 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.d.ts.map +1 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.js +60 -0
- package/dist/service/secretsmanager/error/sim-secrets-manager.error.js.map +1 -0
- package/dist/service/secretsmanager/index.d.ts +7 -0
- package/dist/service/secretsmanager/index.d.ts.map +1 -0
- package/dist/service/secretsmanager/index.js +7 -0
- package/dist/service/secretsmanager/index.js.map +1 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.d.ts +19 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.d.ts.map +1 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.js +57 -0
- package/dist/service/secretsmanager/sdk/sim-secrets-manager-sdk-command-router.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.d.ts +37 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.js +70 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-generated-secret-string.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.d.ts +53 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.js +65 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-set.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.d.ts +40 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.js +66 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-character-sets.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.d.ts +31 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.js +52 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-generator.js.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.d.ts +35 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.js +64 -0
- package/dist/service/secretsmanager/secret/generate/sim-secrets-manager-password-spec.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.d.ts +33 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.js +60 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-deletion-schedule.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.d.ts +42 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.js +64 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-arn.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.d.ts +30 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.js +32 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-expiry.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.d.ts +31 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.js +35 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-factory.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.d.ts +27 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.js +48 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-id.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.d.ts +23 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.js +50 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-name.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.d.ts +53 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.js +92 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-store.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.d.ts +47 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.js +81 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-value.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.d.ts +56 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.js +62 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-version.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.d.ts +47 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.js +83 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret-versions.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.d.ts +75 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.js +86 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-secret.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.d.ts +28 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.js +43 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-selector.js.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.d.ts +42 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.d.ts.map +1 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.js +60 -0
- package/dist/service/secretsmanager/secret/sim-secrets-manager-version-writer.js.map +1 -0
- package/dist/service/secretsmanager/sim-secrets-manager.d.ts +85 -0
- package/dist/service/secretsmanager/sim-secrets-manager.d.ts.map +1 -0
- package/dist/service/secretsmanager/sim-secrets-manager.js +156 -0
- package/dist/service/secretsmanager/sim-secrets-manager.js.map +1 -0
- package/package.json +6 -1
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { SimSecretsManagerInvalidParameterException } from "../../error/sim-secrets-manager.error.js";
|
|
2
|
+
import { SimSecretsManagerSecretDetail } from "./sim-secrets-manager-secret-detail.js";
|
|
3
|
+
import { SimSecretsManagerSecretPage } from "./sim-secrets-manager-secret-page.js";
|
|
4
|
+
/**
|
|
5
|
+
* The ListSecrets command.
|
|
6
|
+
*
|
|
7
|
+
* Real Secrets Manager gives this action no resource-level permissions, so it
|
|
8
|
+
* authorizes against `*` rather than against each secret, and it does not
|
|
9
|
+
* filter the list by what the caller can read.
|
|
10
|
+
*
|
|
11
|
+
* Secrets scheduled for deletion are left out unless asked for, as real
|
|
12
|
+
* Secrets Manager leaves them out.
|
|
13
|
+
*/
|
|
14
|
+
export class SimSecretsManagerListSecrets {
|
|
15
|
+
secrets;
|
|
16
|
+
authorizer;
|
|
17
|
+
detail = new SimSecretsManagerSecretDetail();
|
|
18
|
+
constructor(properties) {
|
|
19
|
+
this.secrets = properties.secrets;
|
|
20
|
+
this.authorizer = properties.authorizer;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* List the secrets in this scope.
|
|
24
|
+
*/
|
|
25
|
+
handle(command, options) {
|
|
26
|
+
const input = command.input ?? {};
|
|
27
|
+
this.refuseUnsimulatedInput(input);
|
|
28
|
+
this.authorizer.authorizeAny("secretsmanager:ListSecrets", options?.caller);
|
|
29
|
+
const page = new SimSecretsManagerSecretPage(this.listedSecrets(input.IncludePlannedDeletion), input);
|
|
30
|
+
return {
|
|
31
|
+
$metadata: {},
|
|
32
|
+
SecretList: page.secrets.map((secret) => this.detail.listEntry(secret)),
|
|
33
|
+
NextToken: page.nextToken,
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* Refuse the request inputs this simulation does not model.
|
|
38
|
+
*
|
|
39
|
+
* Ignoring a filter would quietly return more secrets than real Secrets
|
|
40
|
+
* Manager would, and ignoring a sort would return them in an order the
|
|
41
|
+
* caller did not ask for. Either is the kind of divergence that makes a
|
|
42
|
+
* passing test mean nothing, so both are refused outright, which is stricter
|
|
43
|
+
* than AWS and deliberate.
|
|
44
|
+
*/
|
|
45
|
+
refuseUnsimulatedInput(input) {
|
|
46
|
+
if (input.Filters !== undefined) {
|
|
47
|
+
throw new SimSecretsManagerInvalidParameterException("ListSecrets Filters are not simulated");
|
|
48
|
+
}
|
|
49
|
+
if (input.SortOrder !== undefined || input.SortBy !== undefined) {
|
|
50
|
+
throw new SimSecretsManagerInvalidParameterException("ListSecrets SortOrder and SortBy are not simulated: secrets are " +
|
|
51
|
+
"listed in creation order");
|
|
52
|
+
}
|
|
53
|
+
}
|
|
54
|
+
listedSecrets(includePlannedDeletion) {
|
|
55
|
+
if (includePlannedDeletion === true) {
|
|
56
|
+
return this.secrets.all;
|
|
57
|
+
}
|
|
58
|
+
return this.secrets.all.filter((secret) => !secret.isScheduledForDeletion);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=sim-secrets-manager-list-secrets.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-list-secrets.js","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-list-secrets.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,0CAA0C,EAAE,MAAM,0CAA0C,CAAC;AAItG,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,2BAA2B,EAAE,MAAM,sCAAsC,CAAC;AAgBnF;;;;;;;;;GASG;AACH,MAAM,OAAO,4BAA4B;IACtB,OAAO,CAA+B;IACtC,UAAU,CAA8B;IACxC,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;IAE9D,YAAY,UAAkD;QAC5D,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,MAAM,CACJ,OAA8B,EAC9B,OAA6C;QAE7C,MAAM,KAAK,GAAG,OAAO,CAAC,KAAK,IAAI,EAAE,CAAC;QAElC,IAAI,CAAC,sBAAsB,CAAC,KAAK,CAAC,CAAC;QACnC,IAAI,CAAC,UAAU,CAAC,YAAY,CAAC,4BAA4B,EAAE,OAAO,EAAE,MAAM,CAAC,CAAC;QAE5E,MAAM,IAAI,GAAG,IAAI,2BAA2B,CAC1C,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,sBAAsB,CAAC,EAChD,KAAK,CACN,CAAC;QAEF,OAAO;YACL,SAAS,EAAE,EAAE;YACb,UAAU,EAAE,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;YACvE,SAAS,EAAE,IAAI,CAAC,SAAS;SAC1B,CAAC;IACJ,CAAC;IAED;;;;;;;;OAQG;IACK,sBAAsB,CAAC,KAAiC;QAC9D,IAAI,KAAK,CAAC,OAAO,KAAK,SAAS,EAAE,CAAC;YAChC,MAAM,IAAI,0CAA0C,CAClD,uCAAuC,CACxC,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,SAAS,KAAK,SAAS,IAAI,KAAK,CAAC,MAAM,KAAK,SAAS,EAAE,CAAC;YAChE,MAAM,IAAI,0CAA0C,CAClD,kEAAkE;gBAChE,0BAA0B,CAC7B,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,aAAa,CACnB,sBAA2C;QAE3C,IAAI,sBAAsB,KAAK,IAAI,EAAE,CAAC;YACpC,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC;QAC1B,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,MAAM,CAAC,sBAAsB,CAAC,CAAC;IAC7E,CAAC;CACF"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
2
|
+
import type { SimSecretsManagerSecretFactory } from "../../secret/sim-secrets-manager-secret-factory.js";
|
|
3
|
+
import type { SimSecretsManagerSecretStore } from "../../secret/sim-secrets-manager-secret-store.js";
|
|
4
|
+
import type { SimSecretsManagerVersionWriter } from "../../secret/sim-secrets-manager-version-writer.js";
|
|
5
|
+
import type { SimSecretsManagerAuthorizer } from "../authorize/sim-secrets-manager-authorizer.js";
|
|
6
|
+
import type { SimCreateSecretCommand, SimCreateSecretCommandOutput, SimDescribeSecretCommand, SimDescribeSecretCommandOutput } from "./secret.command.js";
|
|
7
|
+
interface SimSecretsManagerSecretCommandsProperties {
|
|
8
|
+
readonly secrets: SimSecretsManagerSecretStore;
|
|
9
|
+
readonly secretFactory: SimSecretsManagerSecretFactory;
|
|
10
|
+
readonly versionWriter: SimSecretsManagerVersionWriter;
|
|
11
|
+
readonly authorizer: SimSecretsManagerAuthorizer;
|
|
12
|
+
}
|
|
13
|
+
interface SimSecretsManagerCommandOptions {
|
|
14
|
+
readonly caller?: SimAwsCaller;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The commands that create and describe a simulated secret.
|
|
18
|
+
*
|
|
19
|
+
* The interesting rules live with the collaborators these delegate to: name
|
|
20
|
+
* validation and ARN suffixing in the secret factory, staging labels in the
|
|
21
|
+
* version writer, and name availability in the store.
|
|
22
|
+
*/
|
|
23
|
+
export declare class SimSecretsManagerSecretCommands {
|
|
24
|
+
private readonly secrets;
|
|
25
|
+
private readonly secretFactory;
|
|
26
|
+
private readonly versionWriter;
|
|
27
|
+
private readonly authorizer;
|
|
28
|
+
private readonly detail;
|
|
29
|
+
constructor(properties: SimSecretsManagerSecretCommandsProperties);
|
|
30
|
+
/**
|
|
31
|
+
* Create a secret with its first version.
|
|
32
|
+
*
|
|
33
|
+
* Authorization happens against the ARN the secret is about to get, suffix
|
|
34
|
+
* and all, so a policy allowing `secretsmanager:CreateSecret` on a bare name
|
|
35
|
+
* fails here just as it would on real AWS.
|
|
36
|
+
*/
|
|
37
|
+
create(command: SimCreateSecretCommand, options?: SimSecretsManagerCommandOptions): SimCreateSecretCommandOutput;
|
|
38
|
+
/**
|
|
39
|
+
* Describe a secret's metadata, including the versions and their staging
|
|
40
|
+
* labels.
|
|
41
|
+
*
|
|
42
|
+
* A secret scheduled for deletion is still describable, and reports the date
|
|
43
|
+
* its recovery window runs out as DeletedDate.
|
|
44
|
+
*/
|
|
45
|
+
describe(command: SimDescribeSecretCommand, options?: SimSecretsManagerCommandOptions): SimDescribeSecretCommandOutput;
|
|
46
|
+
}
|
|
47
|
+
export {};
|
|
48
|
+
//# sourceMappingURL=sim-secrets-manager-secret-commands.d.ts.map
|
package/dist/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.d.ts.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-secret-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAErG,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAElG,OAAO,KAAK,EACV,sBAAsB,EACtB,4BAA4B,EAC5B,wBAAwB,EACxB,8BAA8B,EAC/B,MAAM,qBAAqB,CAAC;AAE7B,UAAU,yCAAyC;IACjD,QAAQ,CAAC,OAAO,EAAE,4BAA4B,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IACvD,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IACvD,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC;CAClD;AAED,UAAU,+BAA+B;IACvC,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;;;;GAMG;AACH,qBAAa,+BAA+B;IAC1C,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IACzD,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAuC;IAE9D,YAAY,UAAU,EAAE,yCAAyC,EAKhE;IAED;;;;;;OAMG;IACH,MAAM,CACJ,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,+BAA+B,GACxC,4BAA4B,CA0B9B;IAED;;;;;;OAMG;IACH,QAAQ,CACN,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,+BAA+B,GACxC,8BAA8B,CAUhC;CACF"}
|
|
@@ -0,0 +1,62 @@
|
|
|
1
|
+
import { SimSecretsManagerSecretValue } from "../../secret/sim-secrets-manager-secret-value.js";
|
|
2
|
+
import { SimSecretsManagerSecretDetail } from "./sim-secrets-manager-secret-detail.js";
|
|
3
|
+
/**
|
|
4
|
+
* The commands that create and describe a simulated secret.
|
|
5
|
+
*
|
|
6
|
+
* The interesting rules live with the collaborators these delegate to: name
|
|
7
|
+
* validation and ARN suffixing in the secret factory, staging labels in the
|
|
8
|
+
* version writer, and name availability in the store.
|
|
9
|
+
*/
|
|
10
|
+
export class SimSecretsManagerSecretCommands {
|
|
11
|
+
secrets;
|
|
12
|
+
secretFactory;
|
|
13
|
+
versionWriter;
|
|
14
|
+
authorizer;
|
|
15
|
+
detail = new SimSecretsManagerSecretDetail();
|
|
16
|
+
constructor(properties) {
|
|
17
|
+
this.secrets = properties.secrets;
|
|
18
|
+
this.secretFactory = properties.secretFactory;
|
|
19
|
+
this.versionWriter = properties.versionWriter;
|
|
20
|
+
this.authorizer = properties.authorizer;
|
|
21
|
+
}
|
|
22
|
+
/**
|
|
23
|
+
* Create a secret with its first version.
|
|
24
|
+
*
|
|
25
|
+
* Authorization happens against the ARN the secret is about to get, suffix
|
|
26
|
+
* and all, so a policy allowing `secretsmanager:CreateSecret` on a bare name
|
|
27
|
+
* fails here just as it would on real AWS.
|
|
28
|
+
*/
|
|
29
|
+
create(command, options) {
|
|
30
|
+
const { input } = command;
|
|
31
|
+
const secret = this.secretFactory.make({
|
|
32
|
+
name: input.Name,
|
|
33
|
+
description: input.Description,
|
|
34
|
+
kmsKeyId: input.KmsKeyId,
|
|
35
|
+
tags: input.Tags,
|
|
36
|
+
});
|
|
37
|
+
const value = SimSecretsManagerSecretValue.required(input);
|
|
38
|
+
this.authorizer.authorizeSecret("secretsmanager:CreateSecret", secret, options?.caller);
|
|
39
|
+
this.secrets.requireNameAvailable(secret.name);
|
|
40
|
+
const version = this.versionWriter.write(secret, value, input);
|
|
41
|
+
this.secrets.add(secret);
|
|
42
|
+
return {
|
|
43
|
+
$metadata: {},
|
|
44
|
+
ARN: secret.arn.value,
|
|
45
|
+
Name: secret.name,
|
|
46
|
+
VersionId: version.versionId,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
/**
|
|
50
|
+
* Describe a secret's metadata, including the versions and their staging
|
|
51
|
+
* labels.
|
|
52
|
+
*
|
|
53
|
+
* A secret scheduled for deletion is still describable, and reports the date
|
|
54
|
+
* its recovery window runs out as DeletedDate.
|
|
55
|
+
*/
|
|
56
|
+
describe(command, options) {
|
|
57
|
+
const secret = this.secrets.require(command.input.SecretId);
|
|
58
|
+
this.authorizer.authorizeSecret("secretsmanager:DescribeSecret", secret, options?.caller);
|
|
59
|
+
return { ...this.detail.describe(secret), $metadata: {} };
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
//# sourceMappingURL=sim-secrets-manager-secret-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-secret-commands.js","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-secret-commands.ts"],"names":[],"mappings":"AAGA,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAGhG,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AAmBvF;;;;;;GAMG;AACH,MAAM,OAAO,+BAA+B;IACzB,OAAO,CAA+B;IACtC,aAAa,CAAiC;IAC9C,aAAa,CAAiC;IAC9C,UAAU,CAA8B;IACxC,MAAM,GAAG,IAAI,6BAA6B,EAAE,CAAC;IAE9D,YAAY,UAAqD;QAC/D,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,CAAC;IAED;;;;;;OAMG;IACH,MAAM,CACJ,OAA+B,EAC/B,OAAyC;QAEzC,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC;YACrC,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,WAAW,EAAE,KAAK,CAAC,WAAW;YAC9B,QAAQ,EAAE,KAAK,CAAC,QAAQ;YACxB,IAAI,EAAE,KAAK,CAAC,IAAI;SACjB,CAAC,CAAC;QACH,MAAM,KAAK,GAAG,4BAA4B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAE3D,IAAI,CAAC,UAAU,CAAC,eAAe,CAC7B,6BAA6B,EAC7B,MAAM,EACN,OAAO,EAAE,MAAM,CAChB,CAAC;QACF,IAAI,CAAC,OAAO,CAAC,oBAAoB,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC;QAE/C,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC/D,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAEzB,OAAO;YACL,SAAS,EAAE,EAAE;YACb,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,OAAO,CAAC,SAAS;SAC7B,CAAC;IACJ,CAAC;IAED;;;;;;OAMG;IACH,QAAQ,CACN,OAAiC,EACjC,OAAyC;QAEzC,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAE5D,IAAI,CAAC,UAAU,CAAC,eAAe,CAC7B,+BAA+B,EAC/B,MAAM,EACN,OAAO,EAAE,MAAM,CAChB,CAAC;QAEF,OAAO,EAAE,GAAG,IAAI,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE,SAAS,EAAE,EAAE,EAAE,CAAC;IAC5D,CAAC;CACF"}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
import type { SimSecretsManagerSecret } from "../../secret/sim-secrets-manager-secret.js";
|
|
2
|
+
import type { SimDescribeSecretCommandOutput, SimSecretsManagerSecretListEntry } from "./secret.command.js";
|
|
3
|
+
type SimSecretsManagerSecretDescription = Omit<SimDescribeSecretCommandOutput, "$metadata">;
|
|
4
|
+
/**
|
|
5
|
+
* Converts a stored secret into the metadata Secrets Manager reports for it.
|
|
6
|
+
*
|
|
7
|
+
* DescribeSecret and ListSecrets report almost the same fields under two
|
|
8
|
+
* slightly different names, so building both here keeps them agreeing with
|
|
9
|
+
* each other.
|
|
10
|
+
*
|
|
11
|
+
* Rotation is always reported as disabled: RotateSecret and the rotation
|
|
12
|
+
* Lambda protocol are not simulated, so no secret in this simulation can be
|
|
13
|
+
* rotating.
|
|
14
|
+
*/
|
|
15
|
+
export declare class SimSecretsManagerSecretDetail {
|
|
16
|
+
/**
|
|
17
|
+
* The fields DescribeSecret reports for a secret.
|
|
18
|
+
*/
|
|
19
|
+
describe(secret: SimSecretsManagerSecret): SimSecretsManagerSecretDescription;
|
|
20
|
+
/**
|
|
21
|
+
* The fields ListSecrets reports for a secret.
|
|
22
|
+
*/
|
|
23
|
+
listEntry(secret: SimSecretsManagerSecret): SimSecretsManagerSecretListEntry;
|
|
24
|
+
}
|
|
25
|
+
export {};
|
|
26
|
+
//# sourceMappingURL=sim-secrets-manager-secret-detail.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-secret-detail.d.ts","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAC1F,OAAO,KAAK,EACV,8BAA8B,EAC9B,gCAAgC,EACjC,MAAM,qBAAqB,CAAC;AAE7B,KAAK,kCAAkC,GAAG,IAAI,CAC5C,8BAA8B,EAC9B,WAAW,CACZ,CAAC;AAEF;;;;;;;;;;GAUG;AACH,qBAAa,6BAA6B;IACxC;;OAEG;IACH,QAAQ,CACN,MAAM,EAAE,uBAAuB,GAC9B,kCAAkC,CAapC;IAED;;OAEG;IACH,SAAS,CAAC,MAAM,EAAE,uBAAuB,GAAG,gCAAgC,CAK3E;CACF"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Converts a stored secret into the metadata Secrets Manager reports for it.
|
|
3
|
+
*
|
|
4
|
+
* DescribeSecret and ListSecrets report almost the same fields under two
|
|
5
|
+
* slightly different names, so building both here keeps them agreeing with
|
|
6
|
+
* each other.
|
|
7
|
+
*
|
|
8
|
+
* Rotation is always reported as disabled: RotateSecret and the rotation
|
|
9
|
+
* Lambda protocol are not simulated, so no secret in this simulation can be
|
|
10
|
+
* rotating.
|
|
11
|
+
*/
|
|
12
|
+
export class SimSecretsManagerSecretDetail {
|
|
13
|
+
/**
|
|
14
|
+
* The fields DescribeSecret reports for a secret.
|
|
15
|
+
*/
|
|
16
|
+
describe(secret) {
|
|
17
|
+
return {
|
|
18
|
+
ARN: secret.arn.value,
|
|
19
|
+
Name: secret.name,
|
|
20
|
+
Description: secret.description,
|
|
21
|
+
KmsKeyId: secret.kmsKeyId,
|
|
22
|
+
RotationEnabled: false,
|
|
23
|
+
CreatedDate: secret.createdDate,
|
|
24
|
+
LastChangedDate: secret.lastChangedDate,
|
|
25
|
+
DeletedDate: secret.deletionDate,
|
|
26
|
+
Tags: secret.tags,
|
|
27
|
+
VersionIdsToStages: secret.versions.versionIdsToStages(),
|
|
28
|
+
};
|
|
29
|
+
}
|
|
30
|
+
/**
|
|
31
|
+
* The fields ListSecrets reports for a secret.
|
|
32
|
+
*/
|
|
33
|
+
listEntry(secret) {
|
|
34
|
+
const { VersionIdsToStages: versionsToStages, ...shared } = this.describe(secret);
|
|
35
|
+
return { ...shared, SecretVersionsToStages: versionsToStages };
|
|
36
|
+
}
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=sim-secrets-manager-secret-detail.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-secret-detail.js","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-secret-detail.ts"],"names":[],"mappings":"AAWA;;;;;;;;;;GAUG;AACH,MAAM,OAAO,6BAA6B;IACxC;;OAEG;IACH,QAAQ,CACN,MAA+B;QAE/B,OAAO;YACL,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,QAAQ,EAAE,MAAM,CAAC,QAAQ;YACzB,eAAe,EAAE,KAAK;YACtB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,WAAW,EAAE,MAAM,CAAC,YAAY;YAChC,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,kBAAkB,EAAE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE;SACzD,CAAC;IACJ,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAA+B;QACvC,MAAM,EAAE,kBAAkB,EAAE,gBAAgB,EAAE,GAAG,MAAM,EAAE,GACvD,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAC;QAExB,OAAO,EAAE,GAAG,MAAM,EAAE,sBAAsB,EAAE,gBAAgB,EAAE,CAAC;IACjE,CAAC;CACF"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import type { SimSecretsManagerSecret } from "../../secret/sim-secrets-manager-secret.js";
|
|
2
|
+
/**
|
|
3
|
+
* The paging fields a ListSecrets request carries.
|
|
4
|
+
*/
|
|
5
|
+
export interface SimSecretsManagerSecretPageInput {
|
|
6
|
+
readonly MaxResults?: number | undefined;
|
|
7
|
+
readonly NextToken?: string | undefined;
|
|
8
|
+
}
|
|
9
|
+
/**
|
|
10
|
+
* One page of listed secrets, and the token that reaches the next one.
|
|
11
|
+
*/
|
|
12
|
+
export declare class SimSecretsManagerSecretPage {
|
|
13
|
+
readonly secrets: readonly SimSecretsManagerSecret[];
|
|
14
|
+
readonly nextToken: string | undefined;
|
|
15
|
+
constructor(listed: readonly SimSecretsManagerSecret[], input: SimSecretsManagerSecretPageInput);
|
|
16
|
+
private static maxResults;
|
|
17
|
+
/**
|
|
18
|
+
* Read a continuation token as its offset into the listed secrets.
|
|
19
|
+
*
|
|
20
|
+
* Tokens are the canonical non-negative integer representation this command
|
|
21
|
+
* emits, so anything else is rejected rather than silently starting again
|
|
22
|
+
* from the beginning. An offset past the end of the list is rejected for the
|
|
23
|
+
* same reason: no such token is ever issued, so answering one with an empty
|
|
24
|
+
* page would be answering a question that was never validly asked.
|
|
25
|
+
*/
|
|
26
|
+
private static startIndex;
|
|
27
|
+
private static tokenFor;
|
|
28
|
+
}
|
|
29
|
+
//# sourceMappingURL=sim-secrets-manager-secret-page.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-secret-page.d.ts","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,4CAA4C,CAAC;AAK1F;;GAEG;AACH,MAAM,WAAW,gCAAgC;IAC/C,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CACzC;AAED;;GAEG;AACH,qBAAa,2BAA2B;IACtC,SAAgB,OAAO,EAAE,SAAS,uBAAuB,EAAE,CAAC;IAC5D,SAAgB,SAAS,EAAE,MAAM,GAAG,SAAS,CAAC;IAE9C,YACE,MAAM,EAAE,SAAS,uBAAuB,EAAE,EAC1C,KAAK,EAAE,gCAAgC,EAcxC;IAED,OAAO,CAAC,MAAM,CAAC,UAAU;IAgBzB;;;;;;;;OAQG;IACH,OAAO,CAAC,MAAM,CAAC,UAAU;IAwBzB,OAAO,CAAC,MAAM,CAAC,QAAQ;CAUxB"}
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
import { SimSecretsManagerInvalidParameterException } from "../../error/sim-secrets-manager.error.js";
|
|
2
|
+
const defaultMaxResults = 100;
|
|
3
|
+
const maxMaxResults = 100;
|
|
4
|
+
/**
|
|
5
|
+
* One page of listed secrets, and the token that reaches the next one.
|
|
6
|
+
*/
|
|
7
|
+
export class SimSecretsManagerSecretPage {
|
|
8
|
+
secrets;
|
|
9
|
+
nextToken;
|
|
10
|
+
constructor(listed, input) {
|
|
11
|
+
const maxResults = SimSecretsManagerSecretPage.maxResults(input.MaxResults);
|
|
12
|
+
const startIndex = SimSecretsManagerSecretPage.startIndex(input.NextToken, listed.length);
|
|
13
|
+
const nextIndex = startIndex + maxResults;
|
|
14
|
+
this.secrets = listed.slice(startIndex, nextIndex);
|
|
15
|
+
this.nextToken = SimSecretsManagerSecretPage.tokenFor(nextIndex, listed.length);
|
|
16
|
+
}
|
|
17
|
+
static maxResults(requested) {
|
|
18
|
+
const maxResults = requested ?? defaultMaxResults;
|
|
19
|
+
if (!Number.isSafeInteger(maxResults) ||
|
|
20
|
+
maxResults < 1 ||
|
|
21
|
+
maxResults > maxMaxResults) {
|
|
22
|
+
throw new SimSecretsManagerInvalidParameterException(`MaxResults must be a whole number between 1 and ${String(maxMaxResults)}`);
|
|
23
|
+
}
|
|
24
|
+
return maxResults;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Read a continuation token as its offset into the listed secrets.
|
|
28
|
+
*
|
|
29
|
+
* Tokens are the canonical non-negative integer representation this command
|
|
30
|
+
* emits, so anything else is rejected rather than silently starting again
|
|
31
|
+
* from the beginning. An offset past the end of the list is rejected for the
|
|
32
|
+
* same reason: no such token is ever issued, so answering one with an empty
|
|
33
|
+
* page would be answering a question that was never validly asked.
|
|
34
|
+
*/
|
|
35
|
+
static startIndex(nextToken, listedCount) {
|
|
36
|
+
if (nextToken === undefined) {
|
|
37
|
+
return 0;
|
|
38
|
+
}
|
|
39
|
+
const startIndex = Number(nextToken);
|
|
40
|
+
if (!Number.isSafeInteger(startIndex) ||
|
|
41
|
+
startIndex < 0 ||
|
|
42
|
+
startIndex >= listedCount ||
|
|
43
|
+
String(startIndex) !== nextToken) {
|
|
44
|
+
throw new SimSecretsManagerInvalidParameterException("NextToken is not a token this simulation issued");
|
|
45
|
+
}
|
|
46
|
+
return startIndex;
|
|
47
|
+
}
|
|
48
|
+
static tokenFor(nextIndex, listedCount) {
|
|
49
|
+
if (nextIndex >= listedCount) {
|
|
50
|
+
return undefined;
|
|
51
|
+
}
|
|
52
|
+
return String(nextIndex);
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
//# sourceMappingURL=sim-secrets-manager-secret-page.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-secret-page.js","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-secret-page.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,0CAA0C,EAAE,MAAM,0CAA0C,CAAC;AAGtG,MAAM,iBAAiB,GAAG,GAAG,CAAC;AAC9B,MAAM,aAAa,GAAG,GAAG,CAAC;AAU1B;;GAEG;AACH,MAAM,OAAO,2BAA2B;IACtB,OAAO,CAAqC;IAC5C,SAAS,CAAqB;IAE9C,YACE,MAA0C,EAC1C,KAAuC;QAEvC,MAAM,UAAU,GAAG,2BAA2B,CAAC,UAAU,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;QAC5E,MAAM,UAAU,GAAG,2BAA2B,CAAC,UAAU,CACvD,KAAK,CAAC,SAAS,EACf,MAAM,CAAC,MAAM,CACd,CAAC;QACF,MAAM,SAAS,GAAG,UAAU,GAAG,UAAU,CAAC;QAE1C,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,2BAA2B,CAAC,QAAQ,CACnD,SAAS,EACT,MAAM,CAAC,MAAM,CACd,CAAC;IACJ,CAAC;IAEO,MAAM,CAAC,UAAU,CAAC,SAA6B;QACrD,MAAM,UAAU,GAAG,SAAS,IAAI,iBAAiB,CAAC;QAElD,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC;YACjC,UAAU,GAAG,CAAC;YACd,UAAU,GAAG,aAAa,EAC1B,CAAC;YACD,MAAM,IAAI,0CAA0C,CAClD,mDAAmD,MAAM,CAAC,aAAa,CAAC,EAAE,CAC3E,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED;;;;;;;;OAQG;IACK,MAAM,CAAC,UAAU,CACvB,SAA6B,EAC7B,WAAmB;QAEnB,IAAI,SAAS,KAAK,SAAS,EAAE,CAAC;YAC5B,OAAO,CAAC,CAAC;QACX,CAAC;QAED,MAAM,UAAU,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC;QAErC,IACE,CAAC,MAAM,CAAC,aAAa,CAAC,UAAU,CAAC;YACjC,UAAU,GAAG,CAAC;YACd,UAAU,IAAI,WAAW;YACzB,MAAM,CAAC,UAAU,CAAC,KAAK,SAAS,EAChC,CAAC;YACD,MAAM,IAAI,0CAA0C,CAClD,iDAAiD,CAClD,CAAC;QACJ,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAEO,MAAM,CAAC,QAAQ,CACrB,SAAiB,EACjB,WAAmB;QAEnB,IAAI,SAAS,IAAI,WAAW,EAAE,CAAC;YAC7B,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,MAAM,CAAC,SAAS,CAAC,CAAC;IAC3B,CAAC;CACF"}
|
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import type { SimClock } from "../../../../util/clock/sim-clock.js";
|
|
2
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
3
|
+
import type { SimSecretsManagerSecretStore } from "../../secret/sim-secrets-manager-secret-store.js";
|
|
4
|
+
import type { SimSecretsManagerVersionWriter } from "../../secret/sim-secrets-manager-version-writer.js";
|
|
5
|
+
import type { SimSecretsManagerAuthorizer } from "../authorize/sim-secrets-manager-authorizer.js";
|
|
6
|
+
import type { SimUpdateSecretCommand, SimUpdateSecretCommandOutput } from "./secret.command.js";
|
|
7
|
+
interface SimSecretsManagerUpdateSecretProperties {
|
|
8
|
+
readonly secrets: SimSecretsManagerSecretStore;
|
|
9
|
+
readonly versionWriter: SimSecretsManagerVersionWriter;
|
|
10
|
+
readonly authorizer: SimSecretsManagerAuthorizer;
|
|
11
|
+
readonly clock: SimClock;
|
|
12
|
+
}
|
|
13
|
+
interface SimSecretsManagerUpdateSecretOptions {
|
|
14
|
+
readonly caller?: SimAwsCaller;
|
|
15
|
+
}
|
|
16
|
+
/**
|
|
17
|
+
* The UpdateSecret command.
|
|
18
|
+
*
|
|
19
|
+
* This is the one operation that can change a secret's metadata and its value
|
|
20
|
+
* in the same request, and either part is optional, so it is kept apart from
|
|
21
|
+
* the commands that only do one of those.
|
|
22
|
+
*/
|
|
23
|
+
export declare class SimSecretsManagerUpdateSecret {
|
|
24
|
+
private readonly secrets;
|
|
25
|
+
private readonly versionWriter;
|
|
26
|
+
private readonly authorizer;
|
|
27
|
+
private readonly clock;
|
|
28
|
+
constructor(properties: SimSecretsManagerUpdateSecretProperties);
|
|
29
|
+
/**
|
|
30
|
+
* Update a secret's metadata, its value, or both.
|
|
31
|
+
*
|
|
32
|
+
* Supplying a value writes a new version and makes it current, the same as
|
|
33
|
+
* PutSecretValue does.
|
|
34
|
+
*/
|
|
35
|
+
handle(command: SimUpdateSecretCommand, options?: SimSecretsManagerUpdateSecretOptions): SimUpdateSecretCommandOutput;
|
|
36
|
+
/**
|
|
37
|
+
* Apply the metadata fields an UpdateSecret request carries.
|
|
38
|
+
*
|
|
39
|
+
* Omitting a field leaves it as it was, which is how real Secrets Manager
|
|
40
|
+
* treats an absent Description or KmsKeyId.
|
|
41
|
+
*/
|
|
42
|
+
private applyMetadata;
|
|
43
|
+
private writtenVersionId;
|
|
44
|
+
}
|
|
45
|
+
export {};
|
|
46
|
+
//# sourceMappingURL=sim-secrets-manager-update-secret.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-update-secret.d.ts","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,qCAAqC,CAAC;AACpE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAE1E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAErG,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,KAAK,EACV,sBAAsB,EAEtB,4BAA4B,EAC7B,MAAM,qBAAqB,CAAC;AAE7B,UAAU,uCAAuC;IAC/C,QAAQ,CAAC,OAAO,EAAE,4BAA4B,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IACvD,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC;IACjD,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAC;CAC1B;AAED,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;;;;GAMG;AACH,qBAAa,6BAA6B;IACxC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IACzD,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAW;IAEjC,YAAY,UAAU,EAAE,uCAAuC,EAK9D;IAED;;;;;OAKG;IACH,MAAM,CACJ,OAAO,EAAE,sBAAsB,EAC/B,OAAO,CAAC,EAAE,oCAAoC,GAC7C,4BAA4B,CA0B9B;IAED;;;;;OAKG;IACH,OAAO,CAAC,aAAa;IAerB,OAAO,CAAC,gBAAgB;CAWzB"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { SimSecretsManagerSecretValue } from "../../secret/sim-secrets-manager-secret-value.js";
|
|
2
|
+
/**
|
|
3
|
+
* The UpdateSecret command.
|
|
4
|
+
*
|
|
5
|
+
* This is the one operation that can change a secret's metadata and its value
|
|
6
|
+
* in the same request, and either part is optional, so it is kept apart from
|
|
7
|
+
* the commands that only do one of those.
|
|
8
|
+
*/
|
|
9
|
+
export class SimSecretsManagerUpdateSecret {
|
|
10
|
+
secrets;
|
|
11
|
+
versionWriter;
|
|
12
|
+
authorizer;
|
|
13
|
+
clock;
|
|
14
|
+
constructor(properties) {
|
|
15
|
+
this.secrets = properties.secrets;
|
|
16
|
+
this.versionWriter = properties.versionWriter;
|
|
17
|
+
this.authorizer = properties.authorizer;
|
|
18
|
+
this.clock = properties.clock;
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Update a secret's metadata, its value, or both.
|
|
22
|
+
*
|
|
23
|
+
* Supplying a value writes a new version and makes it current, the same as
|
|
24
|
+
* PutSecretValue does.
|
|
25
|
+
*/
|
|
26
|
+
handle(command, options) {
|
|
27
|
+
const { input } = command;
|
|
28
|
+
const secret = this.secrets.require(input.SecretId);
|
|
29
|
+
this.authorizer.authorizeSecret("secretsmanager:UpdateSecret", secret, options?.caller);
|
|
30
|
+
secret.requireNotScheduledForDeletion();
|
|
31
|
+
const value = SimSecretsManagerSecretValue.optional(input);
|
|
32
|
+
// The version is written first because writing it can still fail, on a
|
|
33
|
+
// client request token already used for a different value. Applying the
|
|
34
|
+
// metadata first would leave the secret half updated by a request that
|
|
35
|
+
// then reported an error.
|
|
36
|
+
const versionId = this.writtenVersionId(secret, value, input);
|
|
37
|
+
this.applyMetadata(secret, input);
|
|
38
|
+
return {
|
|
39
|
+
$metadata: {},
|
|
40
|
+
ARN: secret.arn.value,
|
|
41
|
+
Name: secret.name,
|
|
42
|
+
VersionId: versionId,
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Apply the metadata fields an UpdateSecret request carries.
|
|
47
|
+
*
|
|
48
|
+
* Omitting a field leaves it as it was, which is how real Secrets Manager
|
|
49
|
+
* treats an absent Description or KmsKeyId.
|
|
50
|
+
*/
|
|
51
|
+
applyMetadata(secret, input) {
|
|
52
|
+
if (input.Description !== undefined) {
|
|
53
|
+
secret.description = input.Description;
|
|
54
|
+
}
|
|
55
|
+
if (input.KmsKeyId !== undefined) {
|
|
56
|
+
secret.kmsKeyId = input.KmsKeyId;
|
|
57
|
+
}
|
|
58
|
+
secret.lastChangedDate = this.clock.now();
|
|
59
|
+
}
|
|
60
|
+
writtenVersionId(secret, value, input) {
|
|
61
|
+
if (value === undefined) {
|
|
62
|
+
return undefined;
|
|
63
|
+
}
|
|
64
|
+
return this.versionWriter.write(secret, value, input).versionId;
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=sim-secrets-manager-update-secret.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-update-secret.js","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/secret/sim-secrets-manager-update-secret.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAoBhG;;;;;;GAMG;AACH,MAAM,OAAO,6BAA6B;IACvB,OAAO,CAA+B;IACtC,aAAa,CAAiC;IAC9C,UAAU,CAA8B;IACxC,KAAK,CAAW;IAEjC,YAAY,UAAmD;QAC7D,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;QACxC,IAAI,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;IAChC,CAAC;IAED;;;;;OAKG;IACH,MAAM,CACJ,OAA+B,EAC/B,OAA8C;QAE9C,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAI,CAAC,UAAU,CAAC,eAAe,CAC7B,6BAA6B,EAC7B,MAAM,EACN,OAAO,EAAE,MAAM,CAChB,CAAC;QACF,MAAM,CAAC,8BAA8B,EAAE,CAAC;QAExC,MAAM,KAAK,GAAG,4BAA4B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAE3D,uEAAuE;QACvE,wEAAwE;QACxE,uEAAuE;QACvE,0BAA0B;QAC1B,MAAM,SAAS,GAAG,IAAI,CAAC,gBAAgB,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAC9D,IAAI,CAAC,aAAa,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAElC,OAAO;YACL,SAAS,EAAE,EAAE;YACb,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,SAAS;SACrB,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACK,aAAa,CACnB,MAA+B,EAC/B,KAAkC;QAElC,IAAI,KAAK,CAAC,WAAW,KAAK,SAAS,EAAE,CAAC;YACpC,MAAM,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC;QACzC,CAAC;QAED,IAAI,KAAK,CAAC,QAAQ,KAAK,SAAS,EAAE,CAAC;YACjC,MAAM,CAAC,QAAQ,GAAG,KAAK,CAAC,QAAQ,CAAC;QACnC,CAAC;QAED,MAAM,CAAC,eAAe,GAAG,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;IAC5C,CAAC;IAEO,gBAAgB,CACtB,MAA+B,EAC/B,KAA+C,EAC/C,KAAkC;QAElC,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,OAAO,SAAS,CAAC;QACnB,CAAC;QAED,OAAO,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,SAAS,CAAC;IAClE,CAAC;CACF"}
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The sim Secrets Manager Command types, gathered for the service facade.
|
|
3
|
+
*/
|
|
4
|
+
export type { SimCreateSecretCommand, SimCreateSecretCommandInput, SimCreateSecretCommandOutput, SimDeleteSecretCommand, SimDeleteSecretCommandInput, SimDeleteSecretCommandOutput, SimDescribeSecretCommand, SimDescribeSecretCommandInput, SimDescribeSecretCommandOutput, SimListSecretsCommand, SimListSecretsCommandInput, SimListSecretsCommandOutput, SimListSecretsFilter, SimRestoreSecretCommand, SimRestoreSecretCommandInput, SimRestoreSecretCommandOutput, SimSecretsManagerSecretListEntry, SimUpdateSecretCommand, SimUpdateSecretCommandInput, SimUpdateSecretCommandOutput, } from "./secret/secret.command.js";
|
|
5
|
+
export type { SimGetSecretValueCommand, SimGetSecretValueCommandInput, SimGetSecretValueCommandOutput, SimPutSecretValueCommand, SimPutSecretValueCommandInput, SimPutSecretValueCommandOutput, } from "./value/value.command.js";
|
|
6
|
+
//# sourceMappingURL=sim-secrets-manager-command.types.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-command.types.d.ts","sourceRoot":"","sources":["../../../../src/service/secretsmanager/command/sim-secrets-manager-command.types.ts"],"names":[],"mappings":"AAAA;;GAEG;AACH,YAAY,EACV,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,EAC5B,wBAAwB,EACxB,6BAA6B,EAC7B,8BAA8B,EAC9B,qBAAqB,EACrB,0BAA0B,EAC1B,2BAA2B,EAC3B,oBAAoB,EACpB,uBAAuB,EACvB,4BAA4B,EAC5B,6BAA6B,EAC7B,gCAAgC,EAChC,sBAAsB,EACtB,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,4BAA4B,CAAC;AACpC,YAAY,EACV,wBAAwB,EACxB,6BAA6B,EAC7B,8BAA8B,EAC9B,wBAAwB,EACxB,6BAA6B,EAC7B,8BAA8B,GAC/B,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-command.types.js","sourceRoot":"","sources":["../../../../src/service/secretsmanager/command/sim-secrets-manager-command.types.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
import type { SimAwsCaller } from "../../../aws/caller/sim-aws-caller.js";
|
|
2
|
+
import type { SimSecretsManagerSecretStore } from "../../secret/sim-secrets-manager-secret-store.js";
|
|
3
|
+
import type { SimSecretsManagerVersionWriter } from "../../secret/sim-secrets-manager-version-writer.js";
|
|
4
|
+
import type { SimSecretsManagerAuthorizer } from "../authorize/sim-secrets-manager-authorizer.js";
|
|
5
|
+
import type { SimGetSecretValueCommand, SimGetSecretValueCommandOutput, SimPutSecretValueCommand, SimPutSecretValueCommandOutput } from "./value.command.js";
|
|
6
|
+
interface SimSecretsManagerValueCommandsProperties {
|
|
7
|
+
readonly secrets: SimSecretsManagerSecretStore;
|
|
8
|
+
readonly versionWriter: SimSecretsManagerVersionWriter;
|
|
9
|
+
readonly authorizer: SimSecretsManagerAuthorizer;
|
|
10
|
+
}
|
|
11
|
+
interface SimSecretsManagerValueCommandOptions {
|
|
12
|
+
readonly caller?: SimAwsCaller;
|
|
13
|
+
}
|
|
14
|
+
/**
|
|
15
|
+
* The commands that read and write a simulated secret's value.
|
|
16
|
+
*
|
|
17
|
+
* These are the two operations application code actually makes: a handler
|
|
18
|
+
* fetching a database password on cold start, and whatever put it there.
|
|
19
|
+
*/
|
|
20
|
+
export declare class SimSecretsManagerValueCommands {
|
|
21
|
+
private readonly secrets;
|
|
22
|
+
private readonly versionWriter;
|
|
23
|
+
private readonly authorizer;
|
|
24
|
+
private readonly versionSelector;
|
|
25
|
+
constructor(properties: SimSecretsManagerValueCommandsProperties);
|
|
26
|
+
/**
|
|
27
|
+
* Read a secret's value, defaulting to the version labelled AWSCURRENT.
|
|
28
|
+
*/
|
|
29
|
+
get(command: SimGetSecretValueCommand, options?: SimSecretsManagerValueCommandOptions): SimGetSecretValueCommandOutput;
|
|
30
|
+
/**
|
|
31
|
+
* Write a new version of a secret's value.
|
|
32
|
+
*
|
|
33
|
+
* The new version becomes AWSCURRENT unless VersionStages says otherwise,
|
|
34
|
+
* and the version that was current becomes AWSPREVIOUS.
|
|
35
|
+
*/
|
|
36
|
+
put(command: SimPutSecretValueCommand, options?: SimSecretsManagerValueCommandOptions): SimPutSecretValueCommandOutput;
|
|
37
|
+
}
|
|
38
|
+
export {};
|
|
39
|
+
//# sourceMappingURL=sim-secrets-manager-value-commands.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-value-commands.d.ts","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/value/sim-secrets-manager-value-commands.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,uCAAuC,CAAC;AAC1E,OAAO,KAAK,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAGrG,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,oDAAoD,CAAC;AACzG,OAAO,KAAK,EAAE,2BAA2B,EAAE,MAAM,gDAAgD,CAAC;AAClG,OAAO,KAAK,EACV,wBAAwB,EACxB,8BAA8B,EAC9B,wBAAwB,EACxB,8BAA8B,EAC/B,MAAM,oBAAoB,CAAC;AAE5B,UAAU,wCAAwC;IAChD,QAAQ,CAAC,OAAO,EAAE,4BAA4B,CAAC;IAC/C,QAAQ,CAAC,aAAa,EAAE,8BAA8B,CAAC;IACvD,QAAQ,CAAC,UAAU,EAAE,2BAA2B,CAAC;CAClD;AAED,UAAU,oCAAoC;IAC5C,QAAQ,CAAC,MAAM,CAAC,EAAE,YAAY,CAAC;CAChC;AAED;;;;;GAKG;AACH,qBAAa,8BAA8B;IACzC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAA+B;IACvD,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAiC;IAC/D,OAAO,CAAC,QAAQ,CAAC,UAAU,CAA8B;IACzD,OAAO,CAAC,QAAQ,CAAC,eAAe,CAA0C;IAE1E,YAAY,UAAU,EAAE,wCAAwC,EAI/D;IAED;;OAEG;IACH,GAAG,CACD,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,oCAAoC,GAC7C,8BAA8B,CAuBhC;IAED;;;;;OAKG;IACH,GAAG,CACD,OAAO,EAAE,wBAAwB,EACjC,OAAO,CAAC,EAAE,oCAAoC,GAC7C,8BAA8B,CAqBhC;CACF"}
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { SimSecretsManagerSecretValue } from "../../secret/sim-secrets-manager-secret-value.js";
|
|
2
|
+
import { SimSecretsManagerVersionSelector } from "../../secret/sim-secrets-manager-version-selector.js";
|
|
3
|
+
/**
|
|
4
|
+
* The commands that read and write a simulated secret's value.
|
|
5
|
+
*
|
|
6
|
+
* These are the two operations application code actually makes: a handler
|
|
7
|
+
* fetching a database password on cold start, and whatever put it there.
|
|
8
|
+
*/
|
|
9
|
+
export class SimSecretsManagerValueCommands {
|
|
10
|
+
secrets;
|
|
11
|
+
versionWriter;
|
|
12
|
+
authorizer;
|
|
13
|
+
versionSelector = new SimSecretsManagerVersionSelector();
|
|
14
|
+
constructor(properties) {
|
|
15
|
+
this.secrets = properties.secrets;
|
|
16
|
+
this.versionWriter = properties.versionWriter;
|
|
17
|
+
this.authorizer = properties.authorizer;
|
|
18
|
+
}
|
|
19
|
+
/**
|
|
20
|
+
* Read a secret's value, defaulting to the version labelled AWSCURRENT.
|
|
21
|
+
*/
|
|
22
|
+
get(command, options) {
|
|
23
|
+
const { input } = command;
|
|
24
|
+
const secret = this.secrets.require(input.SecretId);
|
|
25
|
+
this.authorizer.authorizeSecret("secretsmanager:GetSecretValue", secret, options?.caller);
|
|
26
|
+
secret.requireNotScheduledForDeletion();
|
|
27
|
+
const version = this.versionSelector.select(secret, input);
|
|
28
|
+
return {
|
|
29
|
+
$metadata: {},
|
|
30
|
+
ARN: secret.arn.value,
|
|
31
|
+
Name: secret.name,
|
|
32
|
+
VersionId: version.versionId,
|
|
33
|
+
SecretString: version.value.secretString,
|
|
34
|
+
SecretBinary: version.value.secretBinary,
|
|
35
|
+
VersionStages: version.stages,
|
|
36
|
+
CreatedDate: version.createdDate,
|
|
37
|
+
};
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Write a new version of a secret's value.
|
|
41
|
+
*
|
|
42
|
+
* The new version becomes AWSCURRENT unless VersionStages says otherwise,
|
|
43
|
+
* and the version that was current becomes AWSPREVIOUS.
|
|
44
|
+
*/
|
|
45
|
+
put(command, options) {
|
|
46
|
+
const { input } = command;
|
|
47
|
+
const secret = this.secrets.require(input.SecretId);
|
|
48
|
+
this.authorizer.authorizeSecret("secretsmanager:PutSecretValue", secret, options?.caller);
|
|
49
|
+
secret.requireNotScheduledForDeletion();
|
|
50
|
+
const value = SimSecretsManagerSecretValue.required(input);
|
|
51
|
+
const version = this.versionWriter.write(secret, value, input);
|
|
52
|
+
return {
|
|
53
|
+
$metadata: {},
|
|
54
|
+
ARN: secret.arn.value,
|
|
55
|
+
Name: secret.name,
|
|
56
|
+
VersionId: version.versionId,
|
|
57
|
+
VersionStages: version.stages,
|
|
58
|
+
};
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
//# sourceMappingURL=sim-secrets-manager-value-commands.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sim-secrets-manager-value-commands.js","sourceRoot":"","sources":["../../../../../src/service/secretsmanager/command/value/sim-secrets-manager-value-commands.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,4BAA4B,EAAE,MAAM,kDAAkD,CAAC;AAChG,OAAO,EAAE,gCAAgC,EAAE,MAAM,sDAAsD,CAAC;AAoBxG;;;;;GAKG;AACH,MAAM,OAAO,8BAA8B;IACxB,OAAO,CAA+B;IACtC,aAAa,CAAiC;IAC9C,UAAU,CAA8B;IACxC,eAAe,GAAG,IAAI,gCAAgC,EAAE,CAAC;IAE1E,YAAY,UAAoD;QAC9D,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,CAAC;QAClC,IAAI,CAAC,aAAa,GAAG,UAAU,CAAC,aAAa,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC,UAAU,CAAC;IAC1C,CAAC;IAED;;OAEG;IACH,GAAG,CACD,OAAiC,EACjC,OAA8C;QAE9C,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAI,CAAC,UAAU,CAAC,eAAe,CAC7B,+BAA+B,EAC/B,MAAM,EACN,OAAO,EAAE,MAAM,CAChB,CAAC;QACF,MAAM,CAAC,8BAA8B,EAAE,CAAC;QAExC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,CAAC,MAAM,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC;QAE3D,OAAO;YACL,SAAS,EAAE,EAAE;YACb,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY;YACxC,YAAY,EAAE,OAAO,CAAC,KAAK,CAAC,YAAY;YACxC,aAAa,EAAE,OAAO,CAAC,MAAM;YAC7B,WAAW,EAAE,OAAO,CAAC,WAAW;SACjC,CAAC;IACJ,CAAC;IAED;;;;;OAKG;IACH,GAAG,CACD,OAAiC,EACjC,OAA8C;QAE9C,MAAM,EAAE,KAAK,EAAE,GAAG,OAAO,CAAC;QAC1B,MAAM,MAAM,GAAG,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAEpD,IAAI,CAAC,UAAU,CAAC,eAAe,CAC7B,+BAA+B,EAC/B,MAAM,EACN,OAAO,EAAE,MAAM,CAChB,CAAC;QACF,MAAM,CAAC,8BAA8B,EAAE,CAAC;QAExC,MAAM,KAAK,GAAG,4BAA4B,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;QAC3D,MAAM,OAAO,GAAG,IAAI,CAAC,aAAa,CAAC,KAAK,CAAC,MAAM,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC;QAE/D,OAAO;YACL,SAAS,EAAE,EAAE;YACb,GAAG,EAAE,MAAM,CAAC,GAAG,CAAC,KAAK;YACrB,IAAI,EAAE,MAAM,CAAC,IAAI;YACjB,SAAS,EAAE,OAAO,CAAC,SAAS;YAC5B,aAAa,EAAE,OAAO,CAAC,MAAM;SAC9B,CAAC;IACJ,CAAC;CACF"}
|