Files
teleport/lib/client/ssh
Chris Thachandrosstimothy 25931088b3 Add AuthCallback to SSH clients to perform in-band MFA (#65904)
* Add AuthCallback to SSH clients for in-band MFA.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Name return val. Rename to createPerformer. Add lint rule num.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Document why mfaPromptCount is 2. Use cmp to compare got/want conf.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Convert to table test for TestAuthCallback.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Replace terminal.WSConn with *terminal.Stream.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Update comment to reflect uniqueness. Normalize test indentation.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Clean nolint gosec, proposal comment and dead MFAServiceClient method.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Comments for AuthCallback more future proof. Restore MFACeremonyPerformer.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Reuse ClusterClient.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Increase timeout when MFA might happen.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Extend timeout for only the SSH handshake and preserve timeout for TCP dial.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Unexport timeout const.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

* Restore named error.

Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>

* Use AuthCallbackConfig. Remove helper and restore inlining.

Signed-off-by: Chris Thach <chris.thach@goteleport.com>

---------

Signed-off-by: Chris Thach <chris.thach@goteleport.com>
Co-authored-by: rosstimothy <39066650+rosstimothy@users.noreply.github.com>
2026-06-29 14:28:54 +00:00
..