mirror of
https://github.com/gravitational/teleport.git
synced 2026-11-02 14:59:53 +08:00
Follows up on #10466 by removing remaining U2F references, including proto/gRPC surface and the lib/auth/u2f package itself. #10375 * Remove U2F from lib/auth/ (1) * Remove U2F from lib/auth/ (2) * Remove U2F from lib/auth/ (3) * Remove U2F from lib/services/ * Remove U2F from tsh mfa add suggestions * Remove U2F protos * Update generated protos * Cleanup a few stragglers * Remove lib/auth/u2f package * Fix references to auth.MFAAuthenticateChallenge * Revert needless lib/auth/password.go change * Update e/ to ad8fd4a (U2F cleanup) * Fix stragglers from latest master rebase * Fix lint and compile failures
Webauthn httpserver
The httpserver package contains a toy Webauthn HTTPS server used to test web integration and the interplay between web-registered and tsh-registered devices.
Devices registered via either interface should be able to be used interchangeably (with the exception of Touch ID, which is always tied to a specific app).
This is meant for local testing and debugging only. Keep it far away from any production uses.
Why this exists?
- It is a simple way to test web integration
- It is a simple way to interact with Touch ID
- Device registration (currently) relies on a streaming RPC, which is difficult to interact with using pure Js
Note that browser Webauthn APIs need a secure context (or you have to disable a bunch of checks in your browser, YMMV).
Usage
- Start the Teleport service
- Start the httpserver
# Generate TLS certificates for the server
# (Eg, `cd; mkcert localhost 127.0.0.1 ::1`)
# Start the test server
# cd /path/to/teleport/repo
go run ./lib/auth/webauthn/httpserver/ \
-cert_file ~/localhost+2.pem \
-key_file ~/localhost+3-key.pem
- Navigate to https://localhost:8080/index.html
- ?
- Profit