Skip to content

Conversation

glance-
Copy link
Contributor

@glance- glance- commented Aug 28, 2025

Name of feature:

Fix sshagentkms

Pain or issue this feature alleviates:

sshagentkms not working after "Implementation of the Prometheus endpoint (#1669)" (dd1ff9c).

Why is this important to the project (if not answered above):

Currently, sshagentkms doesn't work in anything after v0.25.2

Is there documentation on how to use this feature? If so, where?

Yes, this feature already exists, and this just makes it work again.

In what environments or workflows is this feature supported?

When one already has a ssh-certificate signing infrastructure based on ssh-agent and would like to expose that via step, or when one would like to use a HSM which exposes the access to the key via a ssh-agent interface and would like to expose that via step.

In what environments or workflows is this feature explicitly NOT supported (if any)?

Any old step versions between dd1ff9c and master.

Supporting links/other PRs/issues:

None. This is both bug report and PR with fix.

💔Thank you!

Back in "Implementation of the Prometheus endpoint (smallstep#1669)"
(dd1ff9c) the keyManager was wrapped in
another layer, which caused the key that ssh.Signer tries to use to be
a agent.Key, which ssh.Signer doesn't really know what to do with.

By inspecting the instrumentedKMSSigner to see if it wraps a
WrappedSSHSigner we can extract the original signer which works
with ssh.Signer and make sshagentkms work again.

Signed-off-by: Anton Lundin <[email protected]>
@github-actions github-actions bot added the needs triage Waiting for discussion / prioritization by team label Aug 28, 2025
@hslatman hslatman self-requested a review September 4, 2025 17:11
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs triage Waiting for discussion / prioritization by team

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant