feat: sidecar-local secret store and http_secret_providers config - #402
Open
nappa85 wants to merge 1 commit into
Open
feat: sidecar-local secret store and http_secret_providers config#402nappa85 wants to merge 1 commit into
nappa85 wants to merge 1 commit into
Conversation
nappa85
force-pushed
the
fir-429-v2/05-sidecar-rewrite-gateway
branch
2 times, most recently
from
August 1, 2026 10:21
63d03d4 to
bf9b333
Compare
nappa85
force-pushed
the
fir-429-v2/06-sidecar-store-config
branch
2 times, most recently
from
August 1, 2026 12:00
25ab430 to
a5e29dd
Compare
nappa85
force-pushed
the
fir-429-v2/05-sidecar-rewrite-gateway
branch
9 times, most recently
from
August 3, 2026 13:59
286e97a to
e2f4f85
Compare
nappa85
force-pushed
the
fir-429-v2/06-sidecar-store-config
branch
from
August 3, 2026 14:01
a5e29dd to
75ba54e
Compare
nappa85
force-pushed
the
fir-429-v2/05-sidecar-rewrite-gateway
branch
from
August 3, 2026 14:06
e2f4f85 to
97be10e
Compare
nappa85
force-pushed
the
fir-429-v2/06-sidecar-store-config
branch
3 times, most recently
from
August 3, 2026 14:22
463328a to
403886d
Compare
nappa85
force-pushed
the
fir-429-v2/05-sidecar-rewrite-gateway
branch
11 times, most recently
from
August 5, 2026 09:06
f59380c to
62e71ee
Compare
nappa85
force-pushed
the
fir-429-v2/05-sidecar-rewrite-gateway
branch
23 times, most recently
from
August 7, 2026 13:03
dca746f to
30c6238
Compare
nappa85
force-pushed
the
fir-429-v2/06-sidecar-store-config
branch
5 times, most recently
from
August 10, 2026 09:56
8854009 to
9c4fd2a
Compare
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Why
PR05 added the rewrite codec and gateway client as standalone pieces. This
PR adds the last two prerequisites before they can be wired into the
request pipeline (PR07): an in-memory placeholder↔secret dictionary scoped
to a single request/response cycle, and the
SidecarConfigfield thatlets an operator declare which HTTP vaults to intercept.
What Changed
crates/firma-sidecar/src/secret_store.rs(new):SidecarSecretStore,an in-memory dictionary built per-request from the
(placeholder, secret_bytes)pairs returned bysecret_gateway_client::resolve_batch(PR05), discarded afterforwarding — firma-run remains the sole persistent store. Uses
Aho-Corasick for scanning, mirroring
firma_run::secret::SecretStore'sdesign but living in the Sidecar crate to avoid a circular dependency.
SecretValuewraps its bytes inZeroizingso they're wiped on drop.crates/firma-sidecar/src/config.rs: addshttp_secret_providerstoSidecarConfig— the HTTP-vault counterpart to firma-run'ssecret_providers, declaring which hosts/response shapes to interceptand how to extract secrets from them (
IntegrationSpec::Httpfromfirma-secret-provider).crates/firma-sidecar/src/lib.rs: module wiring forsecret_store.Risks / Notes
RequestHandler—SidecarSecretStoreand the newconfig field are inert until PR07.
SecretValue's zeroize-on-drop matches the existing pattern infirma-run::secret::SecretValue; no new zeroization approachintroduced.
AI Assistance
Generated with AI (Claude Code); human-reviewed for correctness and scope.