google: base account credentials with file-sourcing

Implements the core functionality to allow 3rd party identities access to Google APIs.  Specifically, this PR implements the base account credential type and supports file-sourced credentials such as Kubernetes workloads.  Later updates will add support for URL-sourced credentials such as Microsoft Azure and support for AWS credentials.

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