feat: migrate signin/webauthn to go and add possibility to login with userHandle #587
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
PR Type
Enhancement, Tests
Description
Changes walkthrough 📝
9 files
server.gen.go
Add WebAuthn sign-in and verification endpoints
go/api/server.gen.go
types.gen.go
Define WebAuthn request and response types
go/api/types.gen.go
verification.
controller.go
Extend DBClient interface with GetSecurityKeys method
go/controller/controller.go
GetSecurityKeys
method toDBClient
interface.post_signin_webauthn.go
Implement PostSigninWebauthn handler
go/controller/post_signin_webauthn.go
PostSigninWebauthn
handler.credentials.
post_signin_webauthn_verify.go
Implement PostSigninWebauthnVerify handler
go/controller/post_signin_webauthn_verify.go
PostSigninWebauthnVerify
handler.post_#_webauthn.go
Update Post#Webauthn handler to include credentials
go/controller/post_#_webauthn.go
Post#Webauthn
handler to include credentials inWebauthnUser
.webauthn.go
Implement BeginLogin and FinishLogin for WebAuthn
go/controller/webauthn.go
BeginLogin
andFinishLogin
methods for WebAuthn.WebauthnUser
to include credentials.workflows.go
Add GetUserSecurityKeys workflow method
go/controller/workflows.go
GetUserSecurityKeys
workflow method.query.sql.go
Add GetSecurityKeys SQL query and method
go/sql/query.sql.go
GetSecurityKeys
SQL query and method.1 files
errors.go
Add error handling for WebAuthn endpoints
go/controller/errors.go
ErrSecurityKeyNotFound
.4 files
controller.go
Add mock methods for GetSecurityKeys
go/controller/mock/controller.go
GetSecurityKeys
.post_signin_webauthn_test.go
Add tests for PostSigninWebauthn handler
go/controller/post_signin_webauthn_test.go
PostSigninWebauthn
handler.post_signin_webauthn_verify_test.go
Add tests for PostSigninWebauthnVerify handler
go/controller/post_signin_webauthn_verify_test.go
PostSigninWebauthnVerify
handler.post_#_webauthn_test.go
Update tests for Post#Webauthn handler
go/controller/post_#_webauthn_test.go
Post#Webauthn
handler to include credentials.1 files
openapi.yaml
Add OpenAPI definitions for WebAuthn endpoints
go/api/openapi.yaml
endpoints.