Node.js package for HTTP basic and digest access authentication.
JavaScript
369
378 commits
updated Jan 21, 2026
Node.js package for HTTP basic and digest access authentication.
Via git (or downloaded tarball):
$ git clone git@github.com:gevorg/http-auth.git
Via npm:
$ npm install http-auth
// HTTP module
const http = require("http");
// Authentication module.
const auth = require("http-auth");
const basic = auth.basic({
realm: "Simon Area.",
file: __dirname + "/../data/users.htpasswd" // gevorg:gpass, Sarah:testpass
});
// Creating new HTTP server.
http
.createServer(
basic.check((req, res) => {
res.end(`Welcome to private area - ${req.user}!`);
})
)
.listen(1337, () => {
// Log URL.
console.log("Server running at http://127.0.0.1:1337/");
});
Please check examples directory for more.
realm - Authentication realm, by default it is Users.file - File where user details are stored.
file: () => 'adam:adam\neve:eve',algorithm - Algorithm that will be used only for digest access authentication.
qop - Quality of protection that is used only for digest access authentication.
msg401 - Message for failed authentication 401 page.msg407 - Message for failed authentication 407 page.contentType - Content type for failed authentication page.skipUser - Set this to true, if you don't want req.user to be filled with authentication info.proxy - Set this to true, if you want to use it with http-proxy.It uses mocha, so just run following command in package directory:
$ npm test
You can also use stackoverflow to ask questions using http-auth tag.
Please check this link for integration packages.
The MIT License (MIT)
Overall
Maintained
Code review
npm
Latest release
Releases this year
115 followers · starred Aug 2017
Node.js package for HTTP basic and digest access authentication.
JavaScript
369
378 commits
updated Jan 21, 2026
Node.js package for HTTP basic and digest access authentication.
Via git (or downloaded tarball):
$ git clone git@github.com:gevorg/http-auth.git
Via npm:
$ npm install http-auth
// HTTP module
const http = require("http");
// Authentication module.
const auth = require("http-auth");
const basic = auth.basic({
realm: "Simon Area.",
file: __dirname + "/../data/users.htpasswd" // gevorg:gpass, Sarah:testpass
});
// Creating new HTTP server.
http
.createServer(
basic.check((req, res) => {
res.end(`Welcome to private area - ${req.user}!`);
})
)
.listen(1337, () => {
// Log URL.
console.log("Server running at http://127.0.0.1:1337/");
});
Please check examples directory for more.
realm - Authentication realm, by default it is Users.file - File where user details are stored.
file: () => 'adam:adam\neve:eve',algorithm - Algorithm that will be used only for digest access authentication.
qop - Quality of protection that is used only for digest access authentication.
msg401 - Message for failed authentication 401 page.msg407 - Message for failed authentication 407 page.contentType - Content type for failed authentication page.skipUser - Set this to true, if you don't want req.user to be filled with authentication info.proxy - Set this to true, if you want to use it with http-proxy.It uses mocha, so just run following command in package directory:
$ npm test
You can also use stackoverflow to ask questions using http-auth tag.
Please check this link for integration packages.
The MIT License (MIT)
Overall
Maintained
Code review
npm
Latest release
Releases this year
115 followers · starred Aug 2017