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. .travis.yml
  2. AUTHORS
  3. CONTRIBUTING.md
  4. CONTRIBUTORS
  5. LICENSE
  6. README.md
  7. amazon/
  8. bitbucket/
  9. cern/
  10. clientcredentials/
  11. example_test.go
  12. facebook/
  13. fitbit/
  14. foursquare/
  15. github/
  16. gitlab/
  17. go.mod
  18. go.sum
  19. google/
  20. heroku/
  21. hipchat/
  22. instagram/
  23. internal/
  24. jira/
  25. jws/
  26. jwt/
  27. kakao/
  28. linkedin/
  29. mailchimp/
  30. mailru/
  31. mediamath/
  32. microsoft/
  33. nokiahealth/
  34. oauth2.go
  35. oauth2_test.go
  36. odnoklassniki/
  37. paypal/
  38. slack/
  39. spotify/
  40. stackoverflow/
  41. token.go
  42. token_test.go
  43. transport.go
  44. transport_test.go
  45. twitch/
  46. uber/
  47. vk/
  48. yahoo/
  49. yandex/
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.