passport-headerapikey (2024)

passport-headerapikey (1)passport-headerapikey (2)

Passport strategy for authenticating with a apikey.

This module lets you authenticate using a apikey in your Node.jsapplications which is used to build rest apis. By plugging into Passport, apikey authentication can be easily andunobtrusively integrated into any application or framework that supportsConnect-style middleware, includingExpress.

Installation

$ npm install passport-headerapikey

Usage

Configure Strategy

The api key authentication strategy authenticates users using a apikey.The strategy requires a verify callback, which accepts thesecredentials and calls done providing a user.

passport.use(new HeaderAPIKeyStrategy( { header: 'Authorization', prefix: 'Api-Key ' }, false, function(apikey, done) { User.findOne({ apikey: apikey }, function (err, user) { if (err) { return done(err); } if (!user) { return done(null, false); } return done(null, user); }); }));

Authenticate Requests

Use passport.authenticate(), specifying the 'headerapikey' strategy, toauthenticate requests.

For example, as route middleware in an Expressapplication:

app.post('/api/authenticate', passport.authenticate('headerapikey', { session: false, failureRedirect: '/api/unauthorized' }), function(req, res) { res.json({ message: "Authenticated" }) });

API

Constructor
new HeaderAPIKeyStrategy(header, passReqToCallback, verify);

Arguments:

  • headerConfig (Object):
    • header (String): name of the header field to be used for api keys, default: X-Api-Key.
    • prefix (String): prefix to be used in content of the header, eg. Bearer adsfadsfa, default: empty. Attention: give it with blank if needed, eg. 'Bearer '.
  • passReqToCallback (Boolean): flags whether an express Request object is passed to the verify function.
  • verify (Function):
    • apiKey (String): parsed API key from from the request. Use it to determine, which user is using your endpoint.
    • verified (Function): Callback to be called when you have done the API key handling. Signature: verify(err, user, info) => void.
      • err (Error): return an Error if user is not verified, otherwise yield null here
      • user (Object, optional): only return user object if he is verified.
      • info(Object, optional): yield additional information to success or failure of user verification.
    • req (express.Request, optional): express Request object if passReqToCallback is set to true.

Examples

curl -v --header "Authorization: Api-Key asdasjsdgfjkjhg" http://127.0.0.1:3000/api/authenticate

Contributing

Clone the repo, then

npm installnpm run install-typings

and here we go.Develop your new features or fixes, test it using npm test and create a pull request.

Credits

npm install passport-headerapikey

  • 46 downloads in the last day
  • 259 downloads in the last week
  • 1,042 downloads in the last month

Supported by

passport-headerapikey (2024)
Top Articles
Thesaurus.com - The world's favorite online thesaurus!
Bitcoin billionaires turn to millionaires as cryptocurrency world gets cold feet
9.4: Resonance Lewis Structures
Promotional Code For Spades Royale
Northern Whooping Crane Festival highlights conservation and collaboration in Fort Smith, N.W.T. | CBC News
Hertz Car Rental Partnership | Uber
Merlot Aero Crew Portal
10000 Divided By 5
New Day Usa Blonde Spokeswoman 2022
Sunday World Northern Ireland
Myunlb
New Mexico Craigslist Cars And Trucks - By Owner
Newgate Honda
The Connecticut Daily Lottery Hub
Craigslist Motorcycles Orange County Ca
Busty Bruce Lee
Arboristsite Forum Chainsaw
Prosser Dam Fish Count
Craighead County Sheriff's Department
The Largest Banks - ​​How to Transfer Money With Only Card Number and CVV (2024)
Www.dunkinbaskinrunsonyou.con
Like Some Annoyed Drivers Wsj Crossword
All Obituaries | Verkuilen-Van Deurzen Family Funeral Home | Little Chute WI funeral home and cremation
Silky Jet Water Flosser
Cognitive Science Cornell
'Insidious: The Red Door': Release Date, Cast, Trailer, and What to Expect
Summoners War Update Notes
Viduthalai Movie Download
Valley Craigslist
Vadoc Gtlvisitme App
A Plus Nails Stewartville Mn
Craigslist Texas Killeen
Gasbuddy Lenoir Nc
Envy Nails Snoqualmie
Black Adam Showtimes Near Amc Deptford 8
oklahoma city community "puppies" - craigslist
Montrose Colorado Sheriff's Department
Buhsd Studentvue
Die Filmstarts-Kritik zu The Boogeyman
Stafford Rotoworld
Kazwire
Firestone Batteries Prices
Arigreyfr
Dragon Ball Super Super Hero 123Movies
Divinity: Original Sin II - How to Use the Conjurer Class
Celsius Claims Agent
Skyward Cahokia
A jovem que batizou lei após ser sequestrada por 'amigo virtual'
60 Days From August 16
Craigslist Marshfield Mo
Is My Sister Toxic Quiz
WHAT WE CAN DO | Arizona Tile
Latest Posts
Article information

Author: Jonah Leffler

Last Updated:

Views: 6052

Rating: 4.4 / 5 (65 voted)

Reviews: 88% of readers found this page helpful

Author information

Name: Jonah Leffler

Birthday: 1997-10-27

Address: 8987 Kieth Ports, Luettgenland, CT 54657-9808

Phone: +2611128251586

Job: Mining Supervisor

Hobby: Worldbuilding, Electronics, Amateur radio, Skiing, Cycling, Jogging, Taxidermy

Introduction: My name is Jonah Leffler, I am a determined, faithful, outstanding, inexpensive, cheerful, determined, smiling person who loves writing and wants to share my knowledge and understanding with you.