Skip to content

Commit 98e2f21

Browse files
committed
add authentication_code param for passwordless authentication
1 parent 5768bf0 commit 98e2f21

File tree

4 files changed

+11
-0
lines changed

4 files changed

+11
-0
lines changed

README.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ The available flags are:
8989
--assertion string claims for jwt bearer assertion
9090
--audience strings requested audience
9191
--auth-method string token endpoint authentication method
92+
--authentication-code string authentication code used for passwordless authentication: https://cloudentity.com/developers/app-dev-tutorials/identity-pools/add-passwordless-authentication/
9293
--authorization-endpoint string server's authorization endpoint
9394
--browser-timeout duration browser timeout (default 10m0s)
9495
--callback-tls-cert string path to callback tls cert pem file

cmd/oauth2.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -89,6 +89,7 @@ func NewOAuth2Cmd(version, commit, date string) (cmd *OAuth2Cmd) {
8989
cmd.PersistentFlags().StringVar(&cconfig.Purpose, "purpose", "", "string describing the purpose for obtaining End-User authorization")
9090
cmd.PersistentFlags().StringSliceVar(&cconfig.Prompt, "prompt", []string{}, "end-user authorization purpose")
9191
cmd.PersistentFlags().StringVar(&cconfig.MaxAge, "max-age", "", "maximum authentication age in seconds")
92+
cmd.PersistentFlags().StringVar(&cconfig.AuthenticationCode, "authentication-code", "", "authentication code used for passwordless authentication: https://cloudentity.com/developers/app-dev-tutorials/identity-pools/add-passwordless-authentication/")
9293

9394
cmd.PersistentFlags().StringVar(&sconfig.TokenEndpoint, "token-endpoint", "", "server's token endpoint")
9495
cmd.PersistentFlags().StringVar(&sconfig.AuthorizationEndpoint, "authorization-endpoint", "", "server's authorization endpoint")

internal/oauth2/oauth2.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,7 @@ type ClientConfig struct {
9494
Purpose string
9595
Prompt []string
9696
MaxAge string
97+
AuthenticationCode string
9798
}
9899

99100
func RequestAuthorization(cconfig ClientConfig, sconfig ServerConfig, hc *http.Client) (r Request, codeVerifier string, err error) {

internal/oauth2/request.go

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -69,6 +69,10 @@ func (r *Request) AuthorizeRequest(
6969
r.Form.Set("max_age", cconfig.MaxAge)
7070
}
7171

72+
if len(cconfig.AuthenticationCode) > 0 {
73+
r.Form.Set("authentication_code", cconfig.AuthenticationCode)
74+
}
75+
7276
if cconfig.IDTokenHint != "" {
7377
r.Form.Set("id_token_hint", cconfig.IDTokenHint)
7478
}
@@ -156,6 +160,10 @@ func (r *Request) AuthorizeRequest(
156160
if len(cconfig.MaxAge) > 0 {
157161
r.Form.Set("max_age", cconfig.MaxAge)
158162
}
163+
164+
if len(cconfig.AuthenticationCode) > 0 {
165+
r.Form.Set("authentication_code", cconfig.AuthenticationCode)
166+
}
159167
}
160168

161169
if cconfig.DPoP {

0 commit comments

Comments
 (0)