oidc-spa 8.6.18 → 8.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.
Files changed (153) hide show
  1. package/README.md +2 -2
  2. package/backend.d.ts +3 -20
  3. package/backend.js +50 -242
  4. package/backend.js.map +1 -1
  5. package/core/OidcMetadata.d.ts +2 -2
  6. package/core/OidcMetadata.js.map +1 -1
  7. package/core/createOidc.d.ts +2 -4
  8. package/core/createOidc.js +46 -6
  9. package/core/createOidc.js.map +1 -1
  10. package/core/dpop.d.ts +20 -0
  11. package/core/dpop.js +389 -0
  12. package/core/dpop.js.map +1 -0
  13. package/core/earlyInit.js +2 -0
  14. package/core/earlyInit.js.map +1 -1
  15. package/core/evtIsUserActive.d.ts +8 -1
  16. package/core/evtIsUserActive.js +4 -2
  17. package/core/evtIsUserActive.js.map +1 -1
  18. package/core/oidcClientTsUserToTokens.d.ts +1 -0
  19. package/core/oidcClientTsUserToTokens.js +15 -5
  20. package/core/oidcClientTsUserToTokens.js.map +1 -1
  21. package/core/tokenExfiltrationDefense.js +49 -6
  22. package/core/tokenExfiltrationDefense.js.map +1 -1
  23. package/esm/angular.d.ts +2 -0
  24. package/esm/angular.mjs.map +1 -1
  25. package/esm/backend.d.ts +3 -20
  26. package/esm/backend.mjs +50 -242
  27. package/esm/backend.mjs.map +1 -1
  28. package/esm/core/OidcMetadata.d.ts +2 -2
  29. package/esm/core/OidcMetadata.mjs.map +1 -1
  30. package/esm/core/createOidc.d.ts +2 -4
  31. package/esm/core/createOidc.mjs +46 -6
  32. package/esm/core/createOidc.mjs.map +1 -1
  33. package/esm/core/dpop.d.ts +20 -0
  34. package/esm/core/dpop.mjs +384 -0
  35. package/esm/core/dpop.mjs.map +1 -0
  36. package/esm/core/earlyInit.mjs +2 -0
  37. package/esm/core/earlyInit.mjs.map +1 -1
  38. package/esm/core/evtIsUserActive.d.ts +8 -1
  39. package/esm/core/evtIsUserActive.mjs +4 -2
  40. package/esm/core/evtIsUserActive.mjs.map +1 -1
  41. package/esm/core/oidcClientTsUserToTokens.d.ts +1 -0
  42. package/esm/core/oidcClientTsUserToTokens.mjs +15 -5
  43. package/esm/core/oidcClientTsUserToTokens.mjs.map +1 -1
  44. package/esm/core/tokenExfiltrationDefense.mjs +49 -6
  45. package/esm/core/tokenExfiltrationDefense.mjs.map +1 -1
  46. package/esm/react-spa/createOidcSpaApi.mjs +2 -1
  47. package/esm/react-spa/createOidcSpaApi.mjs.map +1 -1
  48. package/esm/react-spa/types.d.ts +2 -0
  49. package/esm/server/createOidcSpaUtils.d.ts +5 -0
  50. package/esm/server/createOidcSpaUtils.mjs +639 -0
  51. package/esm/server/createOidcSpaUtils.mjs.map +1 -0
  52. package/esm/server/index.d.ts +2 -0
  53. package/esm/server/index.mjs +3 -0
  54. package/esm/server/index.mjs.map +1 -0
  55. package/esm/server/types.d.ts +79 -0
  56. package/esm/server/types.mjs +2 -0
  57. package/esm/server/types.mjs.map +1 -0
  58. package/esm/server/utilsBuilder.d.ts +10 -0
  59. package/esm/server/utilsBuilder.mjs +13 -0
  60. package/esm/server/utilsBuilder.mjs.map +1 -0
  61. package/esm/tanstack-start/react/accessTokenValidation_rfc9068.d.ts +1 -1
  62. package/esm/tanstack-start/react/accessTokenValidation_rfc9068.mjs +102 -94
  63. package/esm/tanstack-start/react/accessTokenValidation_rfc9068.mjs.map +1 -1
  64. package/esm/tanstack-start/react/createOidcSpaApi.d.ts +2 -2
  65. package/esm/tanstack-start/react/createOidcSpaApi.mjs +60 -51
  66. package/esm/tanstack-start/react/createOidcSpaApi.mjs.map +1 -1
  67. package/esm/tanstack-start/react/index.d.ts +1 -1
  68. package/esm/tanstack-start/react/index.mjs +2 -2
  69. package/esm/tanstack-start/react/index.mjs.map +1 -1
  70. package/esm/tanstack-start/react/types.d.ts +36 -11
  71. package/esm/tanstack-start/react/{apiBuilder.d.ts → utilsBuilder.d.ts} +9 -9
  72. package/esm/tanstack-start/react/{apiBuilder.mjs → utilsBuilder.mjs} +6 -6
  73. package/esm/tanstack-start/react/utilsBuilder.mjs.map +1 -0
  74. package/esm/tools/generateES256DPoPProof.d.ts +8 -0
  75. package/esm/tools/generateES256DPoPProof.mjs +48 -0
  76. package/esm/tools/generateES256DPoPProof.mjs.map +1 -0
  77. package/esm/tools/getServerDateNow.d.ts +5 -0
  78. package/esm/tools/getServerDateNow.mjs +7 -0
  79. package/esm/tools/getServerDateNow.mjs.map +1 -0
  80. package/esm/tools/startCountdown.mjs +9 -3
  81. package/esm/tools/startCountdown.mjs.map +1 -1
  82. package/esm/vendor/{backend → server}/evt.mjs +84 -140
  83. package/esm/vendor/{backend → server}/jose.mjs +5 -27
  84. package/esm/vendor/{backend → server}/tsafe.d.ts +1 -0
  85. package/esm/vendor/{backend → server}/tsafe.mjs +6 -0
  86. package/esm/vendor/{backend → server}/zod.mjs +196 -50
  87. package/package.json +6 -1
  88. package/react-spa/createOidcSpaApi.js +2 -1
  89. package/react-spa/createOidcSpaApi.js.map +1 -1
  90. package/react-spa/types.d.ts +2 -0
  91. package/server/createOidcSpaUtils.d.ts +5 -0
  92. package/server/createOidcSpaUtils.js +642 -0
  93. package/server/createOidcSpaUtils.js.map +1 -0
  94. package/server/index.d.ts +2 -0
  95. package/server/index.js +6 -0
  96. package/server/index.js.map +1 -0
  97. package/server/types.d.ts +79 -0
  98. package/server/types.js +3 -0
  99. package/server/types.js.map +1 -0
  100. package/server/utilsBuilder.d.ts +10 -0
  101. package/server/utilsBuilder.js +16 -0
  102. package/server/utilsBuilder.js.map +1 -0
  103. package/src/angular.ts +3 -0
  104. package/src/backend.ts +63 -364
  105. package/src/core/OidcMetadata.ts +4 -2
  106. package/src/core/createOidc.ts +61 -9
  107. package/src/core/dpop.ts +583 -0
  108. package/src/core/earlyInit.ts +3 -0
  109. package/src/core/evtIsUserActive.ts +11 -5
  110. package/src/core/oidcClientTsUserToTokens.ts +18 -4
  111. package/src/core/tokenExfiltrationDefense.ts +60 -5
  112. package/src/react-spa/createOidcSpaApi.ts +2 -1
  113. package/src/react-spa/types.tsx +3 -0
  114. package/src/server/createOidcSpaUtils.ts +848 -0
  115. package/src/server/index.ts +4 -0
  116. package/src/server/types.tsx +99 -0
  117. package/src/server/utilsBuilder.ts +41 -0
  118. package/src/tanstack-start/react/accessTokenValidation_rfc9068.ts +134 -124
  119. package/src/tanstack-start/react/createOidcSpaApi.ts +73 -69
  120. package/src/tanstack-start/react/index.ts +2 -2
  121. package/src/tanstack-start/react/types.tsx +44 -12
  122. package/src/tanstack-start/react/{apiBuilder.ts → utilsBuilder.ts} +14 -14
  123. package/src/tools/generateES256DPoPProof.ts +74 -0
  124. package/src/tools/getServerDateNow.ts +11 -0
  125. package/src/tools/startCountdown.ts +10 -3
  126. package/src/vendor/{backend → server}/tsafe.ts +1 -0
  127. package/tools/generateES256DPoPProof.d.ts +8 -0
  128. package/tools/generateES256DPoPProof.js +51 -0
  129. package/tools/generateES256DPoPProof.js.map +1 -0
  130. package/tools/getServerDateNow.d.ts +5 -0
  131. package/tools/getServerDateNow.js +10 -0
  132. package/tools/getServerDateNow.js.map +1 -0
  133. package/tools/startCountdown.js +9 -3
  134. package/tools/startCountdown.js.map +1 -1
  135. package/vendor/server/evt.js +3 -0
  136. package/vendor/server/jose.js +3 -0
  137. package/vendor/{backend → server}/tsafe.d.ts +1 -0
  138. package/vendor/server/tsafe.js +2 -0
  139. package/vendor/server/zod.js +3 -0
  140. package/esm/tanstack-start/react/apiBuilder.mjs.map +0 -1
  141. package/vendor/backend/evt.js +0 -3
  142. package/vendor/backend/jose.js +0 -3
  143. package/vendor/backend/tsafe.js +0 -2
  144. package/vendor/backend/zod.js +0 -3
  145. /package/esm/vendor/{backend → server}/evt.d.ts +0 -0
  146. /package/esm/vendor/{backend → server}/jose.d.ts +0 -0
  147. /package/esm/vendor/{backend → server}/zod.d.ts +0 -0
  148. /package/src/vendor/{backend → server}/evt.ts +0 -0
  149. /package/src/vendor/{backend → server}/jose.ts +0 -0
  150. /package/src/vendor/{backend → server}/zod.ts +0 -0
  151. /package/vendor/{backend → server}/evt.d.ts +0 -0
  152. /package/vendor/{backend → server}/jose.d.ts +0 -0
  153. /package/vendor/{backend → server}/zod.d.ts +0 -0
