Interfaces for credentials.
Credentials
[source]¶
Bases: object
Base class for all credentials.
All credentials have a token
that is used for authentication and may also optionally set an expiry
to indicate when the token will no longer be valid.
Most credentials will be invalid
until refresh()
is called. Credentials can do this automatically before the first HTTP request in before_request()
.
Although the token and expiration will change as the credentials are refreshed
and used, credentials should be considered immutable. Various credentials will accept configuration such as private keys, scopes, and other options. These options are not changeable after construction. Some classes will provide mechanisms to copy the credentials with modifications such as ScopedCredentials.with_scopes()
.
token
= None¶
The bearer token that can be used in HTTP headers to make authenticated requests.
expiry
= None¶
When the token expires and is no longer valid. If this is None, the token is assumed to never expire.
expired
¶
Checks if the credentials are expired.
Note that credentials can be invalid but not expired because Credentials with expiry
set to None is considered to never expire.
valid
¶
Checks the validity of the credentials.
This is True if the credentials have a token
and the token is not expired
.
quota_project_id
¶
Project to use for quota and billing purposes.
refresh
(request)[source]¶
Refreshes the access token.
apply
(headers, token=None)[source]¶
Apply the token to the authentication header.
Parameters:before_request
(request, method, url, headers)[source]¶
Performs credential-specific before request logic.
Refreshes the credentials if necessary, then calls apply()
to apply the token to the authentication header.
CredentialsWithQuotaProject
[source]¶
Bases: google.auth.credentials.Credentials
Abstract base for credentials supporting with_quota_project
factory
with_quota_project
(quota_project_id)[source]¶
Returns a copy of these credentials with a modified quota project.
apply
(headers, token=None)¶
Apply the token to the authentication header.
Parameters:before_request
(request, method, url, headers)¶
Performs credential-specific before request logic.
Refreshes the credentials if necessary, then calls apply()
to apply the token to the authentication header.
expired
¶
Checks if the credentials are expired.
Note that credentials can be invalid but not expired because Credentials with expiry
set to None is considered to never expire.
quota_project_id
¶
Project to use for quota and billing purposes.
refresh
(request)¶
Refreshes the access token.
valid
¶
Checks the validity of the credentials.
This is True if the credentials have a token
and the token is not expired
.
AnonymousCredentials
[source]¶
Bases: google.auth.credentials.Credentials
Credentials that do not provide any authentication information.
These are useful in the case of services that support anonymous access or local service emulators that do not use credentials.
expired
¶
Returns False, anonymous credentials never expire.
valid
¶
Returns True, anonymous credentials are always valid.
refresh
(request)[source]¶
Raises ValueError`
, anonymous credentials cannot be refreshed.
apply
(headers, token=None)[source]¶
Anonymous credentials do nothing to the request.
The optional token
argument is not supported.
before_request
(request, method, url, headers)[source]¶
Anonymous credentials do nothing to the request.
quota_project_id
¶
Project to use for quota and billing purposes.
ReadOnlyScoped
[source]¶
Bases: object
Interface for credentials whose scopes can be queried.
OAuth 2.0-based credentials allow limiting access using scopes as described in RFC6749 Section 3.3. If a credential class implements this interface then the credentials either use scopes in their implementation.
Some credentials require scopes in order to obtain a token. You can check if scoping is necessary with requires_scopes
:
if credentials.requires_scopes: # Scoping is required. credentials = credentials.with_scopes(scopes=['one', 'two'])
Credentials that require scopes must either be constructed with scopes:
credentials = SomeScopedCredentials(scopes=['one', 'two'])
Or must copy an existing instance using with_scopes()
:
scoped_credentials = credentials.with_scopes(scopes=['one', 'two'])
Some credentials have scopes but do not allow or require scopes to be set, these credentials can be used as-is.
scopes
¶
the credentialsâ current set of scopes.
default_scopes
¶
the credentialsâ current set of default scopes.
requires_scopes
¶
True if these credentials require scopes to obtain an access token.
has_scopes
(scopes)[source]¶
Checks if the credentials have the given scopes.
Parameters: scopes (Sequence
[ str
]) â The list of scopes to check. Returns: True if the credentials have the given scopes. Return type: bool
Scoped
[source]¶
Bases: google.auth.credentials.ReadOnlyScoped
Interface for credentials whose scopes can be replaced while copying.
OAuth 2.0-based credentials allow limiting access using scopes as described in RFC6749 Section 3.3. If a credential class implements this interface then the credentials either use scopes in their implementation.
Some credentials require scopes in order to obtain a token. You can check if scoping is necessary with requires_scopes
:
if credentials.requires_scopes: # Scoping is required. credentials = credentials.create_scoped(['one', 'two'])
Credentials that require scopes must either be constructed with scopes:
credentials = SomeScopedCredentials(scopes=['one', 'two'])
Or must copy an existing instance using with_scopes()
:
scoped_credentials = credentials.with_scopes(scopes=['one', 'two'])
Some credentials have scopes but do not allow or require scopes to be set, these credentials can be used as-is.
with_scopes
(scopes, default_scopes=None)[source]¶
Create a copy of these credentials with the specified scopes.
Parameters: scopes (Sequence
[ str
]) â The list of scopes to attach to the current credentials. Raises: NotImplementedError
â If the credentialsâ scopes can not be changed. This can be avoided by checking requires_scopes
before calling this method.
default_scopes
¶
the credentialsâ current set of default scopes.
has_scopes
(scopes)¶
Checks if the credentials have the given scopes.
Parameters: scopes (Sequence
[ str
]) â The list of scopes to check. Returns: True if the credentials have the given scopes. Return type: bool
requires_scopes
¶
True if these credentials require scopes to obtain an access token.
scopes
¶
the credentialsâ current set of scopes.
with_scopes_if_required
(credentials, scopes, default_scopes=None)[source]¶
Creates a copy of the credentials with scopes if scoping is required.
This helper function is useful when you do not know (or care to know) the specific type of credentials you are using (such as when you use google.auth.default()
). This function will call Scoped.with_scopes()
if the credentials are scoped credentials and if the credentials require scoping. Otherwise, it will return the credentials as-is.
Signing
[source]¶
Bases: object
Interface for credentials that can cryptographically sign messages.
sign_bytes
(message)[source]¶
Signs the given message.
Parameters: message (bytes) â The message to sign. Returns: The messageâs cryptographic signature. Return type: bytessigner_email
¶
An email address that identifies the signer.
signer
¶
The signer used to sign bytes.
RetroSearch is an open source project built by @garambo | Open a GitHub Issue
Search and Browse the WWW like it's 1997 | Search results from DuckDuckGo
HTML:
3.2
| Encoding:
UTF-8
| Version:
0.7.4