1
0
mirror of https://git.tartarus.org/simon/putty.git synced 2025-01-09 01:18:00 +00:00
putty-source/contrib
Simon Tatham 15f097f399 New feature: k-i authentication helper plugins.
In recent months I've had two requests from different people to build
support into PuTTY for automatically handling complicated third-party
auth protocols layered on top of keyboard-interactive - the kind of
thing where you're asked to enter some auth response, and you have to
refer to some external source like a web server to find out what the
right response _is_, which is a pain to do by hand, so you'd prefer it
to be automated in the SSH client.

That seems like a reasonable thing for an end user to want, but I
didn't think it was a good idea to build support for specific
protocols of that kind directly into PuTTY, where there would no doubt
be an ever-lengthening list, and maintenance needed on all of them.

So instead, in collaboration with one of my correspondents, I've
designed and implemented a protocol to be spoken between PuTTY and a
plugin running as a subprocess. The plugin can opt to handle the
keyboard-interactive authentication loop on behalf of the user, in
which case PuTTY passes on all the INFO_REQUEST packets to it, and
lets it make up responses. It can also ask questions of the user if
necessary.

The protocol spec is provided in a documentation appendix. The entire
configuration for the end user consists of providing a full command
line to use as the subprocess.

In the contrib directory I've provided an example plugin written in
Python. It gives a set of fixed responses suitable for getting through
Uppity's made-up k-i system, because that was a reasonable thing I
already had lying around to test against. But it also provides example
code that someone else could pick up and insert their own live
response-provider into the middle of, assuming they were happy with it
being in Python.
2022-09-01 20:43:23 +01:00
..
cygtermd Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
authplugin-example.py New feature: k-i authentication helper plugins. 2022-09-01 20:43:23 +01:00
encodelib.py Migrate all Python scripts to Python 3. 2020-03-04 21:23:49 +00:00
gdb.py contrib/gdb.py: add a pretty-printer for ptrlen. 2022-05-02 11:07:28 +01:00
kh2reg.py kh2reg: stop using deprecated base64.decodestring. 2020-03-09 19:27:17 +00:00
logparse.pl Whitespace rationalisation of entire code base. 2019-09-08 20:29:21 +01:00
logrewrap.pl Replace all uses of Perl <> with <<>>. 2019-01-25 20:20:37 +00:00
make1305.py Migrate all Python scripts to Python 3. 2020-03-04 21:23:49 +00:00
nice-ibeam.cur Commit my replacement Windows I-beam mouse pointer. 2015-05-28 18:14:14 +01:00
plinkfs New script contrib/plinkfs. 2020-08-04 18:56:47 +01:00
proveprime.py New script contrib/proveprime.py. 2021-06-12 13:50:51 +01:00
samplekex.py Migrate all Python scripts to Python 3. 2020-03-04 21:23:49 +00:00