jwt-middleware-auth 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/index.js +42 -32
- package/package.json +9 -4
package/index.js
CHANGED
|
@@ -19,40 +19,50 @@ const verifyToken = (secret) => {
|
|
|
19
19
|
};
|
|
20
20
|
};
|
|
21
21
|
//for updatin User information
|
|
22
|
-
const
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
res.status(403).json('You Are Not Authorized');
|
|
32
|
-
}
|
|
33
|
-
});
|
|
22
|
+
const verifyTokenAndAuthorization = (secret) => {
|
|
23
|
+
return (req, res, next) => {
|
|
24
|
+
verifyToken(secret)(req, res, () => {
|
|
25
|
+
if (req.user.id === req.params.id || req.user.role === 'admin') {
|
|
26
|
+
return next();
|
|
27
|
+
}
|
|
28
|
+
return res.status(403).json({ message: 'You are not authorized' });
|
|
29
|
+
});
|
|
30
|
+
};
|
|
34
31
|
};
|
|
35
32
|
|
|
33
|
+
// for all access};
|
|
34
|
+
const verifyAdmin = (secret) => {
|
|
35
|
+
return (req, res, next) => {
|
|
36
|
+
verifyToken(secret)(req, res, () => {
|
|
37
|
+
if (req.user.isAdmin || req.user.isAdmin == true) {
|
|
38
|
+
return next();
|
|
39
|
+
}
|
|
40
|
+
return res.status(403).json({ message: 'You are not an admin' });
|
|
41
|
+
});
|
|
42
|
+
};
|
|
43
|
+
};
|
|
44
|
+
|
|
36
45
|
// for all access
|
|
37
|
-
const
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
};
|
|
46
|
+
const verifyManager = (secret) => {
|
|
47
|
+
return (req, res, next) => {
|
|
48
|
+
verifyToken(secret)(req, res, () => {
|
|
49
|
+
if (req.user.id == req.params.id || req.user.role == 'manager') {
|
|
50
|
+
return next();
|
|
51
|
+
}
|
|
52
|
+
return res.status(403).json({ message: 'You are not a manager' });
|
|
53
|
+
});
|
|
54
|
+
};
|
|
55
|
+
};
|
|
48
56
|
//for seller access
|
|
49
|
-
const verifySeller = (
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
};
|
|
56
|
-
|
|
57
|
+
const verifySeller = (secret) => {
|
|
58
|
+
return (req, res, next) => {
|
|
59
|
+
verifyToken(secret)(req, res, () => {
|
|
60
|
+
if (req.user.id == req.params.id || req.user.role == 'seller' || req.user.role == 'paymentManager') {
|
|
61
|
+
return next();
|
|
62
|
+
}
|
|
63
|
+
return res.status(403).json({ message: 'You are not authorized' });
|
|
64
|
+
});
|
|
65
|
+
};
|
|
66
|
+
};
|
|
57
67
|
|
|
58
|
-
module.exports = { verifyToken, verifySeller, verifyAdmin,
|
|
68
|
+
module.exports = { verifyToken, verifySeller, verifyAdmin, verifyTokenAndAuthorization, verifyManager };
|
package/package.json
CHANGED
|
@@ -1,14 +1,19 @@
|
|
|
1
1
|
{
|
|
2
|
-
"name": "jwt-middleware-auth",
|
|
3
|
-
"version": "1.
|
|
2
|
+
"name": "jwt-middleware-auth",
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "A flexible middleware library for JWT authentication in Express.js",
|
|
5
5
|
"main": "index.js",
|
|
6
6
|
"scripts": {
|
|
7
7
|
"test": "echo \"Error: no test specified\" && exit 1"
|
|
8
8
|
},
|
|
9
|
-
"keywords": [
|
|
9
|
+
"keywords": [
|
|
10
|
+
"jwt",
|
|
11
|
+
"express",
|
|
12
|
+
"middleware",
|
|
13
|
+
"auth"
|
|
14
|
+
],
|
|
10
15
|
"license": "MIT",
|
|
11
16
|
"dependencies": {
|
|
12
|
-
"jsonwebtoken": "^
|
|
17
|
+
"jsonwebtoken": "^9.0.3"
|
|
13
18
|
}
|
|
14
19
|
}
|