ApplicationDefaultCredentials obtains the default credentials for authorizing a request to a Google service.
Application Default Credentials are described here: https://developers.google.com/accounts/docs/application-default-credentials
This class implements the search for the application default credentials as described in the link.
It provides three factory methods:
- #get returns the computed credentials object
- #getSubscriber returns an AuthTokenSubscriber built from the credentials object
- #getMiddleware returns an AuthTokenMiddleware built from the credentials object
This allows it to be used as follows with GuzzleHttp\Client:
use Google\Auth\ApplicationDefaultCredentials; use GuzzleHttp\Client; use GuzzleHttp\HandlerStack; $middleware = ApplicationDefaultCredentials::getMiddleware( 'https://www.googleapis.com/auth/taskqueue' ); $stack = HandlerStack::create(); $stack->push($middleware); $client = new Client([ 'handler' => $stack, 'base_uri' => 'https://www.googleapis.com/taskqueue/v1beta2/projects/', 'auth' => 'google_auth' // authorize all requests ]); $res = $client->get('myproject/taskqueues/myqueue'); | Methods | 
| public static getCredentials( $scope = NULL, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL, $quotaProject = NULL, $defaultScope = NULL, ?string $universeDomain = NULL, Psr\Log\LoggerInterface|false|?null $logger = NULL) Obtains the default FetchAuthTokenInterface implementation to use in this environment. 
 | 
| public static getDefaultLogger() : ?Psr\Log\LoggerInterface Returns a StdOutLogger instance 
 | 
| public static getIdTokenCredentials( $targetAudience, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) Obtains the default FetchAuthTokenInterface implementation to use in this environment, configured with a $targetAudience for fetching an ID token. 
 | 
| public static getIdTokenMiddleware( $targetAudience, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) Obtains an AuthTokenMiddleware which will fetch an ID token to use in the Authorization header. The middleware is configured with the default FetchAuthTokenInterface implementation to use in this environment. If supplied, $targetAudience is used to set the "aud" on the resulting ID token. 
 | 
| public static getMiddleware( $scope = NULL, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL, $quotaProject = NULL) Obtains an AuthTokenMiddleware that uses the default FetchAuthTokenInterface implementation to use in this environment. If supplied, $scope is used to in creating the credentials instance if this does not fallback to the compute engine defaults. 
 | 
| public static getProxyIdTokenMiddleware( $targetAudience, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) Obtains an ProxyAuthTokenMiddleware which will fetch an ID token to use in the Authorization header. The middleware is configured with the default FetchAuthTokenInterface implementation to use in this environment. If supplied, $targetAudience is used to set the "aud" on the resulting ID token. 
 | 
| public static getSubscriber( $scope = NULL, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) 
 | 
| Constants | 
| private Google | 
| Methods | 
| private static notFound() 
 | 
| private static onGce(?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) 
 | 
| Methods | 
| public static getCredentials( $scope = NULL, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL, $quotaProject = NULL, $defaultScope = NULL, ?string $universeDomain = NULL, Psr\Log\LoggerInterface|false|?null $logger = NULL) Obtains the default FetchAuthTokenInterface implementation to use in this environment. 
 | 
| public static getDefaultLogger() : ?Psr\Log\LoggerInterface Returns a StdOutLogger instance 
 | 
| public static getIdTokenCredentials( $targetAudience, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) Obtains the default FetchAuthTokenInterface implementation to use in this environment, configured with a $targetAudience for fetching an ID token. 
 | 
| public static getIdTokenMiddleware( $targetAudience, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) Obtains an AuthTokenMiddleware which will fetch an ID token to use in the Authorization header. The middleware is configured with the default FetchAuthTokenInterface implementation to use in this environment. If supplied, $targetAudience is used to set the "aud" on the resulting ID token. 
 | 
| public static getMiddleware( $scope = NULL, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL, $quotaProject = NULL) Obtains an AuthTokenMiddleware that uses the default FetchAuthTokenInterface implementation to use in this environment. If supplied, $scope is used to in creating the credentials instance if this does not fallback to the compute engine defaults. 
 | 
| public static getProxyIdTokenMiddleware( $targetAudience, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) Obtains an ProxyAuthTokenMiddleware which will fetch an ID token to use in the Authorization header. The middleware is configured with the default FetchAuthTokenInterface implementation to use in this environment. If supplied, $targetAudience is used to set the "aud" on the resulting ID token. 
 | 
| public static getSubscriber( $scope = NULL, ?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) 
 | 
| private static notFound() 
 | 
| private static onGce(?callable $httpHandler = NULL, ?array $cacheConfig = NULL, ?Psr\Cache\CacheItemPoolInterface $cache = NULL) 
 |