@oneidentity/safeguard 8.0.1 → 8.0.2
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/README.md +57 -10
- package/dist/browser.d.ts +3 -23
- package/dist/browser.d.ts.map +1 -0
- package/dist/browser.js +13 -1
- package/dist/browser.js.map +1 -1
- package/dist/events.cjs +24 -5
- package/dist/events.cjs.map +1 -1
- package/dist/events.d.cts +1 -8
- package/dist/events.d.cts.map +1 -0
- package/dist/events.d.ts +1 -8
- package/dist/events.d.ts.map +1 -0
- package/dist/events.js +24 -5
- package/dist/events.js.map +1 -1
- package/dist/index.cjs +14 -2
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +5 -28
- package/dist/index.d.cts.map +1 -0
- package/dist/index.d.ts +5 -28
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +14 -2
- package/dist/index.js.map +1 -1
- package/package.json +2 -2
- package/dist/browser-Df-ljVNJ.d.ts +0 -447
- package/dist/browser-Df-ljVNJ.d.ts.map +0 -1
- package/dist/events-RcqBZBsR.d.ts +0 -185
- package/dist/events-RcqBZBsR.d.ts.map +0 -1
- package/dist/events-zHsrmRBj.d.cts +0 -185
- package/dist/events-zHsrmRBj.d.cts.map +0 -1
- package/dist/index-53AwvPfY.d.ts +0 -670
- package/dist/index-53AwvPfY.d.ts.map +0 -1
- package/dist/index-Bny9XduO.d.cts +0 -670
- package/dist/index-Bny9XduO.d.cts.map +0 -1
package/dist/index.d.ts
CHANGED
|
@@ -35,7 +35,6 @@ interface HttpClient {
|
|
|
35
35
|
request(options: HttpRequestOptions): Promise<HttpResponse>;
|
|
36
36
|
dispose?(): void;
|
|
37
37
|
}
|
|
38
|
-
//# sourceMappingURL=types.d.ts.map
|
|
39
38
|
//#endregion
|
|
40
39
|
//#region src/storage/types.d.ts
|
|
41
40
|
/**
|
|
@@ -52,7 +51,6 @@ declare const StorageKeys: {
|
|
|
52
51
|
readonly STATE: "safeguard_state";
|
|
53
52
|
readonly CODE_VERIFIER: "safeguard_code_verifier";
|
|
54
53
|
};
|
|
55
|
-
//# sourceMappingURL=types.d.ts.map
|
|
56
54
|
//#endregion
|
|
57
55
|
//#region src/secret.d.ts
|
|
58
56
|
/**
|
|
@@ -72,7 +70,6 @@ declare class SecretValue {
|
|
|
72
70
|
toJSON(): string;
|
|
73
71
|
get [Symbol.toStringTag](): string;
|
|
74
72
|
}
|
|
75
|
-
//# sourceMappingURL=secret.d.ts.map
|
|
76
73
|
//#endregion
|
|
77
74
|
//#region src/auth/types.d.ts
|
|
78
75
|
/**
|
|
@@ -104,7 +101,6 @@ interface Auth {
|
|
|
104
101
|
/** Human-readable description of this auth strategy (for logging). */
|
|
105
102
|
readonly description: string;
|
|
106
103
|
}
|
|
107
|
-
//# sourceMappingURL=types.d.ts.map
|
|
108
104
|
//#endregion
|
|
109
105
|
//#region src/types.d.ts
|
|
110
106
|
/**
|
|
@@ -116,7 +112,7 @@ declare enum Service {
|
|
|
116
112
|
NOTIFICATION = "notification",
|
|
117
113
|
A2A = "a2a",
|
|
118
114
|
EVENT = "event",
|
|
119
|
-
RSTS = "RSTS"
|
|
115
|
+
RSTS = "RSTS"
|
|
120
116
|
}
|
|
121
117
|
/**
|
|
122
118
|
* HTTP methods supported by the Safeguard API.
|
|
@@ -126,7 +122,7 @@ declare enum HttpMethod {
|
|
|
126
122
|
POST = "POST",
|
|
127
123
|
PUT = "PUT",
|
|
128
124
|
DELETE = "DELETE",
|
|
129
|
-
PATCH = "PATCH"
|
|
125
|
+
PATCH = "PATCH"
|
|
130
126
|
}
|
|
131
127
|
/**
|
|
132
128
|
* Full response from a Safeguard API call (returned when fullResponse: true).
|
|
@@ -172,7 +168,6 @@ interface SafeguardClientOptions {
|
|
|
172
168
|
/** Auto-refresh tokens before expiry. Default: true. */
|
|
173
169
|
autoRefresh?: boolean;
|
|
174
170
|
}
|
|
175
|
-
//# sourceMappingURL=types.d.ts.map
|
|
176
171
|
//#endregion
|
|
177
172
|
//#region src/errors.d.ts
|
|
178
173
|
/**
|
|
@@ -223,7 +218,6 @@ declare class TransportError extends SafeguardError {
|
|
|
223
218
|
declare class ConfigurationError extends SafeguardError {
|
|
224
219
|
constructor(message: string, options?: ErrorOptions);
|
|
225
220
|
}
|
|
226
|
-
//# sourceMappingURL=errors.d.ts.map
|
|
227
221
|
//#endregion
|
|
228
222
|
//#region src/utils.d.ts
|
|
229
223
|
/**
|
|
@@ -267,10 +261,6 @@ declare function generateCodeChallenge(verifier: string): Promise<string>;
|
|
|
267
261
|
* Generates a random state parameter for OAuth flows.
|
|
268
262
|
*/
|
|
269
263
|
declare function generateState(): string;
|
|
270
|
-
/**
|
|
271
|
-
* Extracts the `exp` claim from a JWT and returns expiresIn (seconds from now).
|
|
272
|
-
* Returns undefined if the token is not a valid JWT or has no `exp` claim.
|
|
273
|
-
*/
|
|
274
264
|
//#endregion
|
|
275
265
|
//#region src/storage/memory.d.ts
|
|
276
266
|
/**
|
|
@@ -284,7 +274,6 @@ declare class MemoryStorage implements StorageProvider {
|
|
|
284
274
|
remove(key: string): void;
|
|
285
275
|
clear(): void;
|
|
286
276
|
}
|
|
287
|
-
//# sourceMappingURL=memory.d.ts.map
|
|
288
277
|
//#endregion
|
|
289
278
|
//#region src/storage/session.d.ts
|
|
290
279
|
/**
|
|
@@ -297,7 +286,6 @@ declare class BrowserSessionStorage implements StorageProvider {
|
|
|
297
286
|
remove(key: string): void;
|
|
298
287
|
clear(): void;
|
|
299
288
|
}
|
|
300
|
-
//# sourceMappingURL=session.d.ts.map
|
|
301
289
|
//#endregion
|
|
302
290
|
//#region src/http/node.d.ts
|
|
303
291
|
/**
|
|
@@ -310,7 +298,6 @@ declare class NodeHttpClient implements HttpClient {
|
|
|
310
298
|
request(options: HttpRequestOptions): Promise<HttpResponse>;
|
|
311
299
|
dispose(): void;
|
|
312
300
|
}
|
|
313
|
-
//# sourceMappingURL=node.d.ts.map
|
|
314
301
|
//#endregion
|
|
315
302
|
//#region src/http/browser.d.ts
|
|
316
303
|
/**
|
|
@@ -324,7 +311,6 @@ declare class BrowserHttpClient implements HttpClient {
|
|
|
324
311
|
});
|
|
325
312
|
request(options: HttpRequestOptions): Promise<HttpResponse>;
|
|
326
313
|
}
|
|
327
|
-
//# sourceMappingURL=browser.d.ts.map
|
|
328
314
|
//#endregion
|
|
329
315
|
//#region src/auth/password.d.ts
|
|
330
316
|
interface PasswordAuthOptions {
|
|
@@ -343,7 +329,6 @@ declare class PasswordAuth implements Auth {
|
|
|
343
329
|
authenticate(host: string, httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
|
|
344
330
|
refreshToken(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet | null>;
|
|
345
331
|
}
|
|
346
|
-
//# sourceMappingURL=password.d.ts.map
|
|
347
332
|
//#endregion
|
|
348
333
|
//#region src/auth/certificate.d.ts
|
|
349
334
|
interface CertificateAuthOptions {
|
|
@@ -382,7 +367,6 @@ declare class CertificateAuth implements Auth {
|
|
|
382
367
|
authenticate(host: string, httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
|
|
383
368
|
refreshToken(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet | null>;
|
|
384
369
|
}
|
|
385
|
-
//# sourceMappingURL=certificate.d.ts.map
|
|
386
370
|
//#endregion
|
|
387
371
|
//#region src/auth/pkce.d.ts
|
|
388
372
|
interface PkceAuthOptions {
|
|
@@ -405,7 +389,6 @@ declare class PkceAuth implements Auth {
|
|
|
405
389
|
*/
|
|
406
390
|
authenticate(host: string, httpClient: HttpClient, storage: StorageProvider): Promise<TokenSet>;
|
|
407
391
|
}
|
|
408
|
-
//# sourceMappingURL=pkce.d.ts.map
|
|
409
392
|
//#endregion
|
|
410
393
|
//#region src/auth/pkce-noninteractive.d.ts
|
|
411
394
|
interface PkceNonInteractiveAuthOptions {
|
|
@@ -427,7 +410,6 @@ declare class PkceNonInteractiveAuth implements Auth {
|
|
|
427
410
|
get description(): string;
|
|
428
411
|
authenticate(host: string, httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
|
|
429
412
|
}
|
|
430
|
-
//# sourceMappingURL=pkce-noninteractive.d.ts.map
|
|
431
413
|
//#endregion
|
|
432
414
|
//#region src/auth/pkce-callback.d.ts
|
|
433
415
|
interface PkceCallbackResult {
|
|
@@ -446,7 +428,6 @@ interface PkceCallbackResult {
|
|
|
446
428
|
* @returns The parsed code and state, or null if not a valid callback
|
|
447
429
|
*/
|
|
448
430
|
declare function handlePkceCallback(storage: StorageProvider, url?: string): PkceCallbackResult | null;
|
|
449
|
-
//# sourceMappingURL=pkce-callback.d.ts.map
|
|
450
431
|
//#endregion
|
|
451
432
|
//#region src/auth/token.d.ts
|
|
452
433
|
interface TokenAuthOptions {
|
|
@@ -463,7 +444,6 @@ declare class TokenAuth implements Auth {
|
|
|
463
444
|
get description(): string;
|
|
464
445
|
authenticate(_host: string, _httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
|
|
465
446
|
}
|
|
466
|
-
//# sourceMappingURL=token.d.ts.map
|
|
467
447
|
//#endregion
|
|
468
448
|
//#region src/auth/anonymous.d.ts
|
|
469
449
|
/**
|
|
@@ -474,7 +454,6 @@ declare class AnonymousAuth implements Auth {
|
|
|
474
454
|
get description(): string;
|
|
475
455
|
authenticate(_host: string, _httpClient: HttpClient, _storage: StorageProvider): Promise<TokenSet>;
|
|
476
456
|
}
|
|
477
|
-
//# sourceMappingURL=anonymous.d.ts.map
|
|
478
457
|
//#endregion
|
|
479
458
|
//#region src/client.d.ts
|
|
480
459
|
/**
|
|
@@ -533,7 +512,6 @@ declare class SafeguardClient {
|
|
|
533
512
|
*/
|
|
534
513
|
invoke<T = unknown>(service: Service, method: HttpMethod, relativeUrl: string, options?: RequestOptions): Promise<T>;
|
|
535
514
|
}
|
|
536
|
-
//# sourceMappingURL=client.d.ts.map
|
|
537
515
|
//#endregion
|
|
538
516
|
//#region src/a2a/types.d.ts
|
|
539
517
|
/**
|
|
@@ -542,7 +520,7 @@ declare class SafeguardClient {
|
|
|
542
520
|
declare enum SshKeyFormat {
|
|
543
521
|
OpenSsh = "OpenSsh",
|
|
544
522
|
Ssh2 = "Ssh2",
|
|
545
|
-
Putty = "Putty"
|
|
523
|
+
Putty = "Putty"
|
|
546
524
|
}
|
|
547
525
|
/**
|
|
548
526
|
* An A2A retrievable account as returned by the discovery endpoint.
|
|
@@ -566,7 +544,7 @@ declare enum BrokeredAccessRequestType {
|
|
|
566
544
|
Token = "Token",
|
|
567
545
|
RdpFile = "RdpFile",
|
|
568
546
|
RemoteDesktop = "RemoteDesktop",
|
|
569
|
-
SshSession = "SshSession"
|
|
547
|
+
SshSession = "SshSession"
|
|
570
548
|
}
|
|
571
549
|
/**
|
|
572
550
|
* Options for creating a brokered access request.
|
|
@@ -590,7 +568,6 @@ interface BrokeredAccessResponse {
|
|
|
590
568
|
AccessToken?: string;
|
|
591
569
|
[key: string]: unknown;
|
|
592
570
|
}
|
|
593
|
-
//# sourceMappingURL=types.d.ts.map
|
|
594
571
|
//#endregion
|
|
595
572
|
//#region src/a2a/index.d.ts
|
|
596
573
|
interface A2AClientOptions {
|
|
@@ -667,4 +644,4 @@ declare class A2AClient {
|
|
|
667
644
|
}
|
|
668
645
|
//#endregion
|
|
669
646
|
export { A2AClient, type A2AClientOptions, AnonymousAuth, ApiError, type ApiErrorBody, type Auth, AuthenticationError, AuthorizationError, type BrokeredAccessRequest, BrokeredAccessRequestType, type BrokeredAccessResponse, BrowserHttpClient, BrowserSessionStorage, CertificateAuth, type CertificateAuthOptions, ConfigurationError, type HttpClient, HttpMethod, type HttpRequestOptions, type HttpResponse, MemoryStorage, NodeHttpClient, NotFoundError, PasswordAuth, type PasswordAuthOptions, PkceAuth, type PkceAuthOptions, type PkceCallbackResult, PkceNonInteractiveAuth, type PkceNonInteractiveAuthOptions, type RequestOptions, type RetrievableAccount, SafeguardClient, type SafeguardClientOptions, SafeguardError, type SafeguardResponse, SecretValue, Service, SshKeyFormat, StorageKeys, type StorageProvider, type TlsOptions, TokenAuth, type TokenAuthOptions, type TokenSet, TransportError, base64UrlEncode, buildRequestUrl, buildServiceUrl, generateCodeChallenge, generateCodeVerifier, generateState, handlePkceCallback, validateHost };
|
|
670
|
-
//# sourceMappingURL=index
|
|
647
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","names":[],"sources":["../src/http/types.ts","../src/storage/types.ts","../src/secret.ts","../src/auth/types.ts","../src/types.ts","../src/errors.ts","../src/utils.ts","../src/storage/memory.ts","../src/storage/session.ts","../src/http/node.ts","../src/http/browser.ts","../src/auth/password.ts","../src/auth/certificate.ts","../src/auth/pkce.ts","../src/auth/pkce-noninteractive.ts","../src/auth/pkce-callback.ts","../src/auth/token.ts","../src/auth/anonymous.ts","../src/client.ts","../src/a2a/types.ts","../src/a2a/index.ts"],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -683,7 +683,7 @@ var PkceNonInteractiveAuth = class {
|
|
|
683
683
|
const state = generateState();
|
|
684
684
|
const redirectUri = `http://localhost:${String(this.#callbackPort)}/callback`;
|
|
685
685
|
const server = createServer();
|
|
686
|
-
server.listen(this.#callbackPort);
|
|
686
|
+
server.listen(this.#callbackPort, "127.0.0.1");
|
|
687
687
|
const authUrl = `https://${host}/RSTS/Login?${new URLSearchParams({
|
|
688
688
|
response_type: "code",
|
|
689
689
|
client_id: "safeguard.js",
|
|
@@ -874,6 +874,8 @@ var SafeguardClient = class {
|
|
|
874
874
|
#storage;
|
|
875
875
|
#tokenSet;
|
|
876
876
|
#connected = false;
|
|
877
|
+
/** Single-flight refresh promise to prevent thundering herd on token expiry. */
|
|
878
|
+
#tokenRefreshPromise;
|
|
877
879
|
constructor(host, options) {
|
|
878
880
|
if (!host) throw new ConfigurationError("SafeguardClient requires a host");
|
|
879
881
|
if (!options.auth) throw new ConfigurationError("SafeguardClient requires an auth strategy");
|
|
@@ -1009,7 +1011,12 @@ var SafeguardClient = class {
|
|
|
1009
1011
|
if (!this.#tokenSet.expiresIn) return;
|
|
1010
1012
|
const elapsed = Date.now() - this.#tokenSet.acquiredAt;
|
|
1011
1013
|
const expiresInMs = this.#tokenSet.expiresIn * 1e3;
|
|
1012
|
-
if (elapsed + TOKEN_REFRESH_MARGIN_MS
|
|
1014
|
+
if (elapsed + TOKEN_REFRESH_MARGIN_MS < expiresInMs) return;
|
|
1015
|
+
if (this.#tokenRefreshPromise) {
|
|
1016
|
+
await this.#tokenRefreshPromise;
|
|
1017
|
+
return;
|
|
1018
|
+
}
|
|
1019
|
+
this.#tokenRefreshPromise = (async () => {
|
|
1013
1020
|
if (this.#auth.refreshToken) {
|
|
1014
1021
|
const refreshed = await this.#auth.refreshToken(this.#host, this.#httpClient, this.#storage);
|
|
1015
1022
|
if (refreshed) {
|
|
@@ -1018,6 +1025,11 @@ var SafeguardClient = class {
|
|
|
1018
1025
|
}
|
|
1019
1026
|
}
|
|
1020
1027
|
this.#tokenSet = await this.#auth.authenticate(this.#host, this.#httpClient, this.#storage);
|
|
1028
|
+
})();
|
|
1029
|
+
try {
|
|
1030
|
+
await this.#tokenRefreshPromise;
|
|
1031
|
+
} finally {
|
|
1032
|
+
this.#tokenRefreshPromise = void 0;
|
|
1021
1033
|
}
|
|
1022
1034
|
}
|
|
1023
1035
|
};
|