Format:
Export:

Test cases(26 of 50)

Show
Priority
Category
0/26 completed0%

Complete the OpenBao prerequisites before running these tests. Go to prerequisites

Enable TLS end-to-end on OpenBao (OpenShift)
Manual init and unseal — loop script (Approach 1)
Seal migration — Shamir to Transit auto-unseal
Seal migration — Shamir to AWS KMS auto-unseal

Requires AWS KMS, IAM permissions, and credentials. Independent of transit auto-unseal (UNSEAL-002).

Enable and Use KV v2 Secrets Engine
KV v2 Metadata and Custom Metadata
KV Secret Rotation Pattern with CAS
Configure PKI Engine as Internal CA
Auto-Rotate TLS Certificates with cert-manager
Cross-Sign External CA with OpenBao PKI
Dynamic PostgreSQL Credentials
Dynamic MySQL/MariaDB Credentials
Kubernetes Auth Method
OIDC Authentication with Keycloak/DEX
Raft Cluster Operations
Raft Snapshot and Restore
Full OpenBao Backup Strategy
Disaster Recovery Restore
TLS Certificates for OpenShift Routes via PKI

This test case describes an end-to-end flow for provisioning TLS certificates for OpenShift Routes using the OpenBao PKI engine and cert-manager. Some steps may be duplicates of TC-OPENBAO-PKI-001.

Prerequisites checklist

Confirm these before running steps:

1Enable and configure the PKI engine with root CA
bao secrets enable -path=pki pki
bao secrets tune -max-lease-ttl=87600h pki
bao write -field=certificate pki/root/generate/internal common_name="OpenBao Root CA" ttl=87600h
2Enable the intermediate PKI engine and generate CSR
bao secrets enable -path=pki_int pki && bao secrets tune -max-lease-ttl=43800h pki_int
bao write -format=json pki_int/intermediate/generate/internal common_name="OpenBao Intermediate CA" | jq -r '.data.csr' > int.csr
3Sign the intermediate CSR with the root CA
bao write -format=json pki/root/sign-intermediate csr=@int.csr format=pem_bundle ttl=43800h | jq -r '.data.certificate' > int.crt
bao write pki_int/intermediate/set-signed certificate=@int.crt
4Create a PKI role for the application domain
bao write pki_int/roles/apps-example allowed_domains=<cluster domain> allow_subdomains=true max_ttl=720h
5Create a policy and K8s auth role for cert-manager
bao policy write cert-manager - <<'EOF'
path "pki_int/sign/apps-example" {
  capabilities = ["create", "update"]
}
path "pki_int/issue/apps-example" {
  capabilities = ["create"]
}
EOF
bao write auth/kubernetes/role/cert-manager bound_service_account_names=cert-manager bound_service_account_namespaces=cert-manager policies=cert-manager ttl=1h
6Create a ClusterIssuer pointing to OpenBao PKI
Manifest in Commands / YAML tab
Export the base64 string of the CA certificate
oc get secret openbao-ca-secret -n openbao -o jsonpath='{.data.ca\.crt}{"\n"}'
Use that string for the ClusterIssuer
7Create a Certificate CR for the Route
Manifest in Commands / YAML tab
Adjust the <cluster domain> to your cluster domain.
8Wait for the certificate to be issued
oc wait --for=condition=Ready certificate/myapp-tls -n myapp --timeout=120s
9Verify the TLS secret was created
oc get secret myapp-tls -n myapp
10Verify the content of the certificate
oc get secret myapp-tls -n myapp -o jsonpath='{.data.tls\.crt}' | base64 -d | openssl x509 -text -noout
Dynamic PostgreSQL Credentials for Applications
Multi-Tenant Secret Isolation
Encryption as a Service - Transit Encryption for Application Data
External Secrets Operator with OpenBao
CSI Secrets Store Driver with OpenBao
OpenBao Agent Sidecar Injector
Sealed Secrets Migration to OpenBao

Search test plan

Type at least 2 characters to search

Keyboard shortcuts

P
Go to prerequisites
T
Go to test cases
G
Go to glossary
D
Go to diagrams
J
Next card
K
Previous card
Enter
Open / close focused card
/
Open search
CtrlK
Open search modal
?
Show shortcuts
Esc
Close panel / blur search
/ open searchJ/K next / previous card? keyboard shortcutsEsc close panels