Nietzsche's Preposterous Moustache

    serverless-whitelisting

    0.0.6 • Public • Published

    Serverless Whitelisting

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

    This plugin requires serverless 3.18 or higher.

    Private and Public Stages

    IP addresses, CIDR are whitelisted by stages and publicPaths.

    • privateStages: Private to whitelisted CIDR and IP addresses. In the example below, staging and production stages are privateStages, so only those CIDR and IP addresses can access staging and production.
    • publicStages: No whitelisting necessary. These stages are public to all CIDR and IP addresses.
    • publicPaths: No whitelisting necessary regardless stages.

    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
    

    Install

    npm i serverless-whitelisting

    DownloadsWeekly Downloads

    464

    Version

    0.0.6

    License

    MIT

    Unpacked Size

    6.61 kB

    Total Files

    3

    Last publish

    Collaborators

    • tho-asterist