basic-authentication
v1.10.0
Published
http basic authentication
Downloads
4,960
Maintainers
Readme
basic-authentication
Basic authentication is method for a HTTP user agent to provide a user name and password.
Installation
Install through NPM
npm install basic-authentication
or
git clone git://github.com/hex7c0/basic-authentication.git
API
inside expressjs project like a middleware
var authentication = require('basic-authentication')();
var app = require('express')();
app.use(authentication);
inside expressjs project like a callback for certain route
var authentication = require('basic-authentication')();
var app = require('express')();
app.get('/', authentication, function(req, res) {
res.send('ok');
});
inside routing like a function
var authentication = require('basic-authentication')({functions: true});
var app = require('express')();
app.get('/', function(req, res) {
var user = authentication(req);
if (user == 'foo') {
res.send('ok');
} else {
res.send('ko');
}
});
authentication(options)
options
user
- String User for web basic access authentication (default "admin")password
- String Password for web basic access authentication (default "password")file
- String Path of htpasswd file (default "disabled")hash
- String Type of hash inside your htpasswd file (default "md5")agent
- String Browser User Agent for web authentication (default "all accepted")realm
- String Realm for web authentication (default "Authorization required")ending
- Boolean Flag for sendres.end
(response) to client after error or wrong password (not in "functions" mode) (default "true")functions
- Boolean Flag for using module like a function (default "false")legacy
- Boolean Flag for using module like a function that return an Object (default "false")suppress
- Boolean Suppress all routing error (default "false")
in functions
mode, it return a Base64 String; otherwise, if some errors occurred, return an Empty String
in legacy
mode, it return an Object {user, password}
; otherwise, if some errors occurred, return an Empty Object
Examples
Take a look at my examples