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
.
ApiSession
s 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
.
AppSession
s 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
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 echostream_botocore-0.1.0.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 46b96cc940138d91d627ae18aa05ba4a1a6a8e55a9d132553f5fcc2294020b4e |
|
MD5 | 53ebf93cc3696f7448106acdd2d07130 |
|
BLAKE2b-256 | 24c4bcc8c43426badea6e70d800f8f94ad1a30660fcae45783a782d8fc9c215d |
Hashes for echostream_botocore-0.1.0-py3-none-any.whl
Algorithm | Hash digest | |
---|---|---|
SHA256 | 0d3e43afa71a048e9d1d12612a3ba3e8111ebb808afad45c853c0851f47a636f |
|
MD5 | 7fd696531bc8772f4ea3d9f7a5f9cee5 |
|
BLAKE2b-256 | 1c65ea014cb84820764445a45af27c78bba9c4e6c014f465c28c24f02fa45736 |