OpenBao vs Secrets Manager
OpenBao
openbao.orgSecrets Manager
github.comSide by side
| Figure | OpenBao | Secrets Manager |
|---|---|---|
| Price from | Free | Free |
| Free plan | Yes | Yes |
| Free trial | — | — |
| Open source | — | — |
| Web | Yes | Yes |
| Windows | Yes | Yes |
| macOS | Yes | Yes |
| Linux | Yes | Yes |
| API | Yes | Yes |
| Self-hosted | Yes | Yes |
| Plans published | 1 | 1 |
| Spec score · Secrets Management Tools | 8.0 (#12) | 8.3 (#7) |
| Deployment | OpenBao can be installed through package managers, container registries, precompiled binaries, source builds, or Helm for Kubernetes. | Docker Compose starts PostgreSQL, Redis, the backend, and frontend; local Kubernetes manifests are also provided for a kind cluster. |
| Encryption | OpenBao can encrypt and decrypt data without storing it, using centrally defined encryption parameters. | The backend uses AES-256-GCM envelope encryption with a random data key per secret value, and the documentation says plaintext secret values are never stored in the database. |
| Integrations | The project lists integrations including Sigstore for artifact signing, StackHPC for OpenStack, and Percona for database encryption key management. | The documented CLI workflow uses Node.js and shows app commands for Node.js, Python, npm, and Next.js; CI or deployment can use `SECRETS_API_URL`, `SECRETS_TOKEN`, and `ENVIRONMENT_ID`. |
Plans
In their own words
OpenBao
OpenBao is a free, open-source system for storing and controlling access to secrets such as API tokens, encryption keys, passwords, and certificates. Management is available through a web UI, CLI, or HTTP API. Key/value secrets are encrypted before persistent storage, while dynamic credentials can be generated for Kubernetes and SQL databases and revoked when leases expire. Leases can be renewed, and individual secrets or groups can be revoked. OpenBao also encrypts and decrypts data without retaining it. Authentication methods include GitHub, LDAP, and AppRole, with token-based policies. Its storage barrier uses AES-256-GCM and verifies authentication tags during decryption. High-availability configurations are supported. Deployment options include packages, containers, binaries, source builds, and Helm; documentation covers Linux, macOS, FreeBSD, and Windows. Releases provide GPG signatures and SBOMs. Integrated Storage defaults to a 1 MiB maximum entry size, configurable with max_entry_size.
Secrets Manager
Secrets Manager is a free, open-source, self-hosted system for storing application secrets in encrypted form, managing them through a web interface, and injecting them into processes with a command-line tool. Users organize secrets by organization, project, and environment, import.env files, edit or reveal values, keep versions, roll back, and soft-delete entries. The `secrets run` command supplies environment secrets to a child process and its descendants without creating a.env file. Documented workflows cover Node.js, Python, npm, and Next.js; CI or deployment can use an API URL, token, and environment ID. User and service-account grants can be scoped to projects or environments, and revealing values requires explicit permission. AES-256-GCM envelope encryption uses a separate data key per value, while plaintext values are not stored in the database. Audit events include secret reveals, and values are withheld if audit writing fails. Docker Compose starts PostgreSQL, Redis, backend, and frontend; local Kubernetes manifests are also provided. A user-generated master key is mandatory and lost keys make secrets unrecoverable. The repository is MIT licensed.