Python Client for Google Cloud Auth
Project description
This is a shared codebase for gcloud-aio-auth and gcloud-rest-auth
This library implements an IamClient class, which can be used to interact with GCP public keys and URL sign blobs.
It additionally implements a Token class, which is used for authorizing against Google Cloud. The other gcloud-aio-* package components accept a Token instance as an argument; you can define a single token for all of these components or define one for each. Each component corresponds to a given Google Cloud service and each service requires various “scopes”.
Installation
$ pip install --upgrade gcloud-{aio,rest}-auth
Usage
See our docs.
CLI
This project can also be used to help you manually authenticate to test GCP routes, eg. we can list our project’s uptime checks with a tool such as curl:
# using default application credentials
curl \
-H "Authorization: Bearer $(python3 -c 'from gcloud.rest.auth import Token; print(Token().get())')" \
"https://monitoring.googleapis.com/v3/projects/PROJECT_ID/uptimeCheckConfigs"
# using a service account (make sure to provide a scope!)
export GOOGLE_APPLICATION_CREDENTIALS=/path/to/service.json
curl \
-H "Authorization: Bearer $(python3 -c 'from gcloud.rest.auth import Token; print(Token(scopes=["'"https://www.googleapis.com/auth/cloud-platform"'"]).get())')" \
"https://monitoring.googleapis.com/v3/projects/PROJECT_ID/uptimeCheckConfigs"
# using legacy account credentials
export GOOGLE_APPLICATION_CREDENTIALS=~/.config/gcloud/legacy_credentials/EMAIL@DOMAIN.TLD/adc.json
curl \
-H "Authorization: Bearer $(python3 -c 'from gcloud.rest.auth import Token; print(Token().get())')" \
"https://monitoring.googleapis.com/v3/projects/PROJECT_ID/uptimeCheckConfigs"
Contributing
Please see our contributing guide.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Hashes for gcloud_aio_auth-4.2.3a0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 8b594cbf6e70bc851914570b531de110debdd5924554aa97b7d98b75cfdce8d1 |
|
MD5 | c38d77c59c42d5fecb3eba6f20e1fd43 |
|
BLAKE2b-256 | b8791ef447fc5ea0ce4fc79c9aba254f6f693463892caae02b7a4f51cd05d79b |