An AWS CDK Construct that enforces encryption on an S3 bucket
Project description
A CDK L3 Construct for a Secure Bucket
This is an AWS CDK L3 Construct used to demonstrate the development and publishing process with the AWS CDK.
Please refer to the blog post here for more information.
Usage
Just import and use it.
# Example automatically generated without compilation. See https://github.com/aws/jsii/issues/826
import aws_cdk.core as cdk
from secure_bucket import SecureBucket
class SandboxCdkStack(cdk.Stack):
def __init__(self, scope, id, *, description=None, env=None, stackName=None, tags=None):
super().__init__(scope, id, description=description, env=env, stackName=stackName, tags=tags)
SecureBucket(self, "myBucket")
Encryption options
This is just a wrapper around an S3 Bucket and the props are shared.
However, you cannot supply an UNENCRYPTED
option for the encryption
property. If you do, or don't set it at all, it will use the BucketEncryption.KMS_MANAGED
value by default.
Integration Test
If you want to see full usage, you can run
$ cdk synth
to produce a basic stack with one SecureBucket resource
L2 Construct - Inheritance vs Composition
This construct is a wrapper around a standard L2 Bucket. However, because it wraps it, you can't just use it in all
the same places you could use a standard L2 bucket. You have to pass around the public field .bucket
from the construct.
This was done as it's more representative of the types of constructs I expect people to build (composed of multiple L2s).
However, if you were to actually want to use this construct in a production environment you'd
probably use the inheritance model instead. Checkout the feature/inheritance branch for that version.
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
Built Distribution
File details
Details for the file mbonig.secure-bucket-1.0.8.tar.gz
.
File metadata
- Download URL: mbonig.secure-bucket-1.0.8.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5c42740360465e5b29b80d9c23bd284c059755d02c8d72e3cc5b0ff9a46f968b |
|
MD5 | 3c85865a128d3c2114fe9f024b027244 |
|
BLAKE2b-256 | 6bfd8d336600fdb6927b5070ec9687b27b55a9ec2d7ecab0a3ccfba3d29e485c |
File details
Details for the file mbonig.secure_bucket-1.0.8-py3-none-any.whl
.
File metadata
- Download URL: mbonig.secure_bucket-1.0.8-py3-none-any.whl
- Upload date:
- Size: 13.0 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/3.1.1 pkginfo/1.5.0.1 requests/2.22.0 setuptools/41.6.0 requests-toolbelt/0.9.1 tqdm/4.41.1 CPython/3.7.5
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 74924177ae955f49d064db8a5a53fc904bca3a9c356340f5d563b50ec0963705 |
|
MD5 | 9dd8bdc8516fa97e7b49b6a647ac9783 |
|
BLAKE2b-256 | 87b333030c877f9604b6dcb2e59cbb7f25547ab1984a22a004dae9c5f033f50f |