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")
...
Metadata
Release files for echostream-botocore 0.1.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| echostream_botocore-0.1.0.tar.gz | 7.6 kB | Without provenance | Details for echostream_botocore-0.1.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| echostream_botocore-0.1.0-py3-none-any.whl | Python 3 | none | any | Details for echostream_botocore-0.1.0-py3-none-any.whl |
Total release size: 15.6 kB
Release files / echostream_botocore-0.1.0.tar.gz
| Download URL | echostream_botocore-0.1.0.tar.gz |
|---|---|
| Size | 7.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
46b96cc940138d91d627ae18aa05ba4a1a6a8e55a9d132553f5fcc2294020b4e
|
|
BLAKE2b-256 checksum How to use checksums |
24c4bcc8c43426badea6e70d800f8f94ad1a30660fcae45783a782d8fc9c215d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.4
|
Release files / echostream_botocore-0.1.0-py3-none-any.whl
| Download URL | echostream_botocore-0.1.0-py3-none-any.whl |
|---|---|
| Size | 8.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0d3e43afa71a048e9d1d12612a3ba3e8111ebb808afad45c853c0851f47a636f
|
|
BLAKE2b-256 checksum How to use checksums |
1c65ea014cb84820764445a45af27c78bba9c4e6c014f465c28c24f02fa45736
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/5.1.1 CPython/3.12.4
|
Security for echostream-botocore 0.1.0
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
No provenance found
None of the files in this release were uploaded with provenance metadata.
A note on package security
PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.
To learn more about protecting yourself from malicious actors, visit our package security documentation.