OpenBao Rust Crate 0.5.0 #7
Closed
eldryoth
announced in
Announcements
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
-
OpenBao Rust SDK 0.5.0 Release Notes
Version
v0.5.0v0.5.0tag targetScope
0.4.0: client configuration, direct token auth,AppRole login, token lifecycle helpers, KV v1/v2, Transit, sys health/seal
status, loopback-only dev bootstrap, mount/auth mount management, response
wrapping, ACL policies, capabilities, audit devices, exact lease helpers,
plugin catalog helpers, environment-based client construction, Kubernetes
auth, TLS certificate auth, and PKI helpers.
0.5.0work currently implemented: public API dependency re-exports,prelude exports, safer constructors/defaults for request types, KV v2
optional-read ergonomics,
Sys::enable_kv2, Userpass auth helpers, andJWT/OIDC config/role helpers with JWT login, and optional byte-oriented
Transit helpers backed by
base64-ng, and database secrets helpers forconnection config, dynamic/static roles, credential reads, and rotations,
plus typed Transit signing options for RSA signatures and JWS-style ECDSA
marshaling.
0.5.0planned work: no functional scope remains for this release.approle,cert-auth,jwt-auth,database,kubernetes-auth,userpass,token,kv1,kv2,pki,transit,sys,rustls-tls.allow-sha1,native-tls,native-tls-acknowledged,transit-bytes.clippy on 1.90.0 plus feature checks through 1.96.0 before tagging.
v2.5.4on2026-05-30 during 0.5.0 development.
Security Changes
secret-bearing OpenBao responses are not copied into
Error::Decode.paths or parser details.
try_with_token.even when numeric loopback HTTP is enabled for non-sensitive development
probes.
reqwest::Clientpathoutside explicit debug-only numeric-loopback mock tests; the previous
cargo-test-binary path detection was removed.
SecretStringand redacted from debugoutput.
SecretString;JwtConfigdebug output redacts the OIDC client secret.JwtLeewayvalues so disabling JWT timevalidation requires an explicit
DisableTimeValidationvariant.during deserialization.
private keys, and lease IDs are handled as secret material and redacted from
debug output.
embed credentials.
connection detail maps are bounded during deserialization.
disproportionate allocations from untrusted path inputs.
base64-ng1.0.5 secret buffer APIs to encoderaw request bytes and return decoded response bytes in zeroizing buffers.
algorithm selection, JWS marshaling, and RSA-PSS salt length instead of
requiring raw option strings.
Security And Stability Gate
scripts/release_0_5_gate.shscripted run stopped at
cargo auditbecause the sandbox could not createthe advisory database lock, and the audit step was rerun directly with the
same lock/update access used by CI.
were remediated, current tracked files were checked for dev TLS private-key
material, and local
PENTEST.mdwas deleted before commit.cargo auditresult: passed locally on 2026-05-30.cargo deny checkresult: passed locally on 2026-05-30; duplicatetransitive dependency warnings remain informational under the current policy.
serde_coreandzmijcrate owners were verified withcargo owner --liston 2026-05-30; both resolve to David Tolnay / serde-rsownership.
pinned OpenBao dev image on port 9940.
cargo package --locked --allow-dirtypassedlocally on 2026-05-30.
Known Limitations
the current JWT/OIDC surface covers config, roles, list/delete, and direct
JWT login.
JWT/JWK dependency; use the Transit JWS marshaling helpers with the
application JWT library.
and root-only trust stores for private PKI.
This discussion was created from the release OpenBao Rust Crate 0.5.0.
Beta Was this translation helpful? Give feedback.
All reactions