VLTCLT-62 Fix V4 signature using proxyPath instead of original path#463
Open
nicolas2bert wants to merge 2 commits intodevelopment/8.5from
Open
VLTCLT-62 Fix V4 signature using proxyPath instead of original path#463nicolas2bert wants to merge 2 commits intodevelopment/8.5from
nicolas2bert wants to merge 2 commits intodevelopment/8.5from
Conversation
Contributor
Hello nicolas2bert,My role is to assist you with the merge of this Available options
Available commands
Status report is not available. |
Contributor
Contributor
Waiting for approvalThe following approvals are needed before I can proceed with the merge:
|
dvasilas
approved these changes
Feb 16, 2026
| // be computed with the IAM canonical path '/' — which is what Vault | ||
| // verifies against. A mismatch causes InvalidAccessKeyId (VLTCLT-37). | ||
| describe('V4 signature with proxyPath must use IAM canonical path', () => { | ||
| const { createHmac, createHash } = require('crypto'); |
Contributor
There was a problem hiding this comment.
this should be required on top of the file
BourgoisMickael
approved these changes
Feb 16, 2026
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.
When a VaultClient has a proxyPath set (ex:
/_/backbeat/iam),_signRequest()signs the request withoptions.pathwhich includes theproxyPath, instead of the original path argument (/).Vault sets the canonical URI to
/(standard IAM logic), which lead to signature mismatch error = InvalidAccessKeyId.The bug was introduced in vaultclient 8.3.18 by commit 6fd9996 (VLTCLT-37: rely on aws signer to sign requests).
Every version from 8.3.18 onward is affected.
The old code:
passed the original path argument to the signing function.
The new code:
passes options directly to signer.sign(), where options.path has already been overwritten with the proxyPath.
The _signRequest method already receives path as its 4th parameter. it just doesn't use it.