@@ -1 +1 @@
1
- {"version":3,"file":"createOidc.js","sourceRoot":"","sources":["../src/core/createOidc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"createOidc.js","sourceRoot":"","sources":["../src/core/createOidc.ts"],"names":[],"mappings":"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"}
package/core/dpop.d.ts ADDED
@@ -0,0 +1,20 @@
1
+ import { type ParamsOfCreateGetServerDateNow } from "../tools/getServerDateNow";
2
+ export type DPoPStore = {
3
+ set: (key: string, value: DPoPState) => Promise<void>;
4
+ get: (key: string) => Promise<DPoPState>;
5
+ remove: (key: string) => Promise<DPoPState>;
6
+ getAllKeys: () => Promise<string[]>;
7
+ };
8
+ export type DPoPState = {
9
+ keys: CryptoKeyPair;
10
+ nonce?: string;
11
+ };
12
+ export declare function createInMemoryDPoPStore(params: {
13
+ configId: string;
14
+ }): DPoPStore;
15
+ export declare function registerAccessTokenForDPoP(params: {
16
+ configId: string;
17
+ accessToken: string;
18
+ paramsOfCreateGetServerDateNow: ParamsOfCreateGetServerDateNow;
19
+ }): void;
20
+ export declare function implementFetchAndXhrDPoPInterceptor(): void;
package/core/dpop.js ADDED
@@ -0,0 +1,389 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.createInMemoryDPoPStore = createInMemoryDPoPStore;
4
+ exports.registerAccessTokenForDPoP = registerAccessTokenForDPoP;
5
+ exports.implementFetchAndXhrDPoPInterceptor = implementFetchAndXhrDPoPInterceptor;
6
+ const assert_1 = require("../tools/tsafe/assert");
7
+ const generateES256DPoPProof_1 = require("../tools/generateES256DPoPProof");
8
+ const getServerDateNow_1 = require("../tools/getServerDateNow");
9
+ // NOTE: Using object instead of Map because Map is not freezed.
10
+ const dpopStateByConfigId = {};
11
+ function createInMemoryDPoPStore(params) {
12
+ const { configId } = params;
13
+ let key_singleton = undefined;
14
+ const store = {
15
+ set: (key, value) => {
16
+ if (key_singleton !== undefined) {
17
+ (0, assert_1.assert)(key === key_singleton, "394303302");
18
+ }
19
+ key_singleton = key;
20
+ dpopStateByConfigId[configId] = value;
21
+ return Promise.resolve();
22
+ },
23
+ get: key => {
24
+ (0, assert_1.assert)(key_singleton !== undefined, "49303403");
25
+ (0, assert_1.assert)(key_singleton === key, "34023493");
26
+ const value = dpopStateByConfigId[configId];
27
+ (0, assert_1.assert)(value !== undefined, "943023493");
28
+ return Promise.resolve(value);
29
+ },
30
+ remove: async (key) => {
31
+ const value = await store.get(key);
32
+ delete dpopStateByConfigId[configId];
33
+ return value;
34
+ },
35
+ getAllKeys: () => {
36
+ if (configId in dpopStateByConfigId) {
37
+ (0, assert_1.assert)(key_singleton !== undefined, "39430338");
38
+ return Promise.resolve([key_singleton]);
39
+ }
40
+ else {
41
+ return Promise.resolve([]);
42
+ }
43
+ }
44
+ };
45
+ return store;
46
+ }
47
+ const accessTokenConfigIdEntries = [];
48
+ function registerAccessTokenForDPoP(params) {
49
+ const { configId, accessToken, paramsOfCreateGetServerDateNow } = params;
50
+ for (const entry of accessTokenConfigIdEntries) {
51
+ if (entry.configId !== configId) {
52
+ continue;
53
+ }
54
+ setTimeout(() => {
55
+ const index = accessTokenConfigIdEntries.indexOf(entry);
56
+ if (index === -1) {
57
+ return;
58
+ }
59
+ accessTokenConfigIdEntries.splice(index, 1);
60
+ }, 30000);
61
+ }
62
+ const entry_new = {
63
+ configId,
64
+ accessToken,
65
+ paramsOfCreateGetServerDateNow
66
+ };
67
+ accessTokenConfigIdEntries.push(entry_new);
68
+ }
69
+ const nonceEntriesByConfigId = {};
70
+ function generateMaterialToUpgradeBearerRequestToDPoP(params) {
71
+ const { httpMethod, url, authorizationHeaderValue } = params;
72
+ if (authorizationHeaderValue === undefined) {
73
+ return {
74
+ isHandled: false
75
+ };
76
+ }
77
+ const accessToken = (() => {
78
+ const match = authorizationHeaderValue.match(/^\s*Bearer\s+(.+?)\s*$/i);
79
+ if (match === null) {
80
+ return undefined;
81
+ }
82
+ return match[1];
83
+ })();
84
+ if (accessToken === undefined) {
85
+ return {
86
+ isHandled: false
87
+ };
88
+ }
89
+ const entry = accessTokenConfigIdEntries.find(entry => entry.accessToken === accessToken);
90
+ if (entry === undefined) {
91
+ return {
92
+ isHandled: false
93
+ };
94
+ }
95
+ const { configId, paramsOfCreateGetServerDateNow } = entry;
96
+ const dpopState = dpopStateByConfigId[configId];
97
+ (0, assert_1.assert)(dpopState !== undefined, "304922047");
98
+ const nonceEntries = (nonceEntriesByConfigId[configId] ?? (nonceEntriesByConfigId[configId] = []));
99
+ const origin = new URL(url).origin;
100
+ const generateDPoPProof = () => (0, generateES256DPoPProof_1.generateES256DPoPProof)({
101
+ keyPair: dpopState.keys,
102
+ url,
103
+ accessToken,
104
+ httpMethod,
105
+ nonce: nonceEntries.find(entry => entry.origin === origin)?.nonce,
106
+ getServerDateNow: (0, getServerDateNow_1.createGetServerDateNow)(paramsOfCreateGetServerDateNow)
107
+ });
108
+ return {
109
+ isHandled: true,
110
+ accessToken,
111
+ nextStepDPoP: async () => ({
112
+ dpopProof: await generateDPoPProof(),
113
+ registerDPoPNonce: ({ nonce }) => {
114
+ const nonceEntry = nonceEntries.find(entry => entry.origin === origin);
115
+ if (nonceEntry !== undefined) {
116
+ nonceEntry.nonce = nonce;
117
+ }
118
+ else {
119
+ nonceEntries.push({ origin, nonce });
120
+ }
121
+ },
122
+ reGenerateDpopProof: generateDPoPProof
123
+ })
124
+ };
125
+ }
126
+ function implementFetchAndXhrDPoPInterceptor() {
127
+ function readNonceFromResponseHeader(params) {
128
+ const { getResponseHeader } = params;
129
+ dpop_nonce_header: {
130
+ const value = getResponseHeader("DPoP-Nonce");
131
+ if (value === null) {
132
+ break dpop_nonce_header;
133
+ }
134
+ return value;
135
+ }
136
+ www_authenticate_header: {
137
+ const value = getResponseHeader("WWW-Authenticate");
138
+ if (value === null) {
139
+ break www_authenticate_header;
140
+ }
141
+ {
142
+ const value_lower = value.toLowerCase();
143
+ if (!value_lower.includes("dpop") || !value_lower.includes("use_dpop_nonce")) {
144
+ break www_authenticate_header;
145
+ }
146
+ }
147
+ const match = value.match(/nonce="([^"]+)"/i);
148
+ if (match === null) {
149
+ break www_authenticate_header;
150
+ }
151
+ return match[1];
152
+ }
153
+ return undefined;
154
+ }
155
+ {
156
+ const createFetchProxy = (params) => {
157
+ const { fetch, isFetchLater } = params;
158
+ let hasLoggedFetchLaterWarning = false;
159
+ const fetchProxy = async (input, init) => {
160
+ if (accessTokenConfigIdEntries.length === 0) {
161
+ return fetch(input, init);
162
+ }
163
+ let request = input instanceof Request ? input : new Request(input, init);
164
+ const fetch_ctx = (() => {
165
+ if (!init) {
166
+ return fetch;
167
+ }
168
+ // @ts-expect-error
169
+ const { activateAfter } = init;
170
+ if (!activateAfter) {
171
+ return fetch;
172
+ }
173
+ return request => {
174
+ // @ts-expect-error
175
+ return fetch(request, { activateAfter });
176
+ };
177
+ })();
178
+ let dpopStatus;
179
+ update_headers: {
180
+ const result = generateMaterialToUpgradeBearerRequestToDPoP({
181
+ authorizationHeaderValue: request.headers.get("Authorization") ?? undefined,
182
+ url: request.url,
183
+ httpMethod: request.method
184
+ });
185
+ if (!result.isHandled) {
186
+ dpopStatus = { isHandled: false };
187
+ break update_headers;
188
+ }
189
+ const { accessToken, nextStepDPoP } = result;
190
+ const { dpopProof, reGenerateDpopProof, registerDPoPNonce } = await nextStepDPoP();
191
+ request = new Request(request, {
192
+ headers: (() => {
193
+ const h = new Headers(request.headers);
194
+ h.set("Authorization", `DPoP ${accessToken}`);
195
+ h.set("DPoP", dpopProof);
196
+ return h;
197
+ })()
198
+ });
199
+ dpopStatus = {
200
+ isHandled: true,
201
+ registerDPoPNonce,
202
+ reGenerateDpopProof
203
+ };
204
+ }
205
+ if (!dpopStatus.isHandled) {
206
+ return fetch_ctx(request);
207
+ }
208
+ if (isFetchLater && !hasLoggedFetchLaterWarning) {
209
+ console.warn([
210
+ "oidc-spa: Detected an authenticated fetchLater() request while DPoP is enabled.",
211
+ "Support for fetchLater + DPoP is not fully implemented yet.",
212
+ "If you rely on this, please open an issue and we will implement support:",
213
+ "https://github.com/keycloakify/oidc-spa"
214
+ ].join(" "));
215
+ hasLoggedFetchLaterWarning = true;
216
+ }
217
+ let request_cloneForReplay = (() => {
218
+ const method = request.method.toUpperCase();
219
+ if (method !== "GET" && method !== "HEAD") {
220
+ return undefined;
221
+ }
222
+ try {
223
+ return request.clone();
224
+ }
225
+ catch {
226
+ return undefined;
227
+ }
228
+ })();
229
+ let response = await fetch_ctx(request);
230
+ re_send_with_DPoP_nonce: {
231
+ if (response.status !== 401) {
232
+ break re_send_with_DPoP_nonce;
233
+ }
234
+ const nonce = readNonceFromResponseHeader({
235
+ getResponseHeader: headerName => response.headers.get(headerName)
236
+ });
237
+ if (nonce === undefined) {
238
+ break re_send_with_DPoP_nonce;
239
+ }
240
+ dpopStatus.registerDPoPNonce({ nonce });
241
+ if (request_cloneForReplay === undefined) {
242
+ break re_send_with_DPoP_nonce;
243
+ }
244
+ const dpopProof_new = await dpopStatus.reGenerateDpopProof();
245
+ response = await fetch_ctx(new Request(request_cloneForReplay, {
246
+ headers: (() => {
247
+ const h = new Headers(request_cloneForReplay.headers);
248
+ h.set("DPoP", dpopProof_new);
249
+ return h;
250
+ })()
251
+ }));
252
+ }
253
+ {
254
+ const nonce = readNonceFromResponseHeader({
255
+ getResponseHeader: headerName => response.headers.get(headerName)
256
+ });
257
+ if (nonce !== undefined) {
258
+ dpopStatus.registerDPoPNonce({ nonce });
259
+ }
260
+ }
261
+ return response;
262
+ };
263
+ return fetchProxy;
264
+ };
265
+ window.fetch = createFetchProxy({ fetch: window.fetch, isFetchLater: false });
266
+ // @ts-expect-error
267
+ if (window.fetchLater) {
268
+ // @ts-expect-error
269
+ window.fetchLater = createFetchProxy({ fetch: window.fetchLater, isFetchLater: true });
270
+ }
271
+ }
272
+ {
273
+ const XMLHttpRequest_prototype_actual = {
274
+ open: XMLHttpRequest.prototype.open,
275
+ send: XMLHttpRequest.prototype.send,
276
+ setRequestHeader: XMLHttpRequest.prototype.setRequestHeader
277
+ };
278
+ const stateByInstance = new WeakMap();
279
+ XMLHttpRequest.prototype.open = function () {
280
+ const [method, url, async] = arguments;
281
+ if (stateByInstance.get(this)?.handledRequestState !== undefined) {
282
+ throw new Error([
283
+ "oidc-spa: Cannot reuse XMLHttpRequest instances",
284
+ "that have been DPoP upgraded"
285
+ ].join(" "));
286
+ }
287
+ stateByInstance.set(this, {
288
+ method: method.toUpperCase(),
289
+ url: typeof url === "string" ? new URL(url, window.location.href).href : url.href,
290
+ isSynchronous: async === false,
291
+ handledRequestState: undefined
292
+ });
293
+ return XMLHttpRequest_prototype_actual.open.apply(this,
294
+ // @ts-expect-error
295
+ arguments);
296
+ };
297
+ XMLHttpRequest.prototype.setRequestHeader = function (name, value) {
298
+ intercept: {
299
+ const state = stateByInstance.get(this);
300
+ if (state?.handledRequestState?.hasSendBeenCalled === true) {
301
+ throw new DOMException("Failed to execute 'setRequestHeader' on 'XMLHttpRequest': The object's state must be OPENED.", "InvalidStateError");
302
+ }
303
+ if (name.toLowerCase() !== "authorization") {
304
+ break intercept;
305
+ }
306
+ if (this.readyState !== XMLHttpRequest.OPENED) {
307
+ break intercept;
308
+ }
309
+ // NOTE: If it's opened we know open have been called and hence the state is set.
310
+ (0, assert_1.assert)(state !== undefined, "34308330");
311
+ const result = generateMaterialToUpgradeBearerRequestToDPoP({
312
+ httpMethod: state.method,
313
+ url: state.url,
314
+ authorizationHeaderValue: value
315
+ });
316
+ if (!result.isHandled) {
317
+ break intercept;
318
+ }
319
+ if (state.handledRequestState !== undefined) {
320
+ throw new Error([
321
+ 'oidc-spa: Calling xhr.setRequestHeader("Authorization", `Bearer <access_token>`)',
322
+ "more than once on the same instance, this is probably an usage error"
323
+ ].join(" "));
324
+ }
325
+ if (state.isSynchronous) {
326
+ throw new Error([
327
+ "oidc-spa: Cannot perform synchronous authenticated XMLHttpRequest",
328
+ "requests when DPoP is enabled."
329
+ ].join(" "));
330
+ }
331
+ state.handledRequestState = {
332
+ accessToken: result.accessToken,
333
+ nextStepDPoP: result.nextStepDPoP,
334
+ hasSendBeenCalled: false
335
+ };
336
+ return;
337
+ }
338
+ return XMLHttpRequest_prototype_actual.setRequestHeader.apply(this,
339
+ // @ts-expect-error
340
+ arguments);
341
+ };
342
+ XMLHttpRequest.prototype.send = function () {
343
+ intercept: {
344
+ const state = stateByInstance.get(this);
345
+ if (state === undefined) {
346
+ break intercept;
347
+ }
348
+ const { handledRequestState } = state;
349
+ if (handledRequestState === undefined) {
350
+ break intercept;
351
+ }
352
+ if (handledRequestState.hasSendBeenCalled) {
353
+ throw new DOMException("Failed to execute 'send' on 'XMLHttpRequest': The object's state must be OPENED.", "InvalidStateError");
354
+ }
355
+ handledRequestState.hasSendBeenCalled = true;
356
+ const { accessToken, nextStepDPoP } = handledRequestState;
357
+ nextStepDPoP().then(({ dpopProof, registerDPoPNonce }) => {
358
+ if (this.readyState !== XMLHttpRequest.OPENED) {
359
+ // abort() has been called.
360
+ return;
361
+ }
362
+ const onReadyStateChange = () => {
363
+ if (this.readyState !== XMLHttpRequest.DONE) {
364
+ return;
365
+ }
366
+ const nonce = readNonceFromResponseHeader({
367
+ getResponseHeader: headerName => this.getResponseHeader(headerName)
368
+ });
369
+ if (nonce !== undefined) {
370
+ registerDPoPNonce({ nonce });
371
+ }
372
+ this.removeEventListener("readystatechange", onReadyStateChange);
373
+ };
374
+ this.addEventListener("readystatechange", onReadyStateChange);
375
+ XMLHttpRequest_prototype_actual.setRequestHeader.call(this, "Authorization", `DPoP ${accessToken}`);
376
+ XMLHttpRequest_prototype_actual.setRequestHeader.call(this, "DPoP", dpopProof);
377
+ XMLHttpRequest_prototype_actual.send.apply(this,
378
+ // @ts-expect-error
379
+ arguments);
380
+ });
381
+ return;
382
+ }
383
+ return XMLHttpRequest_prototype_actual.send.apply(this,
384
+ // @ts-expect-error
385
+ arguments);
386
+ };
387
+ }
388
+ }
389
+ //# sourceMappingURL=dpop.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"dpop.js","sourceRoot":"","sources":["../src/core/dpop.ts"],"names":[],"mappings":"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"}
package/core/earlyInit.js CHANGED
@@ -12,6 +12,7 @@ const isBrowser_1 = require("../tools/isBrowser");
12
12
  const Evt_1 = require("../tools/Evt");
13
13
  const tokenExfiltrationDefense_legacy_1 = require("./tokenExfiltrationDefense_legacy");
14
14
  const tokenExfiltrationDefense_1 = require("./tokenExfiltrationDefense");
15
+ const dpop_1 = require("./dpop");
15
16
  let hasEarlyInitBeenCalled = false;
16
17
  const IFRAME_MESSAGE_PREFIX = "oidc-spa:cross-window-messaging:";
17
18
  function oidcEarlyInit(params) {
@@ -24,6 +25,7 @@ function oidcEarlyInit(params) {
24
25
  }
25
26
  const { shouldLoadApp } = handleOidcCallback();
26
27
  if (shouldLoadApp) {
28
+ (0, dpop_1.implementFetchAndXhrDPoPInterceptor)();
27
29
  token_exfiltration_defense: {
28
30
  if (!("enableTokenExfiltrationDefense" in params)) {
29
31
  (0, tokenExfiltrationDefense_legacy_1.handleTokenExfiltrationDefense_legacy)({