Skip to main content

Provides a botocore.session.Session implementation for accessing EchoStream Tenant resources

Project description

echostream-botocore

Provides a botocore.session.Session implementation for accessing EchoStream Tenant resources

This package provides two primary mechanisms to create a botocore.session.Session object in your EchoStream Tenant; ApiSession or AppSession. These session objects will automatically refresh both your Cognito credentials and your botocore credentials (using the EchoStream AppSync API).

Note: Version >= 0.1.0 requires Python 3.12

Installation

pip install echostream-botocore

Common parameters

Parameter ENV VAR Description Required
appsync_endpoint APPSYNC_ENDPOINT The EchoStream AppSync endpoint If cognito not provided
client_id CLIENT_ID The Cognito Client Id for the provided user_pool_id If cognito not provided
cognito N/A A pycognito.Cognito object If other parameters are not provided
duration N/A The length of time that the underlying credentials should be good for in seconds; shoudl be greater than 900 Defaults to 3600
password PASSWORD The password associated with username If cognito not provided
tenant TENANT The name of the EchoStream Tenant Yes
user_pool_id USER_POOL_ID The Cognito User Pool Id If cognito not provided
username USER_NAME The username of the ApiUser If cognito not provided

ApiSession

ApiSession objects are used to gain a Tenant-level botocore.session.Session in your Tenant using an EchoStream ApiUser.

ApiSessions may be created using a pycognito.Cognito instance or via a combination of environment variables and parameters. The environment variables or parameters are interchangeable. All parameters/environment variables are required if a Cognito object is not provided. If a Cognito object is provided, then all parameters/environment varaiables are ignored and it is assumed that the Cognito object references an ApiUser.

Usage (assuming correct ENV setup)

from boto3 import Session
from echostream_botocore import ApiSession

session = Session(
    botocore_session=ApiSession(),
    region_name="us-east-1"
)

ddb_client = session.client("dynamodb")
...

AppSession

AppSession objects are used to gain a App-level botocore.session.Session in your Tenant using an EchoStream AppUser.

AppSessions may be created using a pycognito.Cognito instance or via a combination of environment variables and parameters. The environment variables or parameters are interchangeable. All parameters/environment variables are required if a Cognito object is not provided. If a Cognito object is provided, then all parameters/environment varaiables are ignored and it is assumed that the Cognito object references an AppUser.

Additional Parameters

Parameter ENV VAR Description Required
app APP The name of the EchoStream App Yes

Usage (assuming correct ENV setup)

from boto3 import Session
from echostream_botocore import AppSession

session = Session(
    botocore_session=AppSession(),
    region_name="us-east-1"
)

ddb_client = session.client("dynamodb")
...

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

echostream_botocore-0.1.0.tar.gz (7.6 kB view details)

Uploaded Source

Built Distribution

echostream_botocore-0.1.0-py3-none-any.whl (8.0 kB view details)

Uploaded Python 3

File details

Details for the file echostream_botocore-0.1.0.tar.gz.

File metadata

  • Download URL: echostream_botocore-0.1.0.tar.gz
  • Upload date:
  • Size: 7.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.4

File hashes

Hashes for echostream_botocore-0.1.0.tar.gz
Algorithm Hash digest
SHA256 46b96cc940138d91d627ae18aa05ba4a1a6a8e55a9d132553f5fcc2294020b4e
MD5 53ebf93cc3696f7448106acdd2d07130
BLAKE2b-256 24c4bcc8c43426badea6e70d800f8f94ad1a30660fcae45783a782d8fc9c215d

See more details on using hashes here.

File details

Details for the file echostream_botocore-0.1.0-py3-none-any.whl.

File metadata

File hashes

Hashes for echostream_botocore-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 0d3e43afa71a048e9d1d12612a3ba3e8111ebb808afad45c853c0851f47a636f
MD5 7fd696531bc8772f4ea3d9f7a5f9cee5
BLAKE2b-256 1c65ea014cb84820764445a45af27c78bba9c4e6c014f465c28c24f02fa45736

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