Skip to main content
provisioning · aws

Secrets Manager

category
Security & Secrets

What does zop.dev create for Secrets Manager?

zop.dev writes generated credentials to Secrets Manager from every module that mints them (4 RDS entries per instance, Kafka SCRAM, observability admin, S3 user), and exposes secrets as a direct resource type. Each secret bills about 0.40 USD per month, and deletion is deferred by a 7-to-30-day recovery window.

Module backing Secrets Manager.
Field Value
Cloudaws

AWS Secrets Manager keeps database passwords, API keys, and service credentials out of code. zop.dev both writes generated credentials here during provisioning and exposes secrets as a directly manageable resource.

Secrets written directly and by other modules

Secrets Manager secrets created directly via the provisioner API, plus the credential entries that other modules generate automatically (RDS master/user/editor/read-only, Kafka SCRAM, observability admin and S3 user).

secret_string and the RDS db-secret name

Terminal window
secret_string payload for direct creation; RDS provisioning auto-generates a password and stores it as <name>-db-secret.

Mounted into pods by the secrets-store CSI driver

Namespaces mount secrets into pods through the AWS secrets-store CSI driver via SecretProviderClass.

Entries arrive from two directions

Some secrets are created deliberately through the provisioner API with a secret_string payload. The rest arrive as side effects: RDS provisioning writes master, app user, editor, and read-only entries (the password lands as <name>-db-secret), MSK writes SCRAM credentials, the observability stack writes its admin and S3 user. An inventory of Secrets Manager is therefore an inventory of what the platform has provisioned. Most entries were never typed by a human, which is the point: credentials nobody has seen are credentials nobody can leak from a terminal history.

Deletion takes weeks by design

Deleting a secret schedules it for deletion after a recovery window of 7 to 30 days (30 by default) rather than removing it. During the window the secret is recoverable, but its name is unavailable for reuse, which surprises anyone tearing down and recreating an environment under the same name. The window exists because a secret still referenced by a running system fails slowly and confusingly; forcing immediate deletion is possible but discards exactly the safety net that failure mode needs.

Forty cents, multiplied

Pricing is about 0.40 USD per secret per month plus per-10,000 API calls. That is nothing until it is multiplied. Four RDS entries per instance, times instances, times environments, plus attachment-minted credentials adds up to a steady line item made of entries nobody remembers. The cost is small; the hygiene signal is not. A Secrets Manager bill that only ever grows means retired environments are not cleaning up after themselves.

Pods consume through the CSI driver

Namespaces mount secrets into pods via SecretProviderClass and the AWS secrets-store CSI driver: the pod sees files, the cluster stores no copy of the value in its own etcd, and a rotated secret reaches workloads on remount instead of requiring a manifest edit.

See it fire on your bill.

Connect an account read-only. The first findings land in minutes.

417 rule families across 353 resource types on 22 platforms. Every threshold, metric, and IAM action is documented on these pages before you grant anything.

417 rule families documented
353 resource types covered
read-only default access level
Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console· Multi-cloud automation· Production-ready in 30 min· SOC 2 · ISO 27001· 20–60% off the bill, first month· 4 platforms · 1 console·