Skip to main content

Implements means of authorization delegation on cloud-based resource providers.

Project description

CloudAuthz

Installation

Install the latest release from PyPi:

pip install cloudauthz

Example

CloudAuthz can authorize access to Amazon Web Services (AWS), Microsoft Azure, and Google Cloud Platform (GCP). An example for each provider is given in the following.

  • Amazon Web Services

    from cloudauthz import *
    
    cloudauthz = CloudAuthz()
    config = {
        "id_token": " ... ",
        "role_arn": " ... "
    }
    credentials = cloudauthz.authorize("aws", config)
    

    The credentials object is a dictionary as the following:

    {
      "SecretAccessKey": " ... ", 
      "SessionToken": " ... ", 
      "Expiration": "2019-05-28T02:12:45Z", 
      "AccessKeyId": " ... "
    }
    
  • Microsoft Azure

    from cloudauthz import *
    
    cloudauthz = CloudAuthz()
    config = {
        "tenant_id": " ... ",
        "client_id": " ... ",
        "client_secret": " ... "
    }
    credentials = cloudauthz.authorize("azure", config)
    

    The credentials object is a dictionary as the following:

    {
        "expiresIn": 3599,
        "_authority": "https://login.microsoftonline.com/TENANT_ID",
        "resource": "https://storage.azure.com/",
        "tokenType": "Bearer",
        "expiresOn": "2018-06-28 12:30:24.895661",
        "isMRRT": true,
        "_clientId": " ... ",
        "accessToken": " ... ",
    }
    
  • Google Cloud Platform

    from cloudauthz import *
    
    cloudauthz = CloudAuthz()
    config = {
        "project_id": "...",
        "private_key_id": "...",
        "private_key": "...",
        "client_email": "...",
        "client_id": "..."
    }
    credentials = cloudauthz.authorize("gcp", config)
    

    The credentials object is a dictionary containing the following keys:

    {
      "type": "service_account",
      "project_id": "...",
      "private_key_id": "...",
      "private_key": "...",
      "client_email": "...",
      "client_id": "...",
      "auth_uri": "https://accounts.google.com/o/oauth2/auth",
      "token_uri": "https://oauth2.googleapis.com/token",
      "auth_provider_x509_cert_url": "https://www.googleapis.com/oauth2/v1/certs",
      "client_x509_cert_url": "..."
    }
    

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

cloudauthz-0.6.0.tar.gz (6.2 kB view details)

Uploaded Source

Built Distribution

cloudauthz-0.6.0-py2.py3-none-any.whl (8.9 kB view details)

Uploaded Python 2 Python 3

File details

Details for the file cloudauthz-0.6.0.tar.gz.

File metadata

  • Download URL: cloudauthz-0.6.0.tar.gz
  • Upload date:
  • Size: 6.2 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/2.7.10

File hashes

Hashes for cloudauthz-0.6.0.tar.gz
Algorithm Hash digest
SHA256 7e62f3ae04b1842540ca484717d40bd9ec17c6764dd842c1f73f6290b9b54ac1
MD5 5d271d6ddc90d6be7526305bd19ebb6f
BLAKE2b-256 6546639ff537ab106ae3fd16a60b949d983acf78d8e065cb3454df340b4e1724

See more details on using hashes here.

File details

Details for the file cloudauthz-0.6.0-py2.py3-none-any.whl.

File metadata

  • Download URL: cloudauthz-0.6.0-py2.py3-none-any.whl
  • Upload date:
  • Size: 8.9 kB
  • Tags: Python 2, Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/1.13.0 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.0.1 requests-toolbelt/0.9.1 tqdm/4.32.1 CPython/2.7.10

File hashes

Hashes for cloudauthz-0.6.0-py2.py3-none-any.whl
Algorithm Hash digest
SHA256 e76e65c9fa3f3e1c63d44bd4488e0d75c0ede919870e0e9f08eae21f1316193b
MD5 f1674e9e22829b15988b19157d4b9c02
BLAKE2b-256 614f390c7c2d1b2777e8a4a70c295e911778b41a14f5936dec70ed5646d0c767

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page