Skip to content
This repository was archived by the owner on Feb 7, 2022. It is now read-only.

Latest commit

History

31 Commits

Folders and files

NameName
Last commit message
Last commit date

Repository files navigation

Introduction

Web firewall middleware compatible with Express/Restify frameworks.

Install

npm install --save webfirewall

Config params example

The values on the params 'paths', 'ipAddresses', 'roles', 'origin' and 'users', can be regular expressions (RegExp). If strings, the comparison is done using the wildcard module.

constconfig={populationStrategy: 'restify',// supported values: express/restifydefaultAction: 'DROP',// supported values: ACCEPT/DROP getUserPhone: (req)=>Promise.resolve(req.user ? req.user.phone: null),// custom population strategy for user phone (optional)getUserEmail: (req)=>Promise.resolve(req.user ? req.user.email: null),// custom population strategy for user email (optional)getUserRoles: (req)=>Promise.resolve(req.user ? req.user.roles: null),// custom population strategy for user roles (optional)rules: [{methods: ['GET'],paths: ['/system/login'],ipAddresses: ['*'],// optionalroles: ['*'],// optionalorigin: ['*'],// optionalusers: ['*'],// optionalsecure: true,// optionalaction: 'ACCEPT',// supported values: ACCEPT/DROPhandler: (req)=>Promise.resolve(true)// optional},{methods: ['POST'],paths: ['/comments'],users: ['*'],secure: true,action: 'ACCEPT'},{methods: ['POST'],paths: ['/system/restart'],roles: ['ADMIN'],secure: true,action: 'ACCEPT'}]}

Usage

constrestify=require('restify');constserver=restify.createServer({name: 'yourapp.com',version: ['1.0.0']});constfirewall=require('webfirewall');server.use(firewall({populationStrategy: 'restify',defaultAction: 'ACCEPT',rules: []}));

JWT authentication

JSON Web Token authentication is a great candidate to be used in collaboration with this module. This module is fully integrated with the com.kyberneees.auth.jwt module.

About

Web firewall middleware compatible with Express/Restify frameworks.

Resources

Stars

1 star

Watchers

2 watching

Forks

Releases

Packages

Used by

Contributors

Languages