@axa-fr/react-oidc 6.6.9-alpha0 → 6.7.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/OidcServiceWorker.js +11 -40
- package/dist/User.d.ts +34 -4
- package/dist/User.d.ts.map +1 -1
- package/dist/User.js.map +1 -1
- package/dist/vanilla/oidc.d.ts.map +1 -1
- package/dist/vanilla/oidc.js +0 -46
- package/dist/vanilla/oidc.js.map +1 -1
- package/package.json +1 -1
- package/src/Profile.tsx +5 -1
- package/src/oidc/User.ts +36 -4
- package/src/oidc/vanilla/OidcServiceWorker.js +11 -40
- package/src/oidc/vanilla/oidc.ts +1 -51
|
@@ -13,13 +13,6 @@ const handleInstall = (event) => {
|
|
|
13
13
|
const handleActivate = (event) => {
|
|
14
14
|
console.log('[OidcServiceWorker] service worker activated ' + id);
|
|
15
15
|
event.waitUntil(self.clients.claim());
|
|
16
|
-
/*self.registration.unregister()
|
|
17
|
-
.then(function() {
|
|
18
|
-
return self.clients.matchAll();
|
|
19
|
-
})
|
|
20
|
-
.then(function(clients) {
|
|
21
|
-
clients.forEach(client => client.navigate(client.url))
|
|
22
|
-
});*/
|
|
23
16
|
};
|
|
24
17
|
|
|
25
18
|
let currentLoginCallbackConfigurationName = null;
|
|
@@ -138,21 +131,21 @@ function hideTokens(currentDatabaseElement) {
|
|
|
138
131
|
const accessTokenExpiresAt = (accessTokenPayload && accessTokenPayload.exp)? accessTokenPayload.exp : tokens.issued_at + tokens.expires_in;
|
|
139
132
|
const expiresAt = idTokenExpiresAt < accessTokenExpiresAt ? idTokenExpiresAt : accessTokenExpiresAt;
|
|
140
133
|
secureTokens.expiresAt = expiresAt;
|
|
141
|
-
|
|
134
|
+
|
|
142
135
|
tokens.expiresAt = expiresAt;
|
|
143
136
|
|
|
144
137
|
if(!isTokensOidcValid(tokens, currentDatabaseElement.nonce.nonce, currentDatabaseElement.oidcServerConfiguration)){
|
|
145
138
|
throw Error("Tokens are not OpenID valid");
|
|
146
139
|
}
|
|
147
|
-
|
|
140
|
+
|
|
148
141
|
// When refresh_token is not rotated we reuse ald refresh_token
|
|
149
142
|
if(currentDatabaseElement.tokens != null && "refresh_token" in currentDatabaseElement.tokens && !("refresh_token" in tokens)){
|
|
150
143
|
const refreshToken = currentDatabaseElement.tokens.refresh_token;
|
|
151
144
|
currentDatabaseElement.tokens = {...tokens, refresh_token : refreshToken};
|
|
152
145
|
} else{
|
|
153
|
-
currentDatabaseElement.tokens = tokens;
|
|
146
|
+
currentDatabaseElement.tokens = tokens;
|
|
154
147
|
}
|
|
155
|
-
|
|
148
|
+
|
|
156
149
|
currentDatabaseElement.status = "LOGGED_IN";
|
|
157
150
|
const body = JSON.stringify(secureTokens);
|
|
158
151
|
return new Response(body, response);
|
|
@@ -163,12 +156,8 @@ function hideTokens(currentDatabaseElement) {
|
|
|
163
156
|
const getCurrentDatabasesTokenEndpoint = (database, url) => {
|
|
164
157
|
const databases = [];
|
|
165
158
|
for (const [key, value] of Object.entries(database)) {
|
|
166
|
-
if(value ){
|
|
167
|
-
|
|
168
|
-
databases.push(value);
|
|
169
|
-
} else if(value.oidcServerConfiguration !=null && value.oidcServerConfiguration.revocationEndpoint && url.startsWith(value.oidcServerConfiguration.revocationEndpoint)) {
|
|
170
|
-
databases.push(value);
|
|
171
|
-
}
|
|
159
|
+
if(value && value.oidcServerConfiguration !=null && url.startsWith(value.oidcServerConfiguration.tokenEndpoint)){
|
|
160
|
+
databases.push(value);
|
|
172
161
|
}
|
|
173
162
|
}
|
|
174
163
|
return databases;
|
|
@@ -189,9 +178,6 @@ const getCurrentDatabaseDomain = (database, url) => {
|
|
|
189
178
|
if(oidcServerConfiguration.tokenEndpoint && url === oidcServerConfiguration.tokenEndpoint){
|
|
190
179
|
continue;
|
|
191
180
|
}
|
|
192
|
-
if(oidcServerConfiguration.revocationEndpoint && url === oidcServerConfiguration.revocationEndpoint){
|
|
193
|
-
continue;
|
|
194
|
-
}
|
|
195
181
|
|
|
196
182
|
const domainsToSendTokens = oidcServerConfiguration.userInfoEndpoint ? [
|
|
197
183
|
oidcServerConfiguration.userInfoEndpoint, ...trustedDomains[key]
|
|
@@ -253,7 +239,7 @@ const keepAliveAsync = async (event) => {
|
|
|
253
239
|
|
|
254
240
|
const handleFetch = async (event) => {
|
|
255
241
|
const originalRequest = event.request;
|
|
256
|
-
|
|
242
|
+
|
|
257
243
|
if(originalRequest.url.includes(keepAliveJsonFilename) ){
|
|
258
244
|
event.respondWith(keepAliveAsync(event));
|
|
259
245
|
return;
|
|
@@ -277,7 +263,6 @@ const handleFetch = async (event) => {
|
|
|
277
263
|
if(event.request.method !== "POST"){
|
|
278
264
|
return;
|
|
279
265
|
}
|
|
280
|
-
|
|
281
266
|
let currentDatabase = null;
|
|
282
267
|
const currentDatabases = getCurrentDatabasesTokenEndpoint(database, originalRequest.url);
|
|
283
268
|
const numberDatabase = currentDatabases.length;
|
|
@@ -285,7 +270,7 @@ const handleFetch = async (event) => {
|
|
|
285
270
|
const maPromesse = new Promise((resolve, reject) => {
|
|
286
271
|
const clonedRequest = originalRequest.clone();
|
|
287
272
|
const response = clonedRequest.text().then(actualBody => {
|
|
288
|
-
if(actualBody.includes(REFRESH_TOKEN)
|
|
273
|
+
if(actualBody.includes(REFRESH_TOKEN)) {
|
|
289
274
|
let newBody = actualBody;
|
|
290
275
|
for(let i= 0;i<numberDatabase;i++){
|
|
291
276
|
const currentDb = currentDatabases[i];
|
|
@@ -297,15 +282,10 @@ const handleFetch = async (event) => {
|
|
|
297
282
|
currentDatabase = currentDb;
|
|
298
283
|
break;
|
|
299
284
|
}
|
|
300
|
-
const keyAccessToken = ACCESS_TOKEN + '_'+ currentDb.configurationName;
|
|
301
|
-
if(actualBody.includes(keyAccessToken)) {
|
|
302
|
-
newBody = newBody.replace(keyAccessToken, encodeURIComponent(currentDb.tokens.access_token));
|
|
303
|
-
currentDatabase = currentDb;
|
|
304
|
-
break;
|
|
305
|
-
}
|
|
306
285
|
}
|
|
307
286
|
}
|
|
308
|
-
|
|
287
|
+
|
|
288
|
+
return fetch(originalRequest, {
|
|
309
289
|
body: newBody,
|
|
310
290
|
method: clonedRequest.method,
|
|
311
291
|
headers: {
|
|
@@ -317,14 +297,7 @@ const handleFetch = async (event) => {
|
|
|
317
297
|
referrer: clonedRequest.referrer,
|
|
318
298
|
credentials: clonedRequest.credentials,
|
|
319
299
|
integrity: clonedRequest.integrity
|
|
320
|
-
});
|
|
321
|
-
if(currentDatabase.oidcServerConfiguration !=null && currentDatabase.oidcServerConfiguration.revocationEndpoint && url.startsWith(currentDatabase.oidcServerConfiguration.revocationEndpoint)){
|
|
322
|
-
return fetchPromise.then(async response => {
|
|
323
|
-
const text = await response.text();
|
|
324
|
-
return new Response(text, response);
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
return fetchPromise.then(hideTokens(currentDatabase));
|
|
300
|
+
}).then(hideTokens(currentDatabase));
|
|
328
301
|
} else if(actualBody.includes("code_verifier=") && currentLoginCallbackConfigurationName){
|
|
329
302
|
currentDatabase = database[currentLoginCallbackConfigurationName];
|
|
330
303
|
currentLoginCallbackConfigurationName=null;
|
|
@@ -398,7 +371,6 @@ addEventListener('message', event => {
|
|
|
398
371
|
trustedDomains[configurationName] = [];
|
|
399
372
|
}
|
|
400
373
|
}
|
|
401
|
-
|
|
402
374
|
switch (data.type){
|
|
403
375
|
case "loadItems":
|
|
404
376
|
port.postMessage(database[configurationName].items);
|
|
@@ -414,7 +386,6 @@ addEventListener('message', event => {
|
|
|
414
386
|
const domains = trustedDomains[configurationName];
|
|
415
387
|
if (!domains.find(f => f === acceptAnyDomainToken)) {
|
|
416
388
|
checkDomain(domains, oidcServerConfiguration.tokenEndpoint);
|
|
417
|
-
checkDomain(domains, oidcServerConfiguration.revocationEndpoint);
|
|
418
389
|
checkDomain(domains, oidcServerConfiguration.userInfoEndpoint);
|
|
419
390
|
checkDomain(domains, oidcServerConfiguration.issuer);
|
|
420
391
|
}
|
package/dist/User.d.ts
CHANGED
|
@@ -4,12 +4,42 @@ export declare enum OidcUserStatus {
|
|
|
4
4
|
Loaded = "User loaded",
|
|
5
5
|
LoadingError = "Error loading user"
|
|
6
6
|
}
|
|
7
|
-
export declare type OidcUser = {
|
|
8
|
-
user:
|
|
7
|
+
export declare type OidcUser<T extends OidcUserInfo = OidcUserInfo> = {
|
|
8
|
+
user: T;
|
|
9
9
|
status: OidcUserStatus;
|
|
10
10
|
};
|
|
11
|
-
export
|
|
12
|
-
|
|
11
|
+
export interface OidcUserInfo {
|
|
12
|
+
sub: string;
|
|
13
|
+
name?: string;
|
|
14
|
+
given_name?: string;
|
|
15
|
+
family_name?: string;
|
|
16
|
+
middle_name?: string;
|
|
17
|
+
nickname?: string;
|
|
18
|
+
preferred_username?: string;
|
|
19
|
+
profile?: string;
|
|
20
|
+
picture?: string;
|
|
21
|
+
website?: string;
|
|
22
|
+
email?: string;
|
|
23
|
+
email_verified?: boolean;
|
|
24
|
+
gender?: string;
|
|
25
|
+
birthdate?: string;
|
|
26
|
+
zoneinfo?: string;
|
|
27
|
+
locale?: string;
|
|
28
|
+
phone_number?: string;
|
|
29
|
+
phone_number_verified?: boolean;
|
|
30
|
+
address?: OidcAddressClaim;
|
|
31
|
+
updated_at?: number;
|
|
32
|
+
}
|
|
33
|
+
export interface OidcAddressClaim {
|
|
34
|
+
formatted?: string;
|
|
35
|
+
street_address?: string;
|
|
36
|
+
locality?: string;
|
|
37
|
+
region?: string;
|
|
38
|
+
postal_code?: string;
|
|
39
|
+
country?: string;
|
|
40
|
+
}
|
|
41
|
+
export declare const useOidcUser: <T extends OidcUserInfo = OidcUserInfo>(configurationName?: string) => {
|
|
42
|
+
oidcUser: T;
|
|
13
43
|
oidcUserLoadingState: OidcUserStatus;
|
|
14
44
|
};
|
|
15
45
|
//# sourceMappingURL=User.d.ts.map
|
package/dist/User.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../src/oidc/User.ts"],"names":[],"mappings":"AAGA,oBAAY,cAAc;IACtB,eAAe,oBAAmB;IAClC,OAAO,iBAAiB;IACxB,MAAM,gBAAgB;IACtB,YAAY,uBAAuB;CACtC;AAED,oBAAY,QAAQ,GAAG;
|
|
1
|
+
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../src/oidc/User.ts"],"names":[],"mappings":"AAGA,oBAAY,cAAc;IACtB,eAAe,oBAAmB;IAClC,OAAO,iBAAiB;IACxB,MAAM,gBAAgB;IACtB,YAAY,uBAAuB;CACtC;AAED,oBAAY,QAAQ,CAAC,CAAC,SAAS,YAAY,GAAG,YAAY,IAAI;IAC1D,IAAI,EAAE,CAAC,CAAC;IACR,MAAM,EAAE,cAAc,CAAA;CACzB,CAAA;AAED,MAAM,WAAW,YAAY;IACzB,GAAG,EAAE,MAAM,CAAC;IACZ,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAC;IAChC,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,UAAU,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,gBAAgB;IAC7B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,eAAO,MAAM,WAAW;;;CAoBvB,CAAA"}
|
package/dist/User.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.js","sourceRoot":"","sources":["../src/oidc/User.ts"],"names":[],"mappings":";;;AAAA,iCAA2C;AAC3C,uDAAkD;AAElD,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,qDAAkC,CAAA;IAClC,0CAAwB,CAAA;IACxB,wCAAsB,CAAA;IACtB,qDAAmC,CAAA;AACvC,CAAC,EALW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAKzB;
|
|
1
|
+
{"version":3,"file":"User.js","sourceRoot":"","sources":["../src/oidc/User.ts"],"names":[],"mappings":";;;AAAA,iCAA2C;AAC3C,uDAAkD;AAElD,IAAY,cAKX;AALD,WAAY,cAAc;IACtB,qDAAkC,CAAA;IAClC,0CAAwB,CAAA;IACxB,wCAAsB,CAAA;IACtB,qDAAmC,CAAA;AACvC,CAAC,EALW,cAAc,GAAd,sBAAc,KAAd,sBAAc,QAKzB;AAuCM,MAAM,WAAW,GAAG,CAAwC,iBAAiB,GAAC,SAAS,EAAE,EAAE;IAC9F,MAAM,CAAC,QAAQ,EAAE,WAAW,CAAC,GAAG,IAAA,gBAAQ,EAAc,EAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,eAAe,EAAC,CAAC,CAAC;IAE5G,MAAM,IAAI,GAAG,yBAAW,CAAC,GAAG,CAAC,iBAAiB,CAAC,CAAC;IAChD,IAAA,iBAAS,EAAC,GAAG,EAAE;QACX,IAAI,SAAS,GAAG,IAAI,CAAC;QACrB,IAAG,IAAI,IAAI,IAAI,CAAC,MAAM,EAAE;YACpB,WAAW,iCAAK,QAAQ,KAAE,MAAM,EAAE,cAAc,CAAC,OAAO,IAAE,CAAC;YAC3D,IAAI,CAAC,aAAa,EAAE;iBACf,IAAI,CAAC,CAAC,IAAI,EAAE,EAAE;gBACX,IAAI,SAAS,EAAE;oBACX,WAAW,CAAC,EAAC,IAAI,EAAE,IAAI,EAAE,MAAM,EAAE,cAAc,CAAC,MAAM,EAAC,CAAC,CAAC;iBAC5D;YACL,CAAC,CAAC;iBACD,KAAK,CAAC,GAAG,EAAE,CAAC,WAAW,iCAAK,QAAQ,KAAE,MAAM,EAAE,cAAc,CAAC,YAAY,IAAE,CAAC,CAAC;SACrF;QACD,OAAQ,GAAG,EAAE,GAAG,SAAS,GAAG,KAAK,CAAA,CAAC,CAAC,CAAC;IACxC,CAAC,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,EAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,EAAE,oBAAoB,EAAE,QAAQ,CAAC,MAAM,EAAC,CAAA;AAC3E,CAAC,CAAA;AApBY,QAAA,WAAW,eAoBvB"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,iCAAiC,EAQpC,MAAM,iBAAiB,CAAC;AASzB,OAAO,EAAC,qCAAqC,EAAC,MAAM,yDAAyD,CAAC;AAC9G,OAAO,EAAoF,MAAM,EAAC,MAAM,eAAe,CAAC;
|
|
1
|
+
{"version":3,"file":"oidc.d.ts","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
|
package/dist/vanilla/oidc.js
CHANGED
|
@@ -22,37 +22,6 @@ const timer_1 = __importDefault(require("./timer"));
|
|
|
22
22
|
const checkSessionIFrame_1 = require("./checkSessionIFrame");
|
|
23
23
|
const route_utils_1 = require("./route-utils");
|
|
24
24
|
const parseTokens_1 = require("./parseTokens");
|
|
25
|
-
const TOKEN_TYPE = {
|
|
26
|
-
refresh_token: "refresh_token",
|
|
27
|
-
access_token: "access_token"
|
|
28
|
-
};
|
|
29
|
-
const performRevocationRequestAsync = (url, token, token_type = TOKEN_TYPE.refresh_token, client_id) => __awaiter(void 0, void 0, void 0, function* () {
|
|
30
|
-
const details = {
|
|
31
|
-
token: token,
|
|
32
|
-
token_type_hint: token_type,
|
|
33
|
-
client_id: client_id
|
|
34
|
-
};
|
|
35
|
-
let formBody = [];
|
|
36
|
-
for (const property in details) {
|
|
37
|
-
const encodedKey = encodeURIComponent(property);
|
|
38
|
-
const encodedValue = encodeURIComponent(details[property]);
|
|
39
|
-
formBody.push(`${encodedKey}=${encodedValue}`);
|
|
40
|
-
}
|
|
41
|
-
const formBodyString = formBody.join("&");
|
|
42
|
-
const response = yield internalFetch(url, {
|
|
43
|
-
method: 'POST',
|
|
44
|
-
headers: {
|
|
45
|
-
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
|
|
46
|
-
},
|
|
47
|
-
body: formBodyString,
|
|
48
|
-
});
|
|
49
|
-
if (response.status !== 200) {
|
|
50
|
-
return { success: false };
|
|
51
|
-
}
|
|
52
|
-
return {
|
|
53
|
-
success: true
|
|
54
|
-
};
|
|
55
|
-
});
|
|
56
25
|
const performTokenRequestAsync = (url, details, extras, oldTokens) => __awaiter(void 0, void 0, void 0, function* () {
|
|
57
26
|
for (let [key, value] of Object.entries(extras)) {
|
|
58
27
|
if (details[key] === undefined) {
|
|
@@ -1121,21 +1090,6 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
1121
1090
|
const url = isUri ? callbackPathOrUrl : window.location.origin + path;
|
|
1122
1091
|
// @ts-ignore
|
|
1123
1092
|
const idToken = this.tokens ? this.tokens.idToken : "";
|
|
1124
|
-
const revocationEndpoint = oidcServerConfiguration.revocationEndpoint;
|
|
1125
|
-
if (revocationEndpoint) {
|
|
1126
|
-
const promises = [];
|
|
1127
|
-
if (this.tokens.accessToken) {
|
|
1128
|
-
const revokeAccessTokenPromise = performRevocationRequestAsync(revocationEndpoint, this.tokens.accessToken, TOKEN_TYPE.refresh_token, configuration.client_id);
|
|
1129
|
-
promises.push(revokeAccessTokenPromise);
|
|
1130
|
-
}
|
|
1131
|
-
if (this.tokens.refreshToken) {
|
|
1132
|
-
const revokeRefreshTokenPromise = performRevocationRequestAsync(revocationEndpoint, this.tokens.refreshToken, TOKEN_TYPE.refresh_token, configuration.client_id);
|
|
1133
|
-
promises.push(revokeRefreshTokenPromise);
|
|
1134
|
-
}
|
|
1135
|
-
if (promises.length > 0) {
|
|
1136
|
-
yield Promise.all(promises);
|
|
1137
|
-
}
|
|
1138
|
-
}
|
|
1139
1093
|
// @ts-ignore
|
|
1140
1094
|
const sub = this.tokens && this.tokens.idTokenPayload ? this.tokens.idTokenPayload.sub : null;
|
|
1141
1095
|
yield this.destroyAsync("LOGGED_OUT");
|
package/dist/vanilla/oidc.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"oidc.js","sourceRoot":"","sources":["../../src/oidc/vanilla/oidc.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/Profile.tsx
CHANGED
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import React from 'react';
|
|
2
2
|
|
|
3
3
|
import {OidcSecure, useOidcAccessToken, useOidcIdToken, useOidcUser, OidcUserStatus} from "./oidc";
|
|
4
|
+
import { OidcUserInfo } from './oidc/User';
|
|
4
5
|
|
|
6
|
+
interface OidcUserRoleInfo extends OidcUserInfo{
|
|
7
|
+
role?: string[]
|
|
8
|
+
}
|
|
5
9
|
|
|
6
10
|
const DisplayUserInfo = () => {
|
|
7
|
-
const{ oidcUser, oidcUserLoadingState } = useOidcUser();
|
|
11
|
+
const{ oidcUser, oidcUserLoadingState } = useOidcUser<OidcUserRoleInfo>();
|
|
8
12
|
|
|
9
13
|
switch (oidcUserLoadingState){
|
|
10
14
|
case OidcUserStatus.Loading:
|
package/src/oidc/User.ts
CHANGED
|
@@ -8,13 +8,45 @@ export enum OidcUserStatus {
|
|
|
8
8
|
LoadingError = 'Error loading user'
|
|
9
9
|
}
|
|
10
10
|
|
|
11
|
-
export type OidcUser = {
|
|
12
|
-
user:
|
|
11
|
+
export type OidcUser<T extends OidcUserInfo = OidcUserInfo> = {
|
|
12
|
+
user: T,
|
|
13
13
|
status: OidcUserStatus
|
|
14
14
|
}
|
|
15
15
|
|
|
16
|
-
export
|
|
17
|
-
|
|
16
|
+
export interface OidcUserInfo {
|
|
17
|
+
sub: string;
|
|
18
|
+
name?: string;
|
|
19
|
+
given_name?: string;
|
|
20
|
+
family_name?: string;
|
|
21
|
+
middle_name?: string;
|
|
22
|
+
nickname?: string;
|
|
23
|
+
preferred_username?: string;
|
|
24
|
+
profile?: string;
|
|
25
|
+
picture?: string;
|
|
26
|
+
website?: string;
|
|
27
|
+
email?: string;
|
|
28
|
+
email_verified?: boolean;
|
|
29
|
+
gender?: string;
|
|
30
|
+
birthdate?: string;
|
|
31
|
+
zoneinfo?: string;
|
|
32
|
+
locale?: string;
|
|
33
|
+
phone_number?: string;
|
|
34
|
+
phone_number_verified?: boolean;
|
|
35
|
+
address?: OidcAddressClaim;
|
|
36
|
+
updated_at?: number;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
export interface OidcAddressClaim {
|
|
40
|
+
formatted?: string;
|
|
41
|
+
street_address?: string;
|
|
42
|
+
locality?: string;
|
|
43
|
+
region?: string;
|
|
44
|
+
postal_code?: string;
|
|
45
|
+
country?: string;
|
|
46
|
+
}
|
|
47
|
+
|
|
48
|
+
export const useOidcUser = <T extends OidcUserInfo = OidcUserInfo>(configurationName="default") => {
|
|
49
|
+
const [oidcUser, setOidcUser] = useState<OidcUser<T>>({user: null, status: OidcUserStatus.Unauthenticated});
|
|
18
50
|
|
|
19
51
|
const oidc = VanillaOidc.get(configurationName);
|
|
20
52
|
useEffect(() => {
|
|
@@ -13,13 +13,6 @@ const handleInstall = (event) => {
|
|
|
13
13
|
const handleActivate = (event) => {
|
|
14
14
|
console.log('[OidcServiceWorker] service worker activated ' + id);
|
|
15
15
|
event.waitUntil(self.clients.claim());
|
|
16
|
-
/*self.registration.unregister()
|
|
17
|
-
.then(function() {
|
|
18
|
-
return self.clients.matchAll();
|
|
19
|
-
})
|
|
20
|
-
.then(function(clients) {
|
|
21
|
-
clients.forEach(client => client.navigate(client.url))
|
|
22
|
-
});*/
|
|
23
16
|
};
|
|
24
17
|
|
|
25
18
|
let currentLoginCallbackConfigurationName = null;
|
|
@@ -138,21 +131,21 @@ function hideTokens(currentDatabaseElement) {
|
|
|
138
131
|
const accessTokenExpiresAt = (accessTokenPayload && accessTokenPayload.exp)? accessTokenPayload.exp : tokens.issued_at + tokens.expires_in;
|
|
139
132
|
const expiresAt = idTokenExpiresAt < accessTokenExpiresAt ? idTokenExpiresAt : accessTokenExpiresAt;
|
|
140
133
|
secureTokens.expiresAt = expiresAt;
|
|
141
|
-
|
|
134
|
+
|
|
142
135
|
tokens.expiresAt = expiresAt;
|
|
143
136
|
|
|
144
137
|
if(!isTokensOidcValid(tokens, currentDatabaseElement.nonce.nonce, currentDatabaseElement.oidcServerConfiguration)){
|
|
145
138
|
throw Error("Tokens are not OpenID valid");
|
|
146
139
|
}
|
|
147
|
-
|
|
140
|
+
|
|
148
141
|
// When refresh_token is not rotated we reuse ald refresh_token
|
|
149
142
|
if(currentDatabaseElement.tokens != null && "refresh_token" in currentDatabaseElement.tokens && !("refresh_token" in tokens)){
|
|
150
143
|
const refreshToken = currentDatabaseElement.tokens.refresh_token;
|
|
151
144
|
currentDatabaseElement.tokens = {...tokens, refresh_token : refreshToken};
|
|
152
145
|
} else{
|
|
153
|
-
currentDatabaseElement.tokens = tokens;
|
|
146
|
+
currentDatabaseElement.tokens = tokens;
|
|
154
147
|
}
|
|
155
|
-
|
|
148
|
+
|
|
156
149
|
currentDatabaseElement.status = "LOGGED_IN";
|
|
157
150
|
const body = JSON.stringify(secureTokens);
|
|
158
151
|
return new Response(body, response);
|
|
@@ -163,12 +156,8 @@ function hideTokens(currentDatabaseElement) {
|
|
|
163
156
|
const getCurrentDatabasesTokenEndpoint = (database, url) => {
|
|
164
157
|
const databases = [];
|
|
165
158
|
for (const [key, value] of Object.entries(database)) {
|
|
166
|
-
if(value ){
|
|
167
|
-
|
|
168
|
-
databases.push(value);
|
|
169
|
-
} else if(value.oidcServerConfiguration !=null && value.oidcServerConfiguration.revocationEndpoint && url.startsWith(value.oidcServerConfiguration.revocationEndpoint)) {
|
|
170
|
-
databases.push(value);
|
|
171
|
-
}
|
|
159
|
+
if(value && value.oidcServerConfiguration !=null && url.startsWith(value.oidcServerConfiguration.tokenEndpoint)){
|
|
160
|
+
databases.push(value);
|
|
172
161
|
}
|
|
173
162
|
}
|
|
174
163
|
return databases;
|
|
@@ -189,9 +178,6 @@ const getCurrentDatabaseDomain = (database, url) => {
|
|
|
189
178
|
if(oidcServerConfiguration.tokenEndpoint && url === oidcServerConfiguration.tokenEndpoint){
|
|
190
179
|
continue;
|
|
191
180
|
}
|
|
192
|
-
if(oidcServerConfiguration.revocationEndpoint && url === oidcServerConfiguration.revocationEndpoint){
|
|
193
|
-
continue;
|
|
194
|
-
}
|
|
195
181
|
|
|
196
182
|
const domainsToSendTokens = oidcServerConfiguration.userInfoEndpoint ? [
|
|
197
183
|
oidcServerConfiguration.userInfoEndpoint, ...trustedDomains[key]
|
|
@@ -253,7 +239,7 @@ const keepAliveAsync = async (event) => {
|
|
|
253
239
|
|
|
254
240
|
const handleFetch = async (event) => {
|
|
255
241
|
const originalRequest = event.request;
|
|
256
|
-
|
|
242
|
+
|
|
257
243
|
if(originalRequest.url.includes(keepAliveJsonFilename) ){
|
|
258
244
|
event.respondWith(keepAliveAsync(event));
|
|
259
245
|
return;
|
|
@@ -277,7 +263,6 @@ const handleFetch = async (event) => {
|
|
|
277
263
|
if(event.request.method !== "POST"){
|
|
278
264
|
return;
|
|
279
265
|
}
|
|
280
|
-
|
|
281
266
|
let currentDatabase = null;
|
|
282
267
|
const currentDatabases = getCurrentDatabasesTokenEndpoint(database, originalRequest.url);
|
|
283
268
|
const numberDatabase = currentDatabases.length;
|
|
@@ -285,7 +270,7 @@ const handleFetch = async (event) => {
|
|
|
285
270
|
const maPromesse = new Promise((resolve, reject) => {
|
|
286
271
|
const clonedRequest = originalRequest.clone();
|
|
287
272
|
const response = clonedRequest.text().then(actualBody => {
|
|
288
|
-
if(actualBody.includes(REFRESH_TOKEN)
|
|
273
|
+
if(actualBody.includes(REFRESH_TOKEN)) {
|
|
289
274
|
let newBody = actualBody;
|
|
290
275
|
for(let i= 0;i<numberDatabase;i++){
|
|
291
276
|
const currentDb = currentDatabases[i];
|
|
@@ -297,15 +282,10 @@ const handleFetch = async (event) => {
|
|
|
297
282
|
currentDatabase = currentDb;
|
|
298
283
|
break;
|
|
299
284
|
}
|
|
300
|
-
const keyAccessToken = ACCESS_TOKEN + '_'+ currentDb.configurationName;
|
|
301
|
-
if(actualBody.includes(keyAccessToken)) {
|
|
302
|
-
newBody = newBody.replace(keyAccessToken, encodeURIComponent(currentDb.tokens.access_token));
|
|
303
|
-
currentDatabase = currentDb;
|
|
304
|
-
break;
|
|
305
|
-
}
|
|
306
285
|
}
|
|
307
286
|
}
|
|
308
|
-
|
|
287
|
+
|
|
288
|
+
return fetch(originalRequest, {
|
|
309
289
|
body: newBody,
|
|
310
290
|
method: clonedRequest.method,
|
|
311
291
|
headers: {
|
|
@@ -317,14 +297,7 @@ const handleFetch = async (event) => {
|
|
|
317
297
|
referrer: clonedRequest.referrer,
|
|
318
298
|
credentials: clonedRequest.credentials,
|
|
319
299
|
integrity: clonedRequest.integrity
|
|
320
|
-
});
|
|
321
|
-
if(currentDatabase.oidcServerConfiguration !=null && currentDatabase.oidcServerConfiguration.revocationEndpoint && url.startsWith(currentDatabase.oidcServerConfiguration.revocationEndpoint)){
|
|
322
|
-
return fetchPromise.then(async response => {
|
|
323
|
-
const text = await response.text();
|
|
324
|
-
return new Response(text, response);
|
|
325
|
-
});
|
|
326
|
-
}
|
|
327
|
-
return fetchPromise.then(hideTokens(currentDatabase));
|
|
300
|
+
}).then(hideTokens(currentDatabase));
|
|
328
301
|
} else if(actualBody.includes("code_verifier=") && currentLoginCallbackConfigurationName){
|
|
329
302
|
currentDatabase = database[currentLoginCallbackConfigurationName];
|
|
330
303
|
currentLoginCallbackConfigurationName=null;
|
|
@@ -398,7 +371,6 @@ addEventListener('message', event => {
|
|
|
398
371
|
trustedDomains[configurationName] = [];
|
|
399
372
|
}
|
|
400
373
|
}
|
|
401
|
-
|
|
402
374
|
switch (data.type){
|
|
403
375
|
case "loadItems":
|
|
404
376
|
port.postMessage(database[configurationName].items);
|
|
@@ -414,7 +386,6 @@ addEventListener('message', event => {
|
|
|
414
386
|
const domains = trustedDomains[configurationName];
|
|
415
387
|
if (!domains.find(f => f === acceptAnyDomainToken)) {
|
|
416
388
|
checkDomain(domains, oidcServerConfiguration.tokenEndpoint);
|
|
417
|
-
checkDomain(domains, oidcServerConfiguration.revocationEndpoint);
|
|
418
389
|
checkDomain(domains, oidcServerConfiguration.userInfoEndpoint);
|
|
419
390
|
checkDomain(domains, oidcServerConfiguration.issuer);
|
|
420
391
|
}
|
package/src/oidc/vanilla/oidc.ts
CHANGED
|
@@ -21,42 +21,8 @@ import {getParseQueryStringFromLocation} from "./route-utils";
|
|
|
21
21
|
import {AuthorizationServiceConfigurationJson} from "@openid/appauth/src/authorization_service_configuration";
|
|
22
22
|
import {computeTimeLeft, isTokensOidcValid, isTokensValid, parseOriginalTokens, setTokens, Tokens} from "./parseTokens";
|
|
23
23
|
|
|
24
|
-
const TOKEN_TYPE ={
|
|
25
|
-
refresh_token:"refresh_token",
|
|
26
|
-
access_token:"access_token"
|
|
27
|
-
}
|
|
28
|
-
|
|
29
|
-
const performRevocationRequestAsync= async (url, token, token_type=TOKEN_TYPE.refresh_token, client_id) => {
|
|
30
|
-
const details = {
|
|
31
|
-
token:token,
|
|
32
|
-
token_type_hint:token_type,
|
|
33
|
-
client_id: client_id
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
let formBody = [];
|
|
37
|
-
for (const property in details) {
|
|
38
|
-
const encodedKey = encodeURIComponent(property);
|
|
39
|
-
const encodedValue = encodeURIComponent(details[property]);
|
|
40
|
-
formBody.push(`${encodedKey}=${encodedValue}`);
|
|
41
|
-
}
|
|
42
|
-
const formBodyString = formBody.join("&");
|
|
43
|
-
|
|
44
|
-
const response = await internalFetch(url, {
|
|
45
|
-
method: 'POST',
|
|
46
|
-
headers: {
|
|
47
|
-
'Content-Type': 'application/x-www-form-urlencoded;charset=UTF-8',
|
|
48
|
-
},
|
|
49
|
-
body: formBodyString,
|
|
50
|
-
});
|
|
51
|
-
if(response.status !== 200){
|
|
52
|
-
return { success:false };
|
|
53
|
-
}
|
|
54
|
-
return {
|
|
55
|
-
success : true
|
|
56
|
-
};
|
|
57
|
-
}
|
|
58
|
-
|
|
59
24
|
const performTokenRequestAsync= async (url, details, extras, oldTokens) => {
|
|
25
|
+
|
|
60
26
|
for (let [key, value] of Object.entries(extras)) {
|
|
61
27
|
if (details[key] === undefined) {
|
|
62
28
|
details[key] = value;
|
|
@@ -1214,21 +1180,6 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
1214
1180
|
const url = isUri ? callbackPathOrUrl : window.location.origin + path;
|
|
1215
1181
|
// @ts-ignore
|
|
1216
1182
|
const idToken = this.tokens ? this.tokens.idToken : "";
|
|
1217
|
-
const revocationEndpoint = oidcServerConfiguration.revocationEndpoint;
|
|
1218
|
-
if(revocationEndpoint) {
|
|
1219
|
-
const promises = [];
|
|
1220
|
-
if(this.tokens.accessToken){
|
|
1221
|
-
const revokeAccessTokenPromise = performRevocationRequestAsync(revocationEndpoint, this.tokens.accessToken, TOKEN_TYPE.refresh_token, configuration.client_id);
|
|
1222
|
-
promises.push(revokeAccessTokenPromise);
|
|
1223
|
-
}
|
|
1224
|
-
if(this.tokens.refreshToken) {
|
|
1225
|
-
const revokeRefreshTokenPromise = performRevocationRequestAsync(revocationEndpoint, this.tokens.refreshToken, TOKEN_TYPE.refresh_token, configuration.client_id);
|
|
1226
|
-
promises.push(revokeRefreshTokenPromise);
|
|
1227
|
-
}
|
|
1228
|
-
if(promises.length > 0){
|
|
1229
|
-
await Promise.all(promises);
|
|
1230
|
-
}
|
|
1231
|
-
}
|
|
1232
1183
|
// @ts-ignore
|
|
1233
1184
|
const sub = this.tokens && this.tokens.idTokenPayload ? this.tokens.idTokenPayload.sub : null;
|
|
1234
1185
|
await this.destroyAsync("LOGGED_OUT");
|
|
@@ -1238,7 +1189,6 @@ Please checkout that you are using OIDC hook inside a <OidcProvider configuratio
|
|
|
1238
1189
|
await oidc.logoutSameTabAsync(this.configuration.client_id, sub);
|
|
1239
1190
|
}
|
|
1240
1191
|
}
|
|
1241
|
-
|
|
1242
1192
|
|
|
1243
1193
|
if(oidcServerConfiguration.endSessionEndpoint) {
|
|
1244
1194
|
if(!extras){
|