The Node.js module implements the main mechanisms of web authentication. At the moment webauth supports the following types of authentication:
- NTLM (The implementation of this type uses code written by SamDecrock (node-http-ntlm)
- Basic
This project is a Node.js module that you can add to your application via the npm
packet manager:
npm install webauth
To authenticate the request to the server, use the auth
method:
auth(reqOptions, credentials, callback, [isHttps=false], [res], [method])
reqOptions
- The request options object uses a signature identical to the Node.js http/https request options;credentials
- The object to which authentication parameters are passed:
{
username : 'Churkin.Andrey', // required field
password : 'myPass$1', // required field
domain : 'CORP', // is used in the NTLM auth
workstation: 'CHURKIN-LINUX' // is used in the NTLM auth
}
callback
- The function that will be called after the authentication;isHttps
- Settrue
to use https protocol (false
by default);res
- An optional parameter that you need to pass to the method if you have already received a response from the server with the 401 error;method
- The authentication type to be used. Possible values are:NTLM
,Basic
. If this value is not specified, it will be automatically selected based on the following priorities:- NTLM
- Basic
var webauth = require('webauth');
var reqOptions = {
host: 'localhost',
headers: {
'accept-encoding' : 'gzip,deflate,sdch'
}
},
credentials = {
username: 'Churkin.Andrey',
password: 'myPass$1',
domain: 'CORP',
workstation: 'CHURKIN-LINUX'
};
webauth.auth(reqOptions, credentials, function(res) {
console.log(res.statusCode);
});