google: Add support for CredentialsParams, Client ID json, and JWT Subject

*Add support for Google Developers Console client_credentials.json as a TokenSource.
*Add support for JWT Subject (for domain-wide delegation when using service account as credentials source.)
*Add support for non-default AuthURL and TokenURL for authorized user credentials source.

To support this change, two new exported functions FindDefaultCredentialsWithParams and CredentialsFromJSONWithParams are introduced.

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

OAuth2 for Go

Go Reference Build Status

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 pkg.go.dev for further documentation and examples.

Policy for new packages

We no longer accept new provider-specific packages in this repo if all they do is add a single endpoint variable. If you just want to add a single endpoint, add it to the pkg.go.dev/golang.org/x/oauth2/endpoints package.

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.