diff options
| author | Adam Soltys <[email protected]> | 2021-07-13 11:20:23 -0700 |
|---|---|---|
| committer | Adam Soltys <[email protected]> | 2021-07-13 11:21:33 -0700 |
| commit | 6388e2b98843ad8ee5db855632334174efdaeedc (patch) | |
| tree | 701647d738d0b13cd41bdf9b75180e4923422d76 /lib/passport.js | |
| parent | fc3e802856d1209ee9e47e3f0a2a073c475bd7ae (diff) | |
| download | coinos-server-6388e2b98843ad8ee5db855632334174efdaeedc.tar.gz coinos-server-6388e2b98843ad8ee5db855632334174efdaeedc.zip | |
user admin field and auth middleware
Diffstat (limited to 'lib/passport.js')
| -rw-r--r-- | lib/passport.js | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/lib/passport.js b/lib/passport.js index 70e002b9..9b88f27c 100644 --- a/lib/passport.js +++ b/lib/passport.js @@ -43,4 +43,12 @@ optionalAuth = function(req, res, next) { })(req, res, next); }; +adminAuth = (req, res, next) => { + passport.authenticate("jwt", { session: false }, function(err, user, info) { + if (!(user && user.admin)) throw new Error("restricted"); + req.user = user; + next(); + })(req, res, next); +}; + app.use(passport.initialize()); |
