Represent protocol within wanlib and update go-webauthn#29750
Represent protocol within wanlib and update go-webauthn#29750codingllama merged 12 commits intomasterfrom
protocol within wanlib and update go-webauthn#29750Conversation
9a232b3 to
3a769f4
Compare
tobiaszheller
left a comment
There was a problem hiding this comment.
lgtm, can you also check it with new and old version of server?
rosstimothy
left a comment
There was a problem hiding this comment.
Tested using pre- and post-update tsh binaries.
What was the version matrix that was tested? Did we test new/old tsh against new/old Auth?
The matrix goes somewhat like this:
Edit: tested "tsh new" + "server old". |
|
Oh, just to add a bit more detail, I tested both with carried over credentials (MFA, Passwordless and Touch ID) and then tested deleting/adding new credentials with the "new"+"new" combination, just to be sure. |
|
PTAL, test matrix complete. |
|
Friendly ping @rosstimothy ? |
3a769f4 to
8b2dae3
Compare
|
PTAL @rosstimothy ? |
* Represent the entirety of protocol within lib/auth/webauthn * Bump github.com/go-webauthn/webauthn to v0.6.2 * Fixes for v0.6.x: Challenge, RPOrigins * Bump github.com/go-webauthn/webauthn to v0.7.2 * Document new v0.7.2 fields * Bump github.com/go-webauthn/webauthn to v0.8.2 * Fixes for v0.8.x: UserEntity.ID * Bump github.com/go-webauthn/webauthn to v0.8.6 * Let bots update go-webauthn * Drop support for RP and User icon * Update generated protos * Add a brief godoc to cloned types
* Represent the entirety of protocol within lib/auth/webauthn * Bump github.com/go-webauthn/webauthn to v0.6.2 * Fixes for v0.6.x: Challenge, RPOrigins * Bump github.com/go-webauthn/webauthn to v0.7.2 * Document new v0.7.2 fields * Bump github.com/go-webauthn/webauthn to v0.8.2 * Fixes for v0.8.x: UserEntity.ID * Bump github.com/go-webauthn/webauthn to v0.8.6 * Let bots update go-webauthn * Drop support for RP and User icon * Update generated protos * Add a brief godoc to cloned types
* Represent `protocol` within `wanlib` and update go-webauthn (#29750) * Represent the entirety of protocol within lib/auth/webauthn * Bump github.com/go-webauthn/webauthn to v0.6.2 * Fixes for v0.6.x: Challenge, RPOrigins * Bump github.com/go-webauthn/webauthn to v0.7.2 * Document new v0.7.2 fields * Bump github.com/go-webauthn/webauthn to v0.8.2 * Fixes for v0.8.x: UserEntity.ID * Bump github.com/go-webauthn/webauthn to v0.8.6 * Let bots update go-webauthn * Drop support for RP and User icon * Update generated protos * Add a brief godoc to cloned types * Undo go-webauthn compatibility changes * Remove `lib/auth/webauthn` dependency from `webauthncli` (#30377) * Alias `api/types/webauthn` imports to `wanpb` * Use `webauthnpb` as the default package name * Move messages.go to webauthntypes/ * Move extensions.go to webauthntypes/ * Move proto.go to webauthntypes/ * nit: Use consistent license style * Use the `wantypes` alias for webauthntypes * Use the `wanwin` alias for webauthnwin * nit: Move winwebauthn.go to webauthnwin.go * Document package webauthntypes * Alias types required by e/ * Appease linter * Add all main types/method to compat.go * Reinstate spaces on proxy_test.go * Alias newly-added usages * chore: Drop the lib/auth/webauthn/httpserver test package (#30314)
* Represent `protocol` within `wanlib` and update go-webauthn (#29750) * Represent the entirety of protocol within lib/auth/webauthn * Bump github.com/go-webauthn/webauthn to v0.6.2 * Fixes for v0.6.x: Challenge, RPOrigins * Bump github.com/go-webauthn/webauthn to v0.7.2 * Document new v0.7.2 fields * Bump github.com/go-webauthn/webauthn to v0.8.2 * Fixes for v0.8.x: UserEntity.ID * Bump github.com/go-webauthn/webauthn to v0.8.6 * Let bots update go-webauthn * Drop support for RP and User icon * Update generated protos * Add a brief godoc to cloned types * Undo go-webauthn compatibility changes * Remove `lib/auth/webauthn` dependency from `webauthncli` (#30377) * Alias `api/types/webauthn` imports to `wanpb` * Use `webauthnpb` as the default package name * Move messages.go to webauthntypes/ * Move extensions.go to webauthntypes/ * Move proto.go to webauthntypes/ * nit: Use consistent license style * Use the `wantypes` alias for webauthntypes * Use the `wanwin` alias for webauthnwin * nit: Move winwebauthn.go to webauthnwin.go * Document package webauthntypes * Alias types required by e/ * Appease linter * Add all main types/method to compat.go * Reinstate spaces on proxy_test.go * Alias newly-added usages * chore: Drop the lib/auth/webauthn/httpserver test package (#30314) * Change httpfallback.go imports
Represent the entirety of go-webauthn's protocol within
lib/auth/webauthn, instead of only "leaf" types, so we are isolated from library JSON marshal changes (which there are plenty).This allows us to update go-webauthn without potential compatibility breakages between Teleport versions, pushing us all the way the latest dependency. (We don't care whether bytes are Standard- or RawURL-encoded, transport is settled for us.)
Tested using pre- and post-update
tshbinaries.