Package oauth2client :: Module client
[hide private]
[frames] | no frames]

Module client

source code

An OAuth 2.0 client.

Tools for interacting with OAuth 2.0 protected resources.


Author: jcgregorio@google.com (Joe Gregorio)

Classes [hide private]
  Error
Base error for this module.
  FlowExchangeError
Error trying to exchange an authorization grant for an access token.
  AccessTokenRefreshError
Error trying to refresh an expired access token.
  UnknownClientSecretsFlowError
The client secrets file called for an unknown type of OAuth 2.0 flow.
  AccessTokenCredentialsError
Having only the access_token means no refresh is possible.
  VerifyJwtTokenError
Could on retrieve certificates for validation.
  MemoryCache
httplib2 Cache implementation which only caches locally.
  Credentials
Base class for all Credentials objects.
  Flow
Base class for all Flow objects.
  Storage
Base class for all Storage objects.
  OAuth2Credentials
Credentials object for OAuth 2.0.
  AccessTokenCredentials
Credentials object for OAuth 2.0.
  AssertionCredentials
Abstract Credentials object used for OAuth 2.0 assertion grants.
  SignedJwtAssertionCredentials
Credentials object used for OAuth 2.0 Signed JWT assertion grants.
  OAuth2WebServerFlow
Does the Web Server Flow for OAuth 2.0.
Functions [hide private]
 
_abstract() source code
 
verify_id_token(id_token, audience, http=None, cert_uri='https://www.googleapis.com/oauth2/v1/certs')
Verifies a signed JWT id_token.
source code
 
_urlsafe_b64decode(b64string) source code
 
_extract_id_token(id_token)
Extract the JSON payload from a JWT.
source code
 
flow_from_clientsecrets(filename, scope, message=None)
Create a Flow from a clientsecrets file.
source code
Variables [hide private]
  HAS_OPENSSL = True
  logger = logging.getLogger(__name__)
  EXPIRY_FORMAT = '%Y-%m-%dT%H:%M:%SZ'
  ID_TOKEN_VERIFICATON_CERTS = 'https://www.googleapis.com/oauth...
  OOB_CALLBACK_URN = 'urn:ietf:wg:oauth:2.0:oob'
  _cached_http = httplib2.Http(MemoryCache())
  __package__ = 'oauth2client'
Function Details [hide private]

verify_id_token(id_token, audience, http=None, cert_uri='https://www.googleapis.com/oauth2/v1/certs')

source code 
Verifies a signed JWT id_token.

Args:
  id_token: string, A Signed JWT.
  audience: string, The audience 'aud' that the token should be for.
  http: httplib2.Http, instance to use to make the HTTP request. Callers
    should supply an instance that has caching enabled.
  cert_uri: string, URI of the certificates in JSON format to
    verify the JWT against.

Returns:
  The deserialized JSON in the JWT.

Raises:
  oauth2client.crypt.AppIdentityError if the JWT fails to verify.

_extract_id_token(id_token)

source code 
Extract the JSON payload from a JWT.

Does the extraction w/o checking the signature.

Args:
  id_token: string, OAuth 2.0 id_token.

Returns:
  object, The deserialized JSON payload.

flow_from_clientsecrets(filename, scope, message=None)

source code 
Create a Flow from a clientsecrets file.

Will create the right kind of Flow based on the contents of the clientsecrets
file or will raise InvalidClientSecretsError for unknown types of Flows.

Args:
  filename: string, File name of client secrets.
  scope: string or list of strings, scope(s) to request.
  message: string, A friendly string to display to the user if the
    clientsecrets file is missing or invalid. If message is provided then
    sys.exit will be called in the case of an error. If message in not
    provided then clientsecrets.InvalidClientSecretsError will be raised.

Returns:
  A Flow object.

Raises:
  UnknownClientSecretsFlowError if the file describes an unknown kind of Flow.
  clientsecrets.InvalidClientSecretsError if the clientsecrets file is
    invalid.


Variables Details [hide private]

ID_TOKEN_VERIFICATON_CERTS

Value:
'https://www.googleapis.com/oauth2/v1/certs'