Renovo Solutions Private Lambda Micro REST API (proxy) Infrastructure Library
This infrastructure construct library implements a private lambda backed REST API on AWS API Gateway using proxy+.
Features
- Utilizes an internal Micro API project to provide an api via Lambda (with
proxy+) and API Gateway - Configures the required VPC endpoint attachment automatically
- Configures logging for API requests
- Configures the private gateways policy to restrict access to the VPC endpoint
- Exports the private DNS name to be used in the app
What this construct does not do
- Provide the VPC endpoint with private DNS enabled. The user utilizing this construct should create a single VPC endpoint with private DNS enabled and share it across all projects utilizing this consturct.
Private API Gateway traffic flow using VPC Endpoint
API gateways are a managed service that lives outside of our own VPC. Therefore when creating a private gateway this means that in order to access it additional configurations need to occur. Specifically a VPC endpoint must exist for traffic to route to the API Gateway. In addition the Lambda service itself also lives outside our VPC. This can seem a bit complex given that most of our Micro API projects then return to the VPC to route traffic to the database. To help visualize what this looks like here is a diagram of this traffic flow when routing through the api gateway for Micro APIs:
The old setup, using public traffic flow
We used to deploy API gateways as public endpoints. For the sake of comparison here is what the old traffic flow would have looked like:
References
Metadata
Release files for renovosolutions.aws-cdk-renovo-microapi 0.0.236
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | |
|---|---|---|---|
| renovosolutions_aws_cdk_renovo_microapi-0.0.236.tar.gz | 173.9 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| renovosolutions.aws_cdk_renovo_microapi-0.0.236-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 348.3 kB
Release files / renovosolutions_aws_cdk_renovo_microapi-0.0.236.tar.gz
| Download URL | renovosolutions_aws_cdk_renovo_microapi-0.0.236.tar.gz |
|---|---|
| Size | 173.9 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
c58ab299a4ff4b86d3bb7d6d5c022d8db5608878f0853b810c194025a11382ad
|
|
BLAKE2b-256 checksum How to use checksums |
bd065b359509be80f95862a48c8f6d529b2977cb6d763a01f1438ab0bfeeb900
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.12
|
Release files / renovosolutions.aws_cdk_renovo_microapi-0.0.236-py3-none-any.whl
| Download URL | renovosolutions.aws_cdk_renovo_microapi-0.0.236-py3-none-any.whl |
|---|---|
| Size | 174.4 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
a8355b739f0697b13729255d7faa57e7cb93b306c8d15b106b9b4a7413cc4328
|
|
BLAKE2b-256 checksum How to use checksums |
19eaf8200bba029972abb0aee1b3f9e5ae4d61b61f29c7895f9a088bd76eb154
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/6.1.0 CPython/3.10.12
|