Skip to content

Commit fbb4184

Browse files
nateprewittSamRemis
authored andcommitted
Add basic README for aws-sdk-signers (smithy-lang#473)
1 parent 325a599 commit fbb4184

File tree

1 file changed

+31
-0
lines changed

1 file changed

+31
-0
lines changed

packages/aws-sdk-signers/README.md

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
## AWS SDK Signers for Python
2+
3+
AWS SDK Signers for Python provides stand-alone signing functionality. This enables users to
4+
create standardized request signatures (currently only SigV4) and apply them to
5+
common HTTP utilities like AIOHTTP, Curl, Postman, Requests and urllib3.
6+
7+
This project is currently in an **Alpha** phase of development. There likely
8+
will be breakages and redesigns between minor patch versions as we collect
9+
user feedback. We strongly recommend pinning to a minor version and reviewing
10+
the changelog carefully before upgrading.
11+
12+
## Getting Started
13+
14+
Currently, the `aws-sdk-signers` module provides two high level signers,
15+
`AsyncSigV4Signer` and `SigV4Signer`.
16+
17+
Both of these signers takes three inputs to their primary `sign` method.
18+
19+
* A [**SigV4SigningProperties**](https://github.com/smithy-lang/smithy-python/blob/3d205be8ece1c5f4c992a29ce9757c5562e59322/packages/aws-sdk-signers/src/aws_sdk_signers/signers.py#L43-L49) object defining:
20+
* The service for the request,
21+
* The intended AWS region (e.g. us-west-2),
22+
* An optional date that will be auto-populated with the current time if not supplied,
23+
* An optional boolean, payload_signing_enabled to toggle payload signing. True by default.
24+
* An optional boolean, content_checksum_enabled, to include the x-amz-content-sha256 header. True by default.
25+
* An optional boolean, uri_encode_path, to toggle double-encoding the URI path. True by default.
26+
* An [**AWSRequest**](https://github.com/smithy-lang/smithy-python/blob/3d205be8ece1c5f4c992a29ce9757c5562e59322/packages/aws-sdk-signers/src/aws_sdk_signers/_http.py#L335), similar to the [AWSRequest object](https://github.com/boto/botocore/blob/7d197f9e1fe903ba3badee62a1ecac916ba2cfb5/botocore/awsrequest.py#L433) from boto3 or the [Request object](https://requests.readthedocs.io/en/latest/api/#requests.Request) from Requests.
27+
* An [**AWSCredentialIdentity**](https://github.com/smithy-lang/smithy-python/blob/3d205be8ece1c5f4c992a29ce9757c5562e59322/packages/aws-sdk-signers/src/aws_sdk_signers/_identity.py#L11), a dataclass holding standard AWS credential information.
28+
29+
## License
30+
31+
This project is licensed under the Apache-2.0 License.

0 commit comments

Comments
 (0)