How OpenBao for PCI DSS key management fits your assessment
OpenBao can technically enforce parts of PCI DSS requirements 3.6, 3.7 and 8.6.2, but it does not satisfy them alone. Requirements 3.6 and 3.7 cover how cryptographic keys are generated, stored, distributed, rotated and retired, and requirement 8.6.2 prohibits hard-coded passwords in scripts, configuration files and custom source code for application and system accounts. A payments or regulated team preparing for assessment has to show an assessor both the technical controls and the procedures that govern them. This page explains where OpenBao carries that technical load and where your documented procedures, people and infrastructure choices must take over. DeployOpen prepares the systems, configuration and evidence for that review, but DeployOpen does not certify compliance. The qualified security assessor (QSA) or the self-assessment questionnaire (SAQ) process, through the Attestation of Compliance, decides the outcome.
Start by mapping which keys and passwords sit in which systems. OpenBao's encryption as a service lets applications send data to OpenBao for encryption, so they do not need to hold the data-encrypting keys themselves. Key/value secrets are encrypted before they reach storage. Dynamic secrets for databases and Kubernetes can replace long-lived service passwords that would otherwise appear in configuration files, which is the main route to meeting 8.6.2. For servers, OpenBao documents AppRole as its recommended auth method, so workloads authenticate with a role and receive short-lived tokens instead of embedded credentials. Confirm that each application path in scope actually calls OpenBao at runtime, because a password copied into a deployment file still fails 8.6.2 regardless of the vault behind it.
Several parts of requirements 3.6.1 and 3.7 depend on decisions and records that no software makes for you. Requirement 3.6.1.2 asks that secret and private keys be stored encrypted under a separate key-encrypting key, inside a secure cryptographic device such as an HSM, or as at least two full-length key components or shares. Decide which of those options your design uses and document the reasoning, including how the OpenBao seal is configured and who holds the material needed to unseal or recover the cluster. Requirement 3.7 adds expectations for split knowledge, dual control, custodian acknowledgment, cryptoperiod changes and retirement of compromised keys. Those need written procedures, named custodians, and logs that show the procedure was followed. Confirm with your QSA how they will test custodian handling and whether any control will be met through a customized approach.
Before design work starts, ask your QSA or acquirer which validation route applies to your entity and which SAQ or Report on Compliance template they expect. The payment brands decide who must validate. PCI DSS v4.x lets you meet a requirement through the defined approach or, where the entity qualifies, a customized approach that achieves the stated objective in a different way, and that choice should be agreed with the assessor in advance. DeployOpen prepares the OpenBao configuration, the key and secret inventory, the procedure drafts and the evidence those controls produce, so the assessor can test them. DeployOpen does not issue reports, attestations or certificates. Your assessor, through the completed ROC or SAQ and its Attestation of Compliance, decides whether the requirements are met.
Which PCI DSS key management requirements OpenBao covers and how
This table maps PCI DSS requirements 3.6.1, 3.6.1.2, the nine sub-requirements of 3.7 grouped by theme, and 8.6.2 to OpenBao capabilities and the configuration each one needs. Read the capability column to see where the platform gives partial help only. The main takeaway is that OpenBao supports the technical controls, while custodian procedures, records and seal or HSM choices still need documented decisions and vendor confirmation for your version.
| Requirement | What it asks for | OpenBao capability | Configuration needed |
|---|---|---|---|
| 3.6.1 Key protection procedures | Limit key access to the fewest custodians, keep key-encrypting keys at least as strong as the keys they protect, and minimize key locations. | Partial: transit keys stay inside OpenBao, and policies restrict who can use them. Custodian procedures remain yours. | Separate key-admin and key-use policies, bind them to named roles, enable audit devices, and document the custodian list. |
| 3.6.1.2 Secure key storage options | Store secret and private keys encrypted under a separate key-encrypting key, in a secure cryptographic device, or as two or more full-length components. | Partial: OpenBao encrypts data before writing it to storage. Confirm seal or HSM support for your version with vendor docs. | Choose the seal type, confirm HSM or auto-unseal support in vendor docs, and record which storage option applies. |
| 3.7.1 to 3.7.2 Key generation and distribution | Generate keys with strong methods and transport them securely between parties. | Partial: transit creates keys inside OpenBao, so keys need not be generated by hand. Partner key exchange needs separate procedures. | Create transit keys with defined types, review whether exportable keys are allowed, and document any key exchange method. |
| 3.7.3 to 3.7.5 Storage, cryptoperiod and retirement | Store keys securely, change them at a defined cryptoperiod, and retire or replace keys when compromised. | Partial: transit rotation and key versioning support cryptoperiod changes. The cryptoperiod length is set by your policy. | Set a rotation interval, raise the minimum decryption version after retirement, and define a response path for compromised keys. |
| 3.7.6 to 3.7.7 Split knowledge, dual control and substitution | Require split knowledge and dual control for manual cleartext key operations, and prevent unauthorized key substitution. | Partial: policies and audit logs help limit access and show key changes. Dual control for manual steps is procedural. | Require two approvals outside the platform for manual key operations, enable audit logging, and alert on key and policy changes. |
| 3.7.8 to 3.7.9 Custodian acknowledgment and customer guidance | Custodians acknowledge their responsibilities, and key procedures are documented and shared with key users. | Partial: OpenBao does not produce acknowledgments. Its policies and audit records can support the documentation evidence. | Keep signed custodian acknowledgments, a key inventory, and written guidance for key users outside the platform. |
| 8.6.2 No hard-coded passwords | No hard-coded passwords in scripts, configuration files or custom source for application and system accounts. Required since 31 March 2025. | Partial: applications can read secrets at runtime from OpenBao. Code changes and repository scanning remain your work. | Move credentials to KV or dynamic secrets, grant read policies per application, and scan repositories and configuration for leftover secrets. |
How OpenBao encryption as a service supports requirement 3.6.1
OpenBao's encryption as a service lets an application send plaintext to OpenBao and receive ciphertext back, while the data-encrypting work happens inside the OpenBao cluster. For requirement 3.6.1, that design matters because the application team does not need to hold raw key material to encrypt or decrypt cardholder data. The key stays inside the OpenBao boundary, and the application holds only a policy-scoped token that permits specific encrypt and decrypt operations on named keys. Key/value storage is a separate feature: OpenBao encrypts those values before writing them to the storage backend, which helps with data at rest, but the transit style of encryption as a service is what keeps key use out of application code.
This arrangement helps with the requirement's core goals of restricting key access to the fewest custodians and keeping keys in the fewest locations and forms. Access to key material can be limited to a small set of OpenBao administrators and a few service identities, and each application can be granted only the keys it needs through its own policy. Because applications call a service rather than copying keys into configuration files or container images, the number of places a key exists falls. Pair this with the auth method decisions made for servers and workloads so that the identities allowed to call encryption endpoints are themselves tightly controlled and logged.
Encryption as a service does not remove the need to protect the keys that protect the data. Requirement 3.6.1.2 asks that secret and private keys be stored encrypted with a separate key-encrypting key, inside a secure cryptographic device, or as at least two full-length key components or shares. OpenBao's own root key and unseal material are the key-encrypting layer here, so you must document how that material is generated, split, distributed, stored and used. Decide who holds each unseal share, where they are kept, and how the key-encrypting keys are kept separate from the data-encrypting keys they protect. Requirement 3.7 procedures for split knowledge, dual control and custodian acknowledgment also apply to these operations and should be written as operating procedures, not left to tribal knowledge.
Before you cite any seal configuration to an assessor, confirm the exact options against the OpenBao version you deploy and its current documentation. Check which seal types are supported in that release, whether an HSM or cloud key store seal is available for it, and how the seal is configured and tested. Do not assume that a feature described in general terms, or in another version's docs, is present in your build. Record the version, the seal configuration, and the evidence of testing in your key management documentation so the assessor can trace the claim to the running system.
The practical work is to map the design to evidence. Confirm which transit keys exist, what each one protects, which policies grant encrypt and decrypt rights, and which custodians can rotate or export material. Keep audit logs of key operations and review who holds administrative access. Where the design relies on a customized approach rather than a defined approach, document the objective being met and how it is verified, since the assessor will need that rationale. A qualified assessor decides whether the controls satisfy the requirement, so treat this section as input to your own evidence set rather than a finding of compliance.
Configuring OpenBao for PCI DSS key management in the right order
Configure OpenBao in this order so each decision informs the next and the evidence for PCI DSS requirements 3.6, 3.7 and 8.6.2 is created as you go. Each step names the decision to document and the artifact it produces, giving your assessor a traceable path from scope to running controls.
Confirm the cardholder data environment and key uses
List every system that stores, processes or transmits cardholder data, and every place a cryptographic key protects that data, including transit encryption, tokenization and backups. The security lead and the team responsible for scope should agree on this inventory and record which keys fall under requirements 3.6 and 3.7 and which application secrets fall under 8.6.2. The output is a signed scope document that names each key use, its owner and each system that will call OpenBao for it. Assessors check this boundary first, so an incomplete inventory weakens every later step.
Choose storage and high availability backends
Select the storage backend and the high availability design, then document the reasons. OpenBao's documented storage options include integrated storage (Raft), PostgreSQL, PebbleDB and in-memory, and its documentation describes PostgreSQL as easier to operate safely than Raft. Integrated storage and PostgreSQL are the officially supported HA backends, so any cluster in scope that uses another option needs a written justification. Record the node layout, where the backend runs and how backups are encrypted. The evidence is an architecture decision record and the results of a failover test run on a non-production cluster.
Configure seals and authentication methods
Decide how the cluster unseals and how people and machines authenticate. The seal design determines who can restore service after a restart and where the root of trust sits, so agree it with the team that owns your HSM or key ceremony process. Map the seal design to requirement 3.6.1.2 on encrypted key storage and split knowledge. For servers, OpenBao recommends AppRole, and for developer machines it recommends Userpass; confirm which auth methods your version supports for human access with multi-factor authentication. Retire the root token after bootstrap in favor of named identities. The evidence is the seal configuration, the list of enabled auth methods and a test showing that tokens carry bounded lifetimes.
Define policies by custodian role
Write OpenBao policies around the custodian roles your key procedures name, so each role can perform only the duties it needs. Requirement 3.6.1 asks that key access be restricted to the fewest custodians, so separate roles for generating or rotating keys, using transit encryption and decryption, and administering the cluster. Use namespaces where teams or environments need isolation within one cluster. Keep policy files in version control and require review before each change. The evidence is a policy document for each custodian role and test results showing that a role cannot read or use keys outside its scope.
Enable and retain audit output
Enable an audit device so that requests and responses to the cluster are logged, then decide where the logs go and how long they are kept. Confirm with your assessor which retention and review obligations under requirement 10 apply to these logs. Check that sensitive values appear in audit entries only in the form your configuration intends. Also confirm how the cluster behaves if no audit device can write, because that behavior affects both availability and log completeness. The evidence is a sample audit entry from each device, a written retention rule and a documented log review procedure.
Move applications off hard-coded credentials
Inventory scripts, configuration files and custom source code that contain passwords or keys, then replace each one with a runtime call to OpenBao. Requirement 8.6.2 prohibits hard-coded passwords for application and system accounts and became required on 31 March 2025. Start with the systems that touch cardholder data, use dynamic or short-lived credentials where the target system supports them, and remove old secrets from repositories and their history. The evidence is a before-and-after inventory, a repository scan with no remaining matches and sign-off from the owner of each application.
Document the procedures OpenBao does not provide
Write the manual procedures that stay outside the software, because several requirement 3.7 sub-requirements depend on people and ceremonies. Cover key generation, split knowledge and dual control, custodian acknowledgment, retirement of keys after suspected compromise, and guidance for any customers who rely on your key handling. Name an owner for each procedure and define what triggers a review. The evidence is signed procedures, custodian acknowledgment records and a record of at least one rehearsed key rotation. Confirm the artifacts your assessor expects before you finalize these documents.
Where OpenBao removes hard-coded passwords under requirement 8.6.2
Requirement 8.6.2 prohibits hard-coded passwords in scripts, configuration files or custom source code for application and system accounts, and it has been required since 31 March 2025. OpenBao addresses the runtime side of this requirement by issuing credentials when an application asks for them, instead of leaving a password in a file. Dynamic secrets for databases and Kubernetes create credentials on request, and OpenBao tracks each one as a lease that it revokes automatically when the lease ends or when an operator revokes it in bulk. An application that retrieves its database login at startup no longer needs a static password in its configuration, and the credential can be rotated without a code change.
The auth method decides how each workload proves its identity before OpenBao issues anything. For servers, OpenBao recommends AppRole, which uses a RoleID and a SecretID that the application presents at login. Kubernetes auth lets pods authenticate with their service account identity, JWT/OIDC lets workloads that hold identity tokens from your provider sign in, and TLS certificate auth lets clients authenticate with a certificate. OpenBao recommends Userpass for developer machines, so people working locally use a different path from servers. For each application, the question is which method its workload can present without storing a secret. AppRole still requires a SecretID to reach the server, so the team must design a delivery path, such as a wrapped or orchestrator-injected value, and confirm that it works in its environment.
OpenBao cannot find hard-coded secrets in your code on its own. It manages only the credentials that are enrolled with it. Before any cutover, the team must search source repositories, CI/CD variables, container images, Helm values, deployment scripts, scheduled jobs and server configuration for passwords, API keys and tokens that applications use. Expect findings in version history as well as in current files, because a credential removed from the latest commit may still be valid. Each finding needs an owner, a classification as an application or system account, and a rotation that happens after the new retrieval path is live. The scanning tools and rule sets are the team's choice, and someone who knows each application should triage the results.
Sequence the work one application at a time. Confirm that the application's database driver or client library can fetch a dynamic credential at runtime and reconnect when a lease expires, because a connection pool that keeps an old password will fail after revocation. Keep the legacy credential valid during cutover, then disable it once the new path is verified. Ask any implementation partner for a written inventory of hard-coded secrets, a per-application cutover plan and a list of the auth method assigned to each workload. Effort depends mainly on how many applications are involved, how many places each secret appears and how much application code must change to fetch credentials at runtime. Those drivers should be visible in the quote.
Keep evidence for the assessor. Record the inventory, the removal and rotation tickets, the auth method assigned to each workload, and the configuration that prevents static passwords from returning. Confirm with your Qualified Security Assessor or internal assessor how they will test 8.6.2 in your environment, because OpenBao's configuration alone will not show that no hard-coded password remains. Repeat the search after each release, since a new hard-coded value can appear in a pipeline change or an emergency hotfix.
Evidence an assessor will expect from OpenBao for PCI DSS key management
Assessors judge OpenBao against PCI DSS by reading records produced during normal operation. The six items below link policy, access, key lifecycle and logging, so a single change should leave a trail across all of them. Each card names what the record proves, where it is kept and who reviews it.
Policy definitions and version history
Policy files set which identities can read, create or rotate each key path. Keep the policy source in version control so every change has an author, a reviewer and a dated history showing when a grant was widened or removed. This supports the restriction of key access to the fewest custodians under Requirement 3.6.1. Kept in the Git repository with approval records, reviewed by the security lead. Confirm with your assessor whether pull request approvals satisfy their sampling. The assessor issues the ROC or AOC, and DeployOpen prepares the evidence.
Auth method and role configuration
Export the enabled auth methods, role definitions and the bindings that map each workload or person to a policy. The assessor uses this set to confirm that human and machine access follows documented roles and that administrative access is traceable to named identities. For AppRole, record how secret IDs are issued and how long they remain valid. Store dated exports with the change ticket that approved them and review them after each change. The assessor issues the ROC or AOC, and DeployOpen prepares the evidence.
Seal and unseal records
Record every seal and unseal event, the custodians who took part and where the unseal material is stored. This supports the split knowledge and dual control expectations in Requirement 3.7 and shows how the root protection depends on your chosen key store. Keep the ceremony log signed by the custodians present, in a restricted location controlled by your security team. Confirm with your assessor how custodian acknowledgment should be evidenced, and confirm which external key store options your OpenBao version supports. The assessor issues the ROC or AOC, and DeployOpen prepares the evidence.
Audit device logs
Enable at least one audit device so that authenticated requests and responses are logged. The log shows who accessed which key path and when, which is the core of the access trail for Requirement 3.6.1. Ship logs off the node to storage that cluster operators cannot silently edit, and document how long they are retained. Confirm the audit output format, field names and redaction behavior for your OpenBao version before writing parsing rules or retention queries, and test a sample event end to end. The assessor issues the ROC or AOC, and DeployOpen prepares the evidence.
Key rotation and revocation records
Keep a register of transit key versions, rotation dates, rewrap runs and revocations of tokens, leases and secrets. These records show that cryptoperiods are changed on the schedule your procedure sets and that compromised material is retired, which Requirement 3.7 addresses. Keep the command output for bulk revocation and lease revocation with the incident or change ticket that triggered it. Review the register with the key custodians each quarter or on the schedule your procedure defines. The assessor issues the ROC or AOC, and DeployOpen prepares the evidence.
Inventory of secrets moved from code
List each hard-coded password found in scripts, configuration files or custom source code, the system or application account it belonged to, the date it moved to OpenBao and the date the old value was changed. Requirement 8.6.2 has been required since 31 March 2025, so this inventory shows the prohibition is enforced in practice. Keep scanner output and remediation tickets beside it, and have the application owner sign off each entry. Confirm with your assessor how they want the code scanning and the inventory sampled. The assessor issues the ROC or AOC, and DeployOpen prepares the evidence.
Storage, high availability and migration choices that affect key custody
The storage backend and high availability design you choose determine where encrypted key material lives, who can operate it, and how hard it is to recover it. For a PCI DSS key management deployment, that choice belongs in the key custody design, not in the infrastructure backlog. OpenBao's documented storage backends include integrated storage (Raft), PostgreSQL, PebbleDB and in-memory. Integrated storage and PostgreSQL are the two officially supported high availability backends. The storage documentation describes PostgreSQL as easier to operate safely than Raft, which matters if your operations team has stronger database skills than Raft cluster skills.
Both backends follow the same high availability model. One active node holds a lock in the data store and serves writes, while standby nodes forward or redirect requests to the active node. Since OpenBao 2.5.0, Raft standbys can serve read-only operations, and v2.7.0 extended that capability to PostgreSQL. Read scaling is useful, but it changes which nodes handle traffic that may touch key metadata and policies. Confirm with your architects which read paths are acceptable on standbys, document the load balancer routing rules, and test failover with the same credentials and policies used in production.
If you are replacing an existing Vault deployment, the migration guide describes an in-place replacement of the Vault server process on all nodes, with configuration, endpoints and URLs unchanged. Three cautions apply to key custody. The guide states that the in-place replacement was tested only against Vault 1.14.1 community edition, not Vault Enterprise, so an enterprise cluster needs its own validation plan. Clusters bootstrapped before Vault 1.3 may need a rekey before the move. Because OpenBao stopped using mlock in 2.0.0, the disable_mlock setting must be removed from configuration. Treat each of these as a gate in the change plan, with evidence retained for your assessor.
Storage migration is a separate exercise from the Vault to OpenBao replacement. If you later move from Raft to PostgreSQL, or the reverse, the procedure, downtime window, and the verification of sealed and unsealed state, audit devices and policies all need to be planned. The migration documentation for storage backends should be read against your exact OpenBao version, and the upgrade notes for each minor line should be checked before any change. Ask for a written rollback procedure that covers unseal material and backup restoration, because a failed backend move without a tested rollback can leave key custody unclear during an incident.
For the compliance file, record the chosen backend, the high availability topology, the read-scaling settings, the migration evidence, and the decision rationale. PCI DSS requirement 3.6.1 expects key storage to be minimized and protected, and requirement 3.7 expects documented key management procedures. A storage design that is clear in an architecture record and tested in a change record is easier to explain to a Qualified Security Assessor than one that exists only in configuration files. Confirm with your assessor how they expect those records to be retained and which evidence they will sample.
What OpenBao for PCI DSS key management still needs from your team
OpenBao can enforce parts of key handling in software, such as encryption as a service, seal configuration and access policies. Requirements 3.6 and 3.7 also depend on written procedures, named people and decisions that stay with your organization, and an assessor will look for evidence of each one.
Custodian roles, dual control and acknowledgment
Requirements 3.7.6 and 3.7.8 need your organization to decide who holds each key component, how custodians are selected and how they formally acknowledge their responsibilities. Split knowledge means no single person can reconstruct a key, and dual control means two authorized people must act together for sensitive key operations. OpenBao policies can restrict these actions, but the custodian list, the acknowledgment wording and the rules for a custodian who leaves must be written and kept current.
Key generation, distribution and customer guidance
Requirement 3.7 covers how keys are generated, how they are distributed and how they are protected in transit and at rest. Your procedures must name the key types created, where generation happens, who may request a key and which approved channels carry key or unseal material out of the cluster. Where customers or partners hold keys or depend on keys you manage, requirement 3.7.9 also calls for written guidance on their responsibilities. Confirm with your assessor which parts of 3.7 your design covers in software and which need manual steps.
Cryptoperiod and compromise response
Requirements 3.7.4 and 3.7.5 require defined cryptoperiods, planned key changes and a response when a key is suspected or known to be compromised, including retirement of the affected key. OpenBao can rotate transit keys and revoke leases in bulk, which supports the technical side of a response. Your team still needs to set the cryptoperiod for each key type, decide who can trigger an emergency rotation and record every change. Test the runbook against a non-production cluster before an incident occurs.
HSM or equivalent for key protection
Requirement 3.6.1.2 allows a secret or private key to be stored encrypted under a separate key-encrypting key, inside a secure cryptographic device such as an HSM, or as at least two full-length components. OpenBao's seal and key-encrypting key design may cover some of these methods, so confirm the mapping with your assessor. If your team chooses an HSM or equivalent device, plan its integration, its custody model and its recovery path before the architecture is fixed.
Code review and secret inventory for 8.6.2
Requirement 8.6.2 prohibits hard-coded passwords in scripts, configuration files and custom source code for application and system accounts. It has been required since 31 March 2025. OpenBao can hold credentials that applications retrieve at runtime, but your team must first find the existing hard-coded values. Build an inventory of scripts, configuration files and repositories, run code review over custom source and move each credential into OpenBao before the old copy is removed.
Scope with payment brands and assessor
The PCI SSC publishes the standard but does not enforce it, so the payment brands decide which entities must validate and what their programs require. Ask your acquirer or the relevant brand which validation type applies, then agree with your Qualified Security Assessor or SAQ provider which systems fall inside the cardholder data environment and which keys and secrets are in scope. The OpenBao design depends on that boundary, so settle it before you build the cluster. Request the evidence list in writing before the assessment starts.
Which PCI DSS version and approach to document for key management
Document OpenBao key management controls against PCI DSS v4.0.1, which is the only active version of the standard. PCI DSS v4.0 was retired on 31 December 2024, and v3.2.1 was retired on 31 March 2024 before that. Any evidence that cites v3.2.1 numbering, such as older requirement IDs for key handling, will not match the assessor's current template. Map each OpenBao control you rely on to the v4.x requirement it supports, including 3.6.1, 3.6.1.2, the 3.7 sub-requirements and 8.6.2, and record the version on every control matrix you produce.
The PCI Security Standards Council ran a request for comments on PCI DSS v4.0.1 from 3 June 2026 to 20 July 2026 to begin the next iteration of the standard. As of October 2026, the Council had announced no release date for a new version. Do not plan a key management project around a successor version date that has not been published. Instead, assign an owner to watch the Council's announcements, and re-check the version and requirement numbering before each assessment cycle so that the documentation describes the standard the assessor will apply on the day of review.
Under the defined approach, you show that the requirement is met as written. For requirement 3.6.1.2, for example, the documentation must show that secret and private keys are stored encrypted under a separate key-encrypting key, inside a secure cryptographic device, or as at least two full-length key components or shares. If OpenBao transit encrypts the data-encrypting keys and the key-encrypting key is protected by an OpenBao seal, write down exactly which seal arrangement you use, where its unseal material is held and who can access it. Ask your assessor whether that arrangement satisfies the wording of the requirement before you rely on it.
Under the customized approach, you meet the stated objective of a requirement in a different way. The standard allows this for entities with mature security and risk management. The documentation therefore has to name the objective, describe the OpenBao design that meets it, record the risk analysis that supports the design, and state how the design is tested and monitored over time. Compensating controls are a different route. They are used when a requirement cannot be met as written because of a documented technical or business constraint, and they are documented as a fallback for that requirement. Keep the two in separate sections of your evidence so the assessor can see which route you chose for each control.
Confirm with your assessor which Self-Assessment Questionnaire or Report on Compliance applies to your entity, because the answer depends on your role and how you handle cardholder data. The questionnaire D for service providers is the form that contains the 3.6.1, 3.6.1.2 and 8.6.2 wording referenced here, but your assessor may direct you to a different form. Ask whether the assessor accepts a customized approach for the OpenBao design, what evidence format they expect, and which Attestation of Compliance will carry the result. A compliance certificate will not serve as validation, so plan the evidence for the attestation the assessor will sign.
What buyers ask before hiring help with OpenBao and PCI DSS
What drives the cost of OpenBao help for PCI DSS key management?
Scope and the number of key uses drive most of the cost, and a quote follows from the written scope. Scope covers which applications, pipelines, databases and payment flows call OpenBao and which keys each one needs. Every application that encrypts or decrypts cardholder-related data through OpenBao adds integration, testing and evidence work. Storage design also matters, because the storage backend, the high availability layout and the seal arrangement change both the build and the operating procedures. Migrating existing keys or removing hard-coded passwords adds discovery and cutover effort. Ask for a quote that separates one-time build work, documentation, and any recurring support or upgrades. DeployOpen does not publish a price list.
How long does an OpenBao PCI DSS key management project take?
DeployOpen does not publish a fixed timeline, and duration depends on the same factors as cost. The main timing drivers are how many keys and applications must move, whether a storage migration or rekey is needed, and how quickly your teams review designs and approve changes. Most engagements are fixed-scope, so the schedule appears in the written scope before work starts. If you are replacing an existing Vault cluster, the OpenBao migration guide describes in-place replacement of the server process on all nodes with configuration and endpoints unchanged. That guide was tested only against Vault 1.14.1 community edition, not Vault Enterprise, so your environment may need extra validation. Ask for milestones such as design sign-off, staging validation and production cutover.
What usually delays a PCI DSS key management project the most?
Open decisions about key inventory and ownership are the most common source of delay. Before the build starts, the team needs to know which keys exist, where they are stored, who holds them and which systems depend on them. Requirement 3.6.1 expects key access restricted to the fewest custodians and keys kept in the fewest possible locations and forms, so those decisions shape the design. Requirement 3.7 procedures also need named owners for generation, distribution, rotation, retirement and split knowledge or dual control. If those decisions are still open, design sign-off slips and each later phase moves with it. Settle the inventory and custodian roles before the build begins.
What must our team provide before an OpenBao engagement starts?
Your team provides access, decisions and source material. Expect to supply a current inventory of cryptographic keys and secrets, the applications and pipelines that use them, and the details of the cloud accounts, data centers or air-gapped networks where OpenBao will run. You also need named owners who can approve designs and changes. Bring your existing PCI DSS documentation, including the scope definition, data flow diagrams and key management procedures, so the work fits your assessment. Confirm which PCI DSS version your assessor will use and whether you intend to apply the defined or the customized approach. Access to test environments and an agreed change process are needed before build work begins. The written scope should list each item and its owner.
Can our internal team implement OpenBao for PCI DSS without outside help?
An internal team can deploy OpenBao from the open-source release, and the project documentation covers its core features. Whether one team can do the whole job alone depends on skills and capacity. The work spans platform operations, auth method and policy design, storage and high availability, application integration, key lifecycle design and written procedures that address PCI DSS requirements 3.6, 3.7 and 8.6.2. Documentation and evidence often take as much attention as the software configuration. Check whether your staff can write and maintain those procedures, run recovery tests and handle upgrades. An outside partner can take on defined parts of the work under a fixed scope while your staff keeps ownership of the decisions.
Does DeployOpen certify that our OpenBao setup is PCI DSS compliant?
No. DeployOpen does not issue audit reports, attestations or certifications. It prepares systems, controls and evidence for compliance assessments, and the assessment itself is carried out by your assessor. PCI DSS assessments are documented on official PCI SSC templates: a Report on Compliance completed by a Qualified Security Assessor, or a Self-Assessment Questionnaire, each with an Attestation of Compliance. Certificates are not recognized as validation. The PCI SSC does not enforce compliance, and the individual payment brands decide which entities must validate. Ask your acquirer or payment brand which validation route applies to you, and ask DeployOpen for the evidence list your assessor will need.
Which PCI DSS version should our OpenBao key management work target?
Target the version your assessor will use for your assessment, and confirm it in writing before design starts. PCI DSS v4.0.1 was published on 11 June 2024 as a limited revision of v4.0, and v4.0 was retired on 31 December 2024, leaving v4.0.1 as the only active version. The PCI SSC ran a request for comments on v4.0.1 from 3 June to 20 July 2026 to begin the next iteration, and as of October 2026 it had announced no release date for a new version. Requirement 8.6.2 became required on 31 March 2025, the same date on which the future-dated requirements of v4.0 took effect. Build the design so control evidence can be updated if a new version is published.
Which OpenBao features help with PCI DSS requirements 3.6 and 3.7?
OpenBao features can support parts of these requirements, but they do not satisfy them on their own. OpenBao stores key/value secrets encrypted before they are written to storage, and its encryption as a service lets applications use keys without handling key material directly. Auth methods, policies and leases help restrict who can use each key and revoke access when it is no longer needed. Requirement 3.6.1.2 calls for secret and private keys to be stored encrypted under a separate key-encrypting key, inside a secure cryptographic device, or as at least two full-length key components, so your seal and key protection choices need careful design. Confirm which seal and HSM options your OpenBao release supports. Generation, custodian acknowledgment and retirement procedures still have to be written and operated by your organization.
How DeployOpen scopes, configures and documents PCI DSS key management
DeployOpen plans and implements OpenBao inside infrastructure you control, then documents how its transit, seal and policy settings map to the PCI DSS requirements your assessor will test. We do not issue assessment reports or attestations; your QSA or the SAQ process you follow makes that determination, and we prepare the systems, configuration and evidence it will review.
How we scope
- Confirm which systems store, process or transmit cardholder data and which keys and secrets fall inside that boundary.
- Map each in-scope key type to requirements 3.6.1, 3.6.1.2 and 3.7, and identify where your procedures are still needed.
- Inventory hard-coded credentials against requirement 8.6.2 across scripts, configuration files and custom source code.
- Record the written scope, deliverables and timeline before work starts, since most engagements are fixed-scope.
How we build
- Deploy OpenBao in your environment with a storage backend and high availability design agreed during scoping.
- Configure transit encryption, seal configuration and policies so key access follows documented custodian roles.
- Replace hard-coded secrets with OpenBao-issued credentials, with auth methods chosen for servers and workloads.
- Test key rotation, access denial and audit logging against the controls the written scope names.
How we hand over
- Document the key lifecycle, custodian responsibilities and dual control steps your team must still run manually.
- Deliver a control-to-evidence map linking each in-scope requirement to configuration, logs and procedures.
- Provide runbooks for backup, restore, unseal and key recovery, tested before handover.
- Flag any requirement that depends on HSM, split knowledge or organizational policy for your own confirmation.
How we support
- Offer ongoing support, upgrades and testing as a retainer after the initial handover.
- Review OpenBao upgrades and PCI DSS changes against the documented controls and evidence map.
- Confirm with your assessor which evidence format and sampling they expect before the assessment window opens.
- Ask your QSA or acquirer whether the defined or customized approach applies to each requirement.

