Serverless Whitelisting

homepage icon https://github.com/tho-asterist/serverless-whitelisting
Follow @tho-asterist

Tracked

NPM Downloads Last Month
3001
Issues
0
Stars
0
Forks
0
Watchers
0
Watch Star Fork Issue Download License NPM Build Status Coverage Status Contributors

Repo README Contents:

Serverless Whitelisting

Create a whitelist for IP addresses, CIDR for a serverless application, using serverless resource policies.

This plugin requires serverless 1.12 or higher.

Private and Public Stages

IP addresses, CIDR are whitelisted by stages and publicPaths.

How to Use

  1. Install in your serverless application: npm install --save serverless-whitelisting
  2. In your serverless.yml file, add the serverless-whitelisting to plugins, for example: ``` plugins:
    • serverless-whitelisting ```
  3. Within the provider block, add a stage variable:
    provider:
      stage: ${opt:stage, 'dev'}
    
  4. Within a custom block, add:
    custom:
      serverless-whitelisting:
        stage: ${self:provider.stage}
        privateStages:
          - staging
          - production
        publicStages:
          - test
        netblocks:
          - 212.204.161.60/24
          - 68.159.185.46
        publicPaths:
          - oauth
          - oauth-test
    

The netblocks object will contain the list of whitelisted IPs.

Full Example

# serverless.yml

service: my-service-name

plugins:
  - serverless-whitelisting

provider:
  stage: ${opt:stage, 'test'}

custom:
  serverless-whitelisting:
    stage: ${self:provider.stage}
    privateStages:
      - staging
      - production
    publicStages:
      - test
    netblocks:
      - 212.204.161.60/24
      - 68.159.185.46
    publicPaths:
      - oauth
      - oauth-test