AWS Prefix Lists for the Organization

This page summarizes the projects mentioned and recommended in the original post on dev.to

Our great sponsors
  • InfluxDB - Power Real-Time Data Analytics at Scale
  • WorkOS - The modern identity platform for B2B SaaS
  • SaaSHub - Software Alternatives and Reviews
  • update-aws-ip-ranges

    Lambda function that automatically create or update AWS resource with AWS service's IP ranges from the ip-ranges.json file. You can configure which service and region to get range. You can also configure to which resources you want to create or update with those ranges. It supports WAF IPSet and VPC Prefix List.

  • But why don't AWS do this for us? I can't answer that today; however, a good example of such automation exists in the AWS samples GitHub here.

  • serverless-application-model

    Discontinued AWS Serverless Application Model (SAM) is an open-source framework for building serverless applications [Moved to: https://github.com/aws/serverless-application-model] (by awslabs)

  • Parameters: AppConfigAppName: Type: String Description: AppConfig Application Name Default: aws-ip-ranges AppConfigAppEnvironmentName: Type: String Description: AppConfig Application Environment Name Default: dev AppConfigName: Type: String Description: AppConfig Name Default: services AppConfigLayerArn: Type: String Description: Retrieve AWS AppConfig Lambda extension arn from `https://docs.aws.amazon.com/appconfig/latest/userguide/appconfig-integration-lambda-extensions-versions.html#appconfig-integration-lambda-extensions-enabling-x86-64` Default: arn:aws:lambda:ap-southeast-2:080788657173:layer:AWS-AppConfig-Extension:91 AwsOrgArn: Type: String Description: The ARN of the AWS Organization used to share Prefix Lists Default: notset Resources: SAMConfigApplication: Type: AWS::AppConfig::Application Properties: Name: !Ref AppConfigAppName Environment: Type: AWS::AppConfig::Environment Properties: Name: !Ref AppConfigAppEnvironmentName ApplicationId: !Ref SAMConfigApplication SAMConfigConfigurationProfile: Type: AWS::AppConfig::ConfigurationProfile Properties: ApplicationId: !Ref SAMConfigApplication Name: !Ref AppConfigName Type: 'AWS.Freeform' LocationUri: 'hosted' SAMConfigDeploymentStrategy: Type: AWS::AppConfig::DeploymentStrategy Properties: Name: "SAMConfigDeploymentStrategy" Description: "A deployment strategy to deploy the config immediately" DeploymentDurationInMinutes: 0 FinalBakeTimeInMinutes: 0 GrowthFactor: 100 GrowthType: LINEAR ReplicateTo: NONE BasicHostedConfigurationVersion: Type: AWS::AppConfig::HostedConfigurationVersion Properties: ApplicationId: !Ref SAMConfigApplication ConfigurationProfileId: !Ref SAMConfigConfigurationProfile Description: 'AWS Service configuration for update-aws-ip-ranges' ContentType: 'application/json' Content: | { "Services": [ { "Name": "CODEBUILD", "Regions": [ "ap-southeast-2" ], "PrefixList": { "Enable": true, "Summarize": true }, "WafIPSet": { "Enable": true, "Summarize": true, "Scopes": [ "REGIONAL" ] } } ] } AppConfigDeployment: Type: AWS::AppConfig::Deployment Properties: ApplicationId: !Ref SAMConfigApplication ConfigurationProfileId: !Ref SAMConfigConfigurationProfile ConfigurationVersion: !Ref BasicHostedConfigurationVersion DeploymentStrategyId: !Ref SAMConfigDeploymentStrategy EnvironmentId: !Ref Environment LambdaUpdateIPRanges: Type: AWS::Serverless::Function # More info about Function Resource: https://github.com/awslabs/serverless-application-model/blob/master/versions/2016-10-31.md#awsserverlessfunction Properties: CodeUri: src/ Handler: app.lambda_handler Runtime: python3.9 Architectures: - x86_64 Environment: Variables: APP_CONFIG_APP_NAME: !Ref AppConfigAppName APP_CONFIG_APP_ENV_NAME: !Ref AppConfigAppEnvironmentName APP_CONFIG_NAME: !Ref AppConfigName AWS_ORG_ARN: !Ref AwsOrgArn LOG_LEVEL: INFO Layers: - !Ref AppConfigLayerArn

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
  • update-aws-ip-ranges

    Lambda function that creates or updates AWS resource with AWS service's IP ranges from the ip-ranges.json file. Configure which service and region. Configure to which resources you want to create or update with those ranges. It supports WAF IPSet and VPC Prefix List and sharing via Resource Access Manager. (by sjramblings)

  • As noted above, all code is available at https://github.com/sjramblings/update-aws-ip-ranges. I will also raise Pull Requests to backport some of this into the AWS Samples repo.

  • powertools-lambda-python

    A developer toolkit to implement Serverless best practices and increase developer velocity.

  • As the homepage displays, Lambda PowerTools is a suite of utilities for AWS Lambda functions to ease adopting best practices such as tracing, structured logging, custom metrics, idempotency, batching, and more.

NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a more popular project.

Suggest a related project

Related posts