interface ISecretManager
Since 0.1.0

Secret manager backed by a provider (AWS KMS, GCP Secret Manager, Azure Key Vault, HashiCorp Vault, or environment variables in development).

Secrets must never be logged; the logger redacts known secret fields (AI_GUIDELINES ยง13.3).

Examples

Example 1

const secrets = ctx.services.get<ISecretManager>(CAPABILITIES.SECRETS);
const dbPassword = await secrets.get('database/password');

Methods

get(name: string): Promise<string>

Retrieves a secret.

has(name: string): Promise<boolean>

Reports whether a secret exists.

rotate(
name: string,
value: string
): Promise<void>

Rotates a secret to a new value.

Usage

import { type ISecretManager } from "common/src/index.ts";