jwt: support PrivateClaims in Config

This would help add extra claim for certain 2-leg JWT exchange.

For example, Google service account key can be used to generate an OIDC token, but Google TokenURL requires "target_audience" claims set.

See this example usage:
https://gist.github.com/wlhee/64bc518190053e2122ca1909c2977c67#file-exmaple-go-L29

Change-Id: Ic10b006e45a34210634c5a76261a7e3706066965
GitHub-Last-Rev: 7a6e247e68f742129ac9a5d5a5f1a8ad428ccb09
GitHub-Pull-Request: golang/oauth2#374
Reviewed-on: https://go-review.googlesource.com/c/oauth2/+/166220
Reviewed-by: Brad Fitzpatrick <bradfitz@golang.org>
Run-TryBot: Brad Fitzpatrick <bradfitz@golang.org>
TryBot-Result: Gobot Gobot <gobot@golang.org>
2 files changed
tree: f87f848892a790a088dac3595937a91ce07a4dad
  1. amazon/
  2. bitbucket/
  3. cern/
  4. clientcredentials/
  5. facebook/
  6. fitbit/
  7. foursquare/
  8. github/
  9. gitlab/
  10. google/
  11. heroku/
  12. hipchat/
  13. instagram/
  14. internal/
  15. jira/
  16. jws/
  17. jwt/
  18. kakao/
  19. linkedin/
  20. mailchimp/
  21. mailru/
  22. mediamath/
  23. microsoft/
  24. nokiahealth/
  25. odnoklassniki/
  26. paypal/
  27. slack/
  28. spotify/
  29. stackoverflow/
  30. twitch/
  31. uber/
  32. vk/
  33. yahoo/
  34. yandex/
  35. .travis.yml
  36. AUTHORS
  37. CONTRIBUTING.md
  38. CONTRIBUTORS
  39. LICENSE
  40. README.md
  41. example_test.go
  42. go.mod
  43. go.sum
  44. oauth2.go
  45. oauth2_test.go
  46. token.go
  47. token_test.go
  48. transport.go
  49. transport_test.go
README.md

OAuth2 for Go

Build Status GoDoc

oauth2 package contains a client implementation for OAuth 2.0 spec.

Installation

go get golang.org/x/oauth2

Or you can manually git clone the repository to $(go env GOPATH)/src/golang.org/x/oauth2.

See godoc for further documentation and examples.

Policy for new packages

We no longer accept new provider-specific packages in this repo. For defining provider endpoints and provider-specific OAuth2 behavior, we encourage you to create packages elsewhere. We'll keep the existing packages for compatibility.

Report Issues / Send Patches

This repository uses Gerrit for code changes. To learn how to submit changes to this repository, see https://golang.org/doc/contribute.html.

The main issue tracker for the oauth2 repository is located at https://github.com/golang/oauth2/issues.