Skip to content

Commit a6f11eb

Browse files
authored
Claims support (#54)
1 parent 21b69d3 commit a6f11eb

File tree

4 files changed

+8
-1
lines changed

4 files changed

+8
-1
lines changed

cmd/oauth2.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -72,6 +72,7 @@ func NewOAuth2Cmd() (cmd *OAuth2Cmd) {
7272
cmd.PersistentFlags().BoolVar(&cconfig.Insecure, "insecure", false, "allow insecure connections")
7373
cmd.PersistentFlags().BoolVarP(&silent, "silent", "s", false, "silent mode")
7474
cmd.PersistentFlags().BoolVar(&cconfig.DPoP, "dpop", false, "use DPoP")
75+
cmd.PersistentFlags().StringVar(&cconfig.Claims, "claims", "", "claims parameter")
7576

7677
return cmd
7778
}

docs/examples.md

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -23,7 +23,8 @@ oauth2c https://oauth2c.us.authz.cloudentity.io/oauth2c/demo \
2323
--response-mode query \
2424
--grant-type authorization_code \
2525
--auth-method client_secret_basic \
26-
--scopes openid,email,offline_access
26+
--scopes openid,offline_access \
27+
--claims '{"id_token":{"email": {"essential": true}}}'
2728
```
2829
</details>
2930

internal/oauth2/oauth2.go

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -85,6 +85,7 @@ type ClientConfig struct {
8585
TLSKey string
8686
TLSRootCA string
8787
DPoP bool
88+
Claims string
8889
}
8990

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

internal/oauth2/request.go

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,10 @@ func (r *Request) AuthorizeRequest(
7676
r.Form.Set("code_challenge_method", "S256")
7777
}
7878

79+
if cconfig.Claims != "" {
80+
r.Form.Set("claims", cconfig.Claims)
81+
}
82+
7983
if cconfig.RequestObject || cconfig.EncryptedRequestObject {
8084
claims := RequestObjectClaims(r.Form, sconfig, cconfig)
8185

0 commit comments

Comments
 (0)