verdaccio-okta-oauth 26.1.0 → 26.3.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/dist/index.js +26 -37
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
package/dist/index.js
CHANGED
|
@@ -1,12 +1,3 @@
|
|
|
1
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
2
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
3
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
4
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
5
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
6
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
7
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
8
|
-
});
|
|
9
|
-
};
|
|
10
1
|
/* eslint-disable @typescript-eslint/naming-convention */
|
|
11
2
|
import axios from 'axios';
|
|
12
3
|
import crypto from 'crypto';
|
|
@@ -57,25 +48,25 @@ export default class OktaOAuth {
|
|
|
57
48
|
enumerable: true,
|
|
58
49
|
configurable: true,
|
|
59
50
|
writable: true,
|
|
60
|
-
value: (accessToken) =>
|
|
51
|
+
value: async (accessToken) => {
|
|
61
52
|
const { issuer } = this;
|
|
62
|
-
return (
|
|
53
|
+
return (await axios.get(`${issuer}/oauth2/v1/userinfo`, {
|
|
63
54
|
headers: { Authorization: `Bearer ${accessToken}` },
|
|
64
55
|
})).data;
|
|
65
|
-
}
|
|
56
|
+
}
|
|
66
57
|
});
|
|
67
58
|
Object.defineProperty(this, "getAccessToken", {
|
|
68
59
|
enumerable: true,
|
|
69
60
|
configurable: true,
|
|
70
61
|
writable: true,
|
|
71
|
-
value: (refreshToken) =>
|
|
62
|
+
value: async (refreshToken) => {
|
|
72
63
|
const { clientId, issuer } = this;
|
|
73
|
-
return (
|
|
64
|
+
return (await axios.post(`${issuer}/oauth2/v1/token`, new URLSearchParams({
|
|
74
65
|
client_id: clientId,
|
|
75
66
|
grant_type: 'refresh_token',
|
|
76
67
|
refresh_token: refreshToken,
|
|
77
68
|
}).toString())).data.access_token;
|
|
78
|
-
}
|
|
69
|
+
}
|
|
79
70
|
});
|
|
80
71
|
if (!issuer) {
|
|
81
72
|
throw new Error('"issuer" should be defined!');
|
|
@@ -87,25 +78,23 @@ export default class OktaOAuth {
|
|
|
87
78
|
this.clientId = client_id;
|
|
88
79
|
this.cache = new Cache({ stdTTL: ttl !== null && ttl !== void 0 ? ttl : 60 * 60 * 24 });
|
|
89
80
|
this.logger = logger;
|
|
90
|
-
this.sign =
|
|
81
|
+
this.sign = { expiresIn: '7d', ...((_b = (_a = security === null || security === void 0 ? void 0 : security.web) === null || _a === void 0 ? void 0 : _a.sign) !== null && _b !== void 0 ? _b : {}) };
|
|
91
82
|
this.storage = storage !== null && storage !== void 0 ? storage : './storage';
|
|
92
83
|
}
|
|
93
|
-
authenticate(user, refreshToken, cb) {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
}
|
|
108
|
-
});
|
|
84
|
+
async authenticate(user, refreshToken, cb) {
|
|
85
|
+
if (this.cache.has(user)) {
|
|
86
|
+
cb(null, [user]);
|
|
87
|
+
return;
|
|
88
|
+
}
|
|
89
|
+
try {
|
|
90
|
+
const accessToken = await this.getAccessToken(refreshToken);
|
|
91
|
+
const userInfo = await this.getUserInfo(accessToken);
|
|
92
|
+
this.cache.set(user, userInfo);
|
|
93
|
+
cb(null, [user]);
|
|
94
|
+
}
|
|
95
|
+
catch (e) {
|
|
96
|
+
cb(null, false);
|
|
97
|
+
}
|
|
109
98
|
}
|
|
110
99
|
register_middlewares(app, auth) {
|
|
111
100
|
const { clientId, issuer } = this;
|
|
@@ -160,7 +149,7 @@ export default class OktaOAuth {
|
|
|
160
149
|
.replace(/=+$/, ''),
|
|
161
150
|
}).toString()}`);
|
|
162
151
|
});
|
|
163
|
-
app.use('/oauth/callback', (req, res) =>
|
|
152
|
+
app.use('/oauth/callback', async (req, res) => {
|
|
164
153
|
var _a;
|
|
165
154
|
const { code, state } = req.query;
|
|
166
155
|
if (typeof code !== 'string') {
|
|
@@ -178,7 +167,7 @@ export default class OktaOAuth {
|
|
|
178
167
|
}
|
|
179
168
|
let accessToken, refreshToken;
|
|
180
169
|
try {
|
|
181
|
-
({ access_token: accessToken, refresh_token: refreshToken } = (
|
|
170
|
+
({ access_token: accessToken, refresh_token: refreshToken } = (await axios.post(`${issuer}/oauth2/v1/token`, new URLSearchParams({
|
|
182
171
|
client_id: clientId,
|
|
183
172
|
grant_type: 'authorization_code',
|
|
184
173
|
redirect_uri: getCallbackUrl(req),
|
|
@@ -192,7 +181,7 @@ export default class OktaOAuth {
|
|
|
192
181
|
}
|
|
193
182
|
let userInfo;
|
|
194
183
|
try {
|
|
195
|
-
userInfo =
|
|
184
|
+
userInfo = await this.getUserInfo(accessToken);
|
|
196
185
|
}
|
|
197
186
|
catch (_c) {
|
|
198
187
|
this.logger.error('OktaOAuth Middleware: "userinfo" request failed!');
|
|
@@ -209,7 +198,7 @@ export default class OktaOAuth {
|
|
|
209
198
|
];
|
|
210
199
|
res.redirect(`http://localhost:8239?${new URLSearchParams({
|
|
211
200
|
username,
|
|
212
|
-
jwt_token:
|
|
201
|
+
jwt_token: await auth.jwtEncrypt({
|
|
213
202
|
name: username,
|
|
214
203
|
groups: [...groups, ...defaultLoggedUserRoles],
|
|
215
204
|
real_groups: groups,
|
|
@@ -219,7 +208,7 @@ export default class OktaOAuth {
|
|
|
219
208
|
.toString('base64'),
|
|
220
209
|
redirect_uri: getBaseUrl(req),
|
|
221
210
|
}).toString()}`);
|
|
222
|
-
})
|
|
211
|
+
});
|
|
223
212
|
}
|
|
224
213
|
}
|
|
225
214
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "verdaccio-okta-oauth",
|
|
3
|
-
"version": "26.
|
|
3
|
+
"version": "26.3.0",
|
|
4
4
|
"description": "",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"repository": {
|
|
@@ -34,5 +34,5 @@
|
|
|
34
34
|
"cli": {
|
|
35
35
|
"webpack": false
|
|
36
36
|
},
|
|
37
|
-
"gitHead": "
|
|
37
|
+
"gitHead": "f7879b7fbad9bf75b8659c3c5fc04d22c8c82b8e"
|
|
38
38
|
}
|