cloudfront-signed-cookies
IF YOU'RE INTERESTED, go checkout my Medium blog post for a deeper dive on what this package is doing and some usage examples.
Table of Contents
Installation
pip install cloudfront-signed-cookies
Usage
from cloudfront_signed_cookies.signer import Signer
import os
def main():
"""
Method #1
Allow the signer to read your key from a file
"""
signer: Signer = Signer(
cloudfront_key_id="K36X4X2EO997HM",
private_key="./certs/private_key.pem",
)
"""
Method #2
Alternatively you can pass the raw contents of the key in from
something such as an environment variable, for container (Docker)
based usage
"""
signer: Signer = Signer(
cloudfront_key_id="K36X4X2EO997HM",
private_key=os.environ.get("PRIVATE_KEY")
)
cookies: dict = signer.generate_cookies(
Policy={
"Statement": [
{
"Resource": "https://domain.com/somefile.txt",
"Condition": {
"DateLessThan": {
"AWS:EpochTime": 1000
}
},
}
]
},
SecondsBeforeExpires=360,
)
print(cookies)
main()
"""
{'CloudFront-Policy': 'eyJTdGF0ZW1lbnQiOlt7IlJlc291cmNlIjoic29tZV91cmwiLCJDb25kaXRpb24iOnsiRGF0ZUxlc3NUaGFuIjp7IkFXUzpFcG9jaFRpbWUiOjEwMDB9fX1dfQ__', 'CloudFront-Signature': 'EZHxOEAhaKB3e-XUAGI5xJdDQaWKuW-h6m8c4UYcFBkaA3Fh4~DygZUcYCj-S-qtUdrl46i8vp4RuvtDz4sL9GEVGGDniZc8iDVDqHmfllMFK-90Ge-C9lQ-umsqm-IQzaFVDS3WMbi5iAsRDpdUGfAk43ergTMvjhd~xxpVCCHZxW8uBt11kAjEoqdbMm6eVC32F-QB2HJndN9mm4d~dizvW~XjVt69fA0YjY7-TiIVKAO5ajnDaBl17AsLolLfLYl6NGBJjadLjueMCWM2DP5lXYce8RF2qW02wg8bNmth3ykPoVHFT-tgIgetOcDFDCFSnTkXXhUy3mu2wPzdKQ__', 'CloudFront-Key-Pair-Id': K36X4X2EO997HM'}
"""
License
cloudfront-signed-cookies is distributed under the terms of the MIT license.
Metadata
Release files for cloudfront-signed-cookies 1.2
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 |
|---|---|---|---|---|
| cloudfront_signed_cookies-1.2.tar.gz | 8.6 kB | Without provenance | Details for cloudfront_signed_cookies-1.2.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| cloudfront_signed_cookies-1.2-py3-none-any.whl | Python 3 | none | any | Details for cloudfront_signed_cookies-1.2-py3-none-any.whl |
Total release size: 18.2 kB
Security for cloudfront-signed-cookies 1.2
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.