@ effect-aws/ 机密管理器
此软件包提供了 fromSecretsManager 配置 构造函数 .
您可以用它来读取 AWS 机密管理器的密件 Config 计划.
配置原始名必须匹配秘密名或秘密管理器中的ARN.
譬如说, Config.String("my_secret_name") 或者说 Config.String("arn:aws:secretsmanager:eu-central-1:123456789012:secret:my_secret_name-AbCdEf")。 。 。 .
安装
npm install --save @effect-aws/secrets-manager @effect-aws/client-secrets-manager
使用量
默认服务层 :
import { SecretsManager } from "@effect-aws/client-secrets-manager"
import { ConfigProvider } from "@effect-aws/secrets-manager"
import { Effect, Config, Console } from "effect"
const program = Effect.gen(function* () {
const secret: string = yield* Config.String("my_secret_name")
yield* Console.log("Secret from Secrets Manager: ", secret)
})
program.pipe(
ConfigProvider.withSecretsManagerConfigProvider(),
Effect.provide(SecretsManager.defaultLayer),
Effect.runPromise
)
带有自定义服务层 :
import { SecretsManager } from "@effect-aws/client-secrets-manager"
import { ConfigProvider } from "@effect-aws/secrets-manager"
import { Config, Console, Effect, Layer } from "effect"
const program = Effect.gen(function* () {
const secret: string = yield* Config.String("my_secret_name")
yield* Console.log("Secret from Secrets Manager: ", secret)
})
const serviceLayer = SecretsManager.layer({ region: "eu-central-1" })
program.pipe(
Effect.provide(ConfigProvider.setSecretsManagerConfigProvider()),
Effect.provide(serviceLayer),
Effect.runPromise
)