Skip to main content

Standalone HTTP Request Signers for Amazon Web Services

Project description

AWS SDK Python Signers

AWS SDK Python Signers provides stand-alone signing functionality. This enables users to create standardized request signatures (currently only SigV4) and apply them to common HTTP utilities like AIOHTTP, Curl, Postman, Requests and urllib3.

This project is currently in an Alpha phase of development. There likely will be breakages and redesigns between minor patch versions as we collect user feedback. We strongly recommend pinning to a minor version and reviewing the changelog carefully before upgrading.

As you find issues, please feel free to open an issue on this GitHub repository and we're happy to discuss direction and design decisions, along with potential bug fixes.

Getting Started

Currently, the aws-sdk-signers module provides two high level signers, AsyncSigV4Signer and SigV4Signer.

Both of these signers takes three inputs to their primary sign method.

  • A SigV4SigningProperties object defining:
    • The service for the request,
    • The intended AWS region (e.g. us-west-2),
    • An optional date that will be auto-populated with the current time if not supplied,
    • An optional boolean, payload_signing_enabled to toggle payload signing. True by default.
  • An AWSRequest, similar to the AWSRequest object from boto3 or Requests.
  • An AWSCredentialIdentity, a dataclass holding standard AWS credential information.

The signers can be used independently to build signing integrations with your favorite HTTP client or with the example code provided in the /examples directory. Currently, we have high-level code for integration with AIOHTTP, Curl, and Requests. More integrations may be introduced as we receive interest. You can find sample code for getting started with our current offerings in the examples/README.md.

Security

See CONTRIBUTING for more information.

License

This project is licensed under the Apache-2.0 License.

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

aws_sdk_signers-0.0.2.tar.gz (43.7 kB view hashes)

Uploaded Source

Built Distribution

aws_sdk_signers-0.0.2-py3-none-any.whl (26.9 kB view hashes)

Uploaded Python 3

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