google: add some metadata to GCE tokens to identify the token's source

This is required for the direct path feature, which only works with this
token source. It's not currently possible to determine the token source
type from the return value of FindDefaultCredentials.

Another option is to add another field to the Credentials struct, which
we could still do later, but direct path is currently pretty experimental
and whitelisted/opt-in, so I don't want to add to the public API surface
unnecessarily.

This CL functionally blocks
https://code-review.googlesource.com/c/google-api-go-client/+/40950

Change-Id: Ifb5fe9c6e5c6b33eebb87b45d3c70eebfca691b3
Reviewed-on: https://go-review.googlesource.com/c/oauth2/+/175877
Reviewed-by: Chris Broadfoot <cbro@golang.org>
1 file changed
tree: af494a36801a8feaa27544b280b3f56ec5c217c6
  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. example_test.go
  40. go.mod
  41. go.sum
  42. LICENSE
  43. oauth2.go
  44. oauth2_test.go
  45. README.md
  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.