StackStorm / StackStorm/st2

Signed SSH Certificates Support

Open
#6,346 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Python
Stars
6.5k
Forks
787
PR merge metrics
No merged PRs in 30d

Description

I have a use-case where I need to use Signed SSH Certificates to log into remote servers to run remote-shell-cmd and remote-shell-script runners. The underlying paramiko library supports this by running the load_certificate function on a dedicated PKey.

I'd like to propose adding a runner_parameter certificate to the BaseParallelSSHRunner that can optionally be leveraged by the underlying *SSHClients to log into remote servers.

If the certificate is not present, just do the same as before. If the parameter exists, load it to the paramiko.pkey.PKey so that it can be used for the SSH connection.

Extra reading:

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start at the BaseParallelSSHRunner entry point and trace how its SSH clients create Paramiko PKey objects. Check Paramiko's PKey.load_certificate behavior and preserve the existing path when no certificate is supplied. Done means the optional certificate is usable by remote-shell-cmd and remote-shell-script runners without changing certificate-free connections.

Written by the indexing model from the issue text.

Assessment

Tech stack
python
Domain
devops
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.