openid-client 6.4.1 → 6.5.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/README.md CHANGED
@@ -17,6 +17,7 @@ The following features are currently in scope and implemented in this software:
17
17
  - UserInfo and Protected Resource Requests
18
18
  - Authorization Server Issuer Identification
19
19
  - JWT Secured Introspection, Response Mode (JARM), Authorization Request (JAR), and UserInfo
20
+ - Dynamic Client Registration (DCR)
20
21
  - [Passport](https://www.passportjs.org/) Strategy
21
22
 
22
23
  ## Sponsor
@@ -45,7 +46,7 @@ Support from the community to continue maintaining and improving this module is
45
46
 
46
47
  ## [Examples](examples/README.md)
47
48
 
48
- **`example`** ESM import
49
+ **`example`** ESM import[^cjs]
49
50
 
50
51
  ```ts
51
52
  import * as client from 'openid-client'
@@ -256,4 +257,4 @@ The supported JavaScript runtimes include those that support the utilized Web AP
256
257
 
257
258
  [^universal]: Assumes runtime support of [WebCryptoAPI][] and [Fetch API][]
258
259
 
259
- [^cjs]: CJS style `let client = require('openid-client')` is possible in Node.js versions where `process.features.require_module` is `true` by default (^20.19.0 || ^22.12.0 || >= 23.0.0) or with the `--experimental-require-module` Node.js CLI flag.
260
+ [^cjs]: CJS style `let client = require('openid-client')` is possible in Node.js versions where the `require(esm)` feature is enabled by default (^20.19.0 || ^22.12.0 || >= 23.0.0).
package/build/index.d.ts CHANGED
@@ -74,7 +74,7 @@ export type ClientAuth = (as: ServerMetadata, client: ClientMetadata, body: URLS
74
74
  *
75
75
  * @see [OAuth Token Endpoint Authentication Methods](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#token-endpoint-auth-method)
76
76
  * @see [RFC 6749 - The OAuth 2.0 Authorization Framework](https://www.rfc-editor.org/rfc/rfc6749.html#section-2.3)
77
- * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
77
+ * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0-errata2.html#ClientAuthentication)
78
78
  */
79
79
  export declare function ClientSecretPost(clientSecret?: string): ClientAuth;
80
80
  /**
@@ -123,7 +123,7 @@ export declare function ClientSecretPost(clientSecret?: string): ClientAuth;
123
123
  *
124
124
  * @see [OAuth Token Endpoint Authentication Methods](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#token-endpoint-auth-method)
125
125
  * @see [RFC 6749 - The OAuth 2.0 Authorization Framework](https://www.rfc-editor.org/rfc/rfc6749.html#section-2.3)
126
- * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
126
+ * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0-errata2.html#ClientAuthentication)
127
127
  */
128
128
  export declare function ClientSecretBasic(clientSecret?: string): ClientAuth;
129
129
  /**
@@ -174,7 +174,7 @@ export declare function ClientSecretBasic(clientSecret?: string): ClientAuth;
174
174
  * @group Client Authentication Methods
175
175
  *
176
176
  * @see [OAuth Token Endpoint Authentication Methods](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#token-endpoint-auth-method)
177
- * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
177
+ * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0-errata2.html#ClientAuthentication)
178
178
  */
179
179
  export declare function ClientSecretJwt(clientSecret?: string, options?: oauth.ModifyAssertionOptions): ClientAuth;
180
180
  /**
@@ -218,7 +218,7 @@ export declare function ClientSecretJwt(clientSecret?: string, options?: oauth.M
218
218
  * @group Client Authentication Methods
219
219
  *
220
220
  * @see [OAuth Token Endpoint Authentication Methods](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#token-endpoint-auth-method)
221
- * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
221
+ * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0-errata2.html#ClientAuthentication)
222
222
  */
223
223
  export declare function None(): ClientAuth;
224
224
  /**
@@ -268,7 +268,7 @@ export declare function None(): ClientAuth;
268
268
  * @group Client Authentication Methods
269
269
  *
270
270
  * @see [OAuth Token Endpoint Authentication Methods](https://www.iana.org/assignments/oauth-parameters/oauth-parameters.xhtml#token-endpoint-auth-method)
271
- * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#ClientAuthentication)
271
+ * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0-errata2.html#ClientAuthentication)
272
272
  */
273
273
  export declare function PrivateKeyJwt(clientPrivateKey: CryptoKey | oauth.PrivateKey, options?: oauth.ModifyAssertionOptions): ClientAuth;
274
274
  /**
@@ -342,7 +342,7 @@ export declare const skipStateCheck: typeof oauth.skipStateCheck;
342
342
  * @deprecated Marked as deprecated only to make it stand out as something you
343
343
  * shouldn't use unless you've assessed the implications.
344
344
  *
345
- * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#UserInfoResponse)
345
+ * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0-errata2.html#UserInfoResponse)
346
346
  */
347
347
  export declare const skipSubjectCheck: typeof oauth.skipSubjectCheck;
348
348
  /**
@@ -730,7 +730,7 @@ export interface DiscoveryRequestOptions {
730
730
  * oauth => https://example.com/.well-known/oauth-authorization-server/pathname
731
731
  * ```
732
732
  *
733
- * @see {@link https://openid.net/specs/openid-connect-discovery-1_0.html OpenID Connect Discovery 1.0 (oidc)}
733
+ * @see {@link https://openid.net/specs/openid-connect-discovery-1_0-errata2.html OpenID Connect Discovery 1.0 (oidc)}
734
734
  * @see {@link https://www.rfc-editor.org/rfc/rfc8414.html RFC8414 - OAuth 2.0 Authorization Server Metadata (oauth)}
735
735
  */
736
736
  algorithm?: 'oidc' | 'oauth2';
@@ -770,6 +770,7 @@ export interface DiscoveryRequestOptions {
770
770
  * @see {@link allowInsecureRequests}
771
771
  * @see {@link enableNonRepudiationChecks}
772
772
  * @see {@link useCodeIdTokenResponseType}
773
+ * @see {@link useIdTokenResponseType}
773
774
  * @see {@link enableDetachedSignatureResponseChecks}
774
775
  * @see {@link useJwtResponseMode}
775
776
  */
@@ -814,7 +815,12 @@ export interface DynamicClientRegistrationRequestOptions extends DiscoveryReques
814
815
  * issued, {@link None} otherwise.
815
816
  * @param options
816
817
  *
817
- * @group Dynamic Client Registration
818
+ * @group Advanced Configuration
819
+ * @group Dynamic Client Registration (DCR)
820
+ *
821
+ * @see [RFC 7591 - OAuth 2.0 Dynamic Client Registration Protocol (DCR)](https://www.rfc-editor.org/rfc/rfc7591.html)
822
+ * @see [OpenID Connect Dynamic Client Registration 1.0 (DCR)](https://openid.net/specs/openid-connect-registration-1_0-errata2.html)
823
+ * @see [RFC 9449 - OAuth 2.0 Demonstrating Proof-of-Possession at the Application Layer (DPoP)](https://www.rfc-editor.org/rfc/rfc9449.html#name-protected-resource-access)
818
824
  */
819
825
  export declare function dynamicClientRegistration(server: URL, metadata: Partial<ClientMetadata>, clientAuthentication?: ClientAuth, options?: DynamicClientRegistrationRequestOptions): Promise<Configuration>;
820
826
  /**
@@ -1343,8 +1349,8 @@ export declare function setJwksCache(config: Configuration, jwksCache: oauth.Exp
1343
1349
  * memory cache between requests is available is not desirable.
1344
1350
  *
1345
1351
  * Note: the client only uses the authorization server's JWK Set when
1346
- * {@link enableNonRepudiationChecks}, {@link useJwtResponseMode}, or
1347
- * {@link useCodeIdTokenResponseType} is used.
1352
+ * {@link enableNonRepudiationChecks}, {@link useJwtResponseMode},
1353
+ * {@link useCodeIdTokenResponseType}, or {@link useIdTokenResponseType} is used.
1348
1354
  *
1349
1355
  * @group Advanced Configuration
1350
1356
  */
@@ -1450,7 +1456,7 @@ export declare function useJwtResponseMode(config: Configuration): void;
1450
1456
  /**
1451
1457
  * This builds on top of {@link useCodeIdTokenResponseType} and enables the
1452
1458
  * response to be validated as per the
1453
- * {@link https://openid.net/specs/openid-financial-api-part-2-1_0.html#id-token-as-detached-signature FAPI 1.0 Advanced profile}.
1459
+ * {@link https://openid.net/specs/openid-financial-api-part-2-1_0-final.html#id-token-as-detached-signature FAPI 1.0 Advanced profile}.
1454
1460
  *
1455
1461
  * @example
1456
1462
  *
@@ -1489,14 +1495,95 @@ export declare function useJwtResponseMode(config: Configuration): void;
1489
1495
  *
1490
1496
  * @group Advanced Configuration
1491
1497
  *
1492
- * @see {@link https://openid.net/specs/openid-financial-api-part-2-1_0.html#id-token-as-detached-signature ID Token as Detached Signature}
1498
+ * @see {@link https://openid.net/specs/openid-financial-api-part-2-1_0-final.html#id-token-as-detached-signature ID Token as Detached Signature}
1493
1499
  */
1494
1500
  export declare function enableDetachedSignatureResponseChecks(config: Configuration): void;
1501
+ export interface ImplicitAuthenticationResponseChecks extends Pick<AuthorizationCodeGrantChecks, 'expectedState' | 'maxAge'> {
1502
+ }
1503
+ /**
1504
+ * This method validates the authorization server's
1505
+ * {@link https://openid.net/specs/openid-connect-core-1_0-errata2.html#ImplicitFlowAuth Implicit Authentication Flow}
1506
+ * Response.
1507
+ *
1508
+ * Note:
1509
+ * {@link ServerMetadata.jwks_uri URL of the authorization server's JWK Set document}
1510
+ * must be configured.
1511
+ *
1512
+ * Note: Only `response_type=id_token` responses are supported and prior use of
1513
+ * {@link useIdTokenResponseType} is required.
1514
+ *
1515
+ * @example
1516
+ *
1517
+ * Using an incoming {@link !Request} instance
1518
+ *
1519
+ * ```ts
1520
+ * let config!: client.Configuration
1521
+ * let expectedNonce!: string
1522
+ * let request!: Request
1523
+ *
1524
+ * let idTokenClaims = await client.implicitAuthentication(
1525
+ * config,
1526
+ * request,
1527
+ * expectedNonce,
1528
+ * )
1529
+ * ```
1530
+ *
1531
+ * @example
1532
+ *
1533
+ * When using a `form_post` response mode without a {@link !Request} instance
1534
+ *
1535
+ * ```ts
1536
+ * let config!: client.Configuration
1537
+ * let expectedNonce!: string
1538
+ * let getCurrentUrl!: (...args: any) => URL
1539
+ * let getBody!: (...args: any) => Record<string, string>
1540
+ *
1541
+ * let url = getCurrentUrl()
1542
+ * url.hash = new URLSearchParams(getBody()).toString()
1543
+ *
1544
+ * let idTokenClaims = await client.implicitAuthentication(
1545
+ * config,
1546
+ * url,
1547
+ * expectedNonce,
1548
+ * )
1549
+ * ```
1550
+ *
1551
+ * @example
1552
+ *
1553
+ * In a browser environment
1554
+ *
1555
+ * ```ts
1556
+ * let config!: client.Configuration
1557
+ * let getCodeVerifierFromSession!: (...args: any) => string
1558
+ * let getCurrentUrl!: (...args: any) => URL
1559
+ *
1560
+ * let tokens = await client.authorizationCodeGrant(
1561
+ * config,
1562
+ * new URL(location.href),
1563
+ * {
1564
+ * pkceCodeVerifier: getCodeVerifierFromSession(),
1565
+ * },
1566
+ * )
1567
+ * ```
1568
+ *
1569
+ * @param currentUrl Current {@link !URL} the Authorization Server provided an
1570
+ * Authorization Response to or a {@link !Request}, the
1571
+ * {@link https://openid.net/specs/openid-connect-core-1_0-errata2.html#ImplicitAuthResponse Authentication Response Parameters}
1572
+ * are extracted from this.
1573
+ * @param expectedNonce Expected value of the `nonce` ID Token claim. This value
1574
+ * must match exactly.
1575
+ * @param checks Additional optional Implicit Authentication Response checks
1576
+ *
1577
+ * @returns ID Token Claims Set
1578
+ *
1579
+ * @group OpenID Connect 1.0
1580
+ */
1581
+ export declare function implicitAuthentication(config: Configuration, currentUrl: URL | Request, expectedNonce: string, checks?: ImplicitAuthenticationResponseChecks): Promise<oauth.IDToken>;
1495
1582
  /**
1496
1583
  * This changes the `response_type` used by the client to be `code id_token` and
1497
1584
  * expects the authorization server response passed to
1498
1585
  * {@link authorizationCodeGrant} to be one described by
1499
- * {@link https://openid.net/specs/openid-connect-core-1_0.html#HybridFlowAuth OpenID Connect 1.0 Hybrid Flow}.
1586
+ * {@link https://openid.net/specs/openid-connect-core-1_0-errata2.html#HybridFlowAuth OpenID Connect 1.0 Hybrid Flow}.
1500
1587
  *
1501
1588
  * Note:
1502
1589
  * {@link ServerMetadata.jwks_uri URL of the authorization server's JWK Set document}
@@ -1535,9 +1622,56 @@ export declare function enableDetachedSignatureResponseChecks(config: Configurat
1535
1622
  *
1536
1623
  * @group Advanced Configuration
1537
1624
  *
1538
- * @see {@link https://openid.net/specs/openid-connect-core-1_0.html#HybridFlowAuth OpenID Connect 1.0 Hybrid Flow}
1625
+ * @see {@link https://openid.net/specs/openid-connect-core-1_0-errata2.html#HybridFlowAuth OpenID Connect 1.0 Hybrid Flow}
1539
1626
  */
1540
1627
  export declare function useCodeIdTokenResponseType(config: Configuration): void;
1628
+ /**
1629
+ * This changes the `response_type` used by the client to be `id_token`, this
1630
+ * subsequently requires that the authorization server response be passed to
1631
+ * {@link implicitAuthentication} (instead of {@link authorizationCodeGrant}) and
1632
+ * for it to be one described by
1633
+ * {@link https://openid.net/specs/openid-connect-core-1_0-errata2.html#ImplicitFlowAuth OpenID Connect 1.0 Implicit Flow}.
1634
+ *
1635
+ * Note:
1636
+ * {@link ServerMetadata.jwks_uri URL of the authorization server's JWK Set document}
1637
+ * must be configured.
1638
+ *
1639
+ * @example
1640
+ *
1641
+ * Usage with a {@link Configuration} obtained through {@link discovery}
1642
+ *
1643
+ * ```ts
1644
+ * let server!: URL
1645
+ * let clientId!: string
1646
+ * let clientMetadata!: Partial<client.ClientMetadata> | undefined
1647
+ * let clientAuth = client.None()
1648
+ *
1649
+ * let config = await client.discovery(
1650
+ * server,
1651
+ * clientId,
1652
+ * clientMetadata,
1653
+ * clientAuth,
1654
+ * {
1655
+ * execute: [client.useIdTokenResponseType],
1656
+ * },
1657
+ * )
1658
+ * ```
1659
+ *
1660
+ * @example
1661
+ *
1662
+ * Usage with a {@link Configuration} instance
1663
+ *
1664
+ * ```ts
1665
+ * let config!: client.Configuration
1666
+ *
1667
+ * client.useIdTokenResponseType(config)
1668
+ * ```
1669
+ *
1670
+ * @group Advanced Configuration
1671
+ *
1672
+ * @see {@link https://openid.net/specs/openid-connect-core-1_0-errata2.html#HybridFlowAuth OpenID Connect 1.0 Hybrid Flow}
1673
+ */
1674
+ export declare function useIdTokenResponseType(config: Configuration): void;
1541
1675
  export interface AuthorizationCodeGrantChecks {
1542
1676
  /**
1543
1677
  * Expected value of the `nonce` ID Token claim. This value must match
@@ -1600,6 +1734,20 @@ export interface AuthorizationCodeGrantChecks {
1600
1734
  * )
1601
1735
  * ```
1602
1736
  *
1737
+ * @example
1738
+ *
1739
+ * Using an incoming {@link !Request} instance
1740
+ *
1741
+ * ```ts
1742
+ * let config!: client.Configuration
1743
+ * let getCodeVerifierFromSession!: (...args: any) => string
1744
+ * let request!: Request
1745
+ *
1746
+ * let tokens = await client.authorizationCodeGrant(config, request, {
1747
+ * pkceCodeVerifier: getCodeVerifierFromSession(),
1748
+ * })
1749
+ * ```
1750
+ *
1603
1751
  * @param currentUrl Current {@link !URL} the Authorization Server provided an
1604
1752
  * Authorization Response to or a {@link !Request}, the
1605
1753
  * {@link !"Authorization Code Grant"} parameters are extracted from this.
@@ -1699,6 +1847,9 @@ export declare function clientCredentialsGrant(config: Configuration, parameters
1699
1847
  * {@link ServerMetadata.authorization_endpoint URL of the authorization server's authorization endpoint}
1700
1848
  * must be configured.
1701
1849
  *
1850
+ * Note: When used, PKCE code challenge, state, and nonce parameter values must
1851
+ * always be random and be tied to the user-agent.
1852
+ *
1702
1853
  * @example
1703
1854
  *
1704
1855
  * ```ts
@@ -1895,7 +2046,7 @@ signingKey: CryptoKey | oauth.PrivateKey, options?: oauth.ModifyAssertionOptions
1895
2046
  export declare function buildAuthorizationUrlWithPAR(config: Configuration, parameters: URLSearchParams | Record<string, string>, options?: DPoPOptions): Promise<URL>;
1896
2047
  /**
1897
2048
  * Returns a URL to redirect the user-agent to after they log out to trigger
1898
- * {@link https://openid.net/specs/openid-connect-rpinitiated-1_0.html#RPLogout RP-Initiated Logout}
2049
+ * {@link https://openid.net/specs/openid-connect-rpinitiated-1_0-final.html#RPLogout RP-Initiated Logout}
1899
2050
  * at the Authorization Server.
1900
2051
  *
1901
2052
  * Note:
@@ -1945,7 +2096,7 @@ export declare function buildEndSessionUrl(config: Configuration, parameters?: U
1945
2096
  * @group OpenID Connect 1.0
1946
2097
  * @group Protected Resource Requests
1947
2098
  *
1948
- * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0.html#UserInfo)
2099
+ * @see [OpenID Connect Core 1.0](https://openid.net/specs/openid-connect-core-1_0-errata2.html#UserInfo)
1949
2100
  */
1950
2101
  export declare function fetchUserInfo(config: Configuration, accessToken: string, expectedSubject: string | typeof skipSubjectCheck, options?: DPoPOptions): Promise<oauth.UserInfoResponse>;
1951
2102
  /**
package/build/index.js CHANGED
@@ -5,7 +5,7 @@ let headers;
5
5
  let USER_AGENT;
6
6
  if (typeof navigator === 'undefined' || !navigator.userAgent?.startsWith?.('Mozilla/5.0 ')) {
7
7
  const NAME = 'openid-client';
8
- const VERSION = 'v6.4.1';
8
+ const VERSION = 'v6.5.0';
9
9
  USER_AGENT = `${NAME}/${VERSION}`;
10
10
  headers = { 'user-agent': USER_AGENT };
11
11
  }
@@ -754,8 +754,9 @@ export function enableNonRepudiationChecks(config) {
754
754
  }
755
755
  export function useJwtResponseMode(config) {
756
756
  checkConfig(config);
757
- if (int(config).hybrid) {
758
- throw e('JARM cannot be combined with a hybrid response mode', undefined, oauth.UNSUPPORTED_OPERATION);
757
+ const { hybrid, implicit } = int(config);
758
+ if (hybrid || implicit) {
759
+ throw e('JARM cannot be combined with a hybrid or implicit response types', undefined, oauth.UNSUPPORTED_OPERATION);
759
760
  }
760
761
  int(config).jarm = (authorizationResponse, expectedState) => validateJARMResponse(config, authorizationResponse, expectedState);
761
762
  }
@@ -765,13 +766,88 @@ export function enableDetachedSignatureResponseChecks(config) {
765
766
  }
766
767
  int(config).hybrid = (authorizationResponse, expectedNonce, expectedState, maxAge) => validateCodeIdTokenResponse(config, authorizationResponse, expectedNonce, expectedState, maxAge, true);
767
768
  }
769
+ export async function implicitAuthentication(config, currentUrl, expectedNonce, checks) {
770
+ checkConfig(config);
771
+ if (!(currentUrl instanceof URL) &&
772
+ !webInstanceOf(currentUrl, 'Request')) {
773
+ throw CodedTypeError('"currentUrl" must be an instance of URL, or Request', ERR_INVALID_ARG_TYPE);
774
+ }
775
+ if (typeof expectedNonce !== 'string') {
776
+ throw CodedTypeError('"expectedNonce" must be a string', ERR_INVALID_ARG_TYPE);
777
+ }
778
+ const { as, c, fetch, tlsOnly, timeout, decrypt, implicit, jwksCache } = int(config);
779
+ if (!implicit) {
780
+ throw new TypeError('implicitAuthentication() cannot be used by clients using flows other than response_type=id_token');
781
+ }
782
+ let params;
783
+ if (!(currentUrl instanceof URL)) {
784
+ const request = currentUrl;
785
+ switch (request.method) {
786
+ case 'GET':
787
+ params = new URLSearchParams(new URL(request.url).hash.slice(1));
788
+ break;
789
+ case 'POST':
790
+ params = new URLSearchParams(await oauth.formPostResponse(request));
791
+ break;
792
+ default:
793
+ throw CodedTypeError('unexpected Request HTTP method', ERR_INVALID_ARG_VALUE);
794
+ }
795
+ }
796
+ else {
797
+ params = new URLSearchParams(currentUrl.hash.slice(1));
798
+ }
799
+ try {
800
+ {
801
+ const decoy = new URLSearchParams(params);
802
+ decoy.delete('id_token');
803
+ oauth.validateAuthResponse({
804
+ ...as,
805
+ authorization_response_iss_parameter_supported: undefined,
806
+ }, c, decoy, checks?.expectedState);
807
+ }
808
+ {
809
+ const decoy = new Response(JSON.stringify({
810
+ access_token: 'decoy',
811
+ token_type: 'bearer',
812
+ id_token: params.get('id_token'),
813
+ }), {
814
+ headers: new Headers({ 'content-type': 'application/json' }),
815
+ });
816
+ const ref = await oauth.processAuthorizationCodeResponse(as, c, decoy, {
817
+ expectedNonce,
818
+ maxAge: checks?.maxAge,
819
+ [oauth.jweDecrypt]: decrypt,
820
+ });
821
+ await oauth.validateApplicationLevelSignature(as, decoy, {
822
+ [oauth.customFetch]: fetch,
823
+ [oauth.allowInsecureRequests]: !tlsOnly,
824
+ headers: new Headers(headers),
825
+ signal: signal(timeout),
826
+ [oauth.jwksCache]: jwksCache,
827
+ });
828
+ return oauth.getValidatedIdTokenClaims(ref);
829
+ }
830
+ }
831
+ catch (err) {
832
+ errorHandler(err);
833
+ }
834
+ }
768
835
  export function useCodeIdTokenResponseType(config) {
769
836
  checkConfig(config);
770
- if (int(config).jarm) {
771
- throw e('"code id_token" response type cannot be combined with JARM', undefined, oauth.UNSUPPORTED_OPERATION);
837
+ const { jarm, implicit } = int(config);
838
+ if (jarm || implicit) {
839
+ throw e('"code id_token" response type cannot be combined with JARM or implicit response type', undefined, oauth.UNSUPPORTED_OPERATION);
772
840
  }
773
841
  int(config).hybrid = (authorizationResponse, expectedNonce, expectedState, maxAge) => validateCodeIdTokenResponse(config, authorizationResponse, expectedNonce, expectedState, maxAge, false);
774
842
  }
843
+ export function useIdTokenResponseType(config) {
844
+ checkConfig(config);
845
+ const { jarm, hybrid } = int(config);
846
+ if (jarm || hybrid) {
847
+ throw e('"id_token" response type cannot be combined with JARM or hybrid response type', undefined, oauth.UNSUPPORTED_OPERATION);
848
+ }
849
+ int(config).implicit = true;
850
+ }
775
851
  function stripParams(url) {
776
852
  url = new URL(url);
777
853
  url.search = '';
@@ -795,18 +871,32 @@ export async function authorizationCodeGrant(config, currentUrl, checks, tokenEn
795
871
  }
796
872
  let authResponse;
797
873
  let redirectUri;
798
- const { as, c, auth, fetch, tlsOnly, jarm, hybrid, nonRepudiation, timeout, decrypt } = int(config);
874
+ const { as, c, auth, fetch, tlsOnly, jarm, hybrid, nonRepudiation, timeout, decrypt, implicit } = int(config);
799
875
  if (options?.flag === retry) {
800
876
  authResponse = options.authResponse;
801
877
  redirectUri = options.redirectUri;
802
878
  }
803
879
  else {
804
- let request;
805
880
  if (!(currentUrl instanceof URL)) {
806
- if (currentUrl.method === 'POST') {
807
- request = currentUrl;
808
- }
881
+ const request = currentUrl;
809
882
  currentUrl = new URL(currentUrl.url);
883
+ switch (request.method) {
884
+ case 'GET':
885
+ break;
886
+ case 'POST':
887
+ const params = new URLSearchParams(await oauth.formPostResponse(request));
888
+ if (hybrid) {
889
+ currentUrl.hash = params.toString();
890
+ }
891
+ else {
892
+ for (const [k, v] of params.entries()) {
893
+ currentUrl.searchParams.append(k, v);
894
+ }
895
+ }
896
+ break;
897
+ default:
898
+ throw CodedTypeError('unexpected Request HTTP method', ERR_INVALID_ARG_VALUE);
899
+ }
810
900
  }
811
901
  redirectUri = stripParams(currentUrl);
812
902
  switch (true) {
@@ -814,14 +904,16 @@ export async function authorizationCodeGrant(config, currentUrl, checks, tokenEn
814
904
  authResponse = await jarm(currentUrl, checks?.expectedState);
815
905
  break;
816
906
  case !!hybrid:
817
- authResponse = await hybrid(request || currentUrl, checks?.expectedNonce, checks?.expectedState, checks?.maxAge);
907
+ authResponse = await hybrid(currentUrl, checks?.expectedNonce, checks?.expectedState, checks?.maxAge);
818
908
  break;
909
+ case !!implicit:
910
+ throw new TypeError('authorizationCodeGrant() cannot be used by response_type=id_token clients');
819
911
  default:
820
912
  try {
821
913
  authResponse = oauth.validateAuthResponse(as, c, currentUrl.searchParams, checks?.expectedState);
822
914
  }
823
915
  catch (err) {
824
- return errorHandler(err);
916
+ errorHandler(err);
825
917
  }
826
918
  }
827
919
  }
@@ -962,7 +1054,7 @@ export async function clientCredentialsGrant(config, parameters, options) {
962
1054
  }
963
1055
  export function buildAuthorizationUrl(config, parameters) {
964
1056
  checkConfig(config);
965
- const { as, c, tlsOnly, hybrid, jarm } = int(config);
1057
+ const { as, c, tlsOnly, hybrid, jarm, implicit } = int(config);
966
1058
  const authorizationEndpoint = oauth.resolveEndpoint(as, 'authorization_endpoint', false, tlsOnly);
967
1059
  parameters = new URLSearchParams(parameters);
968
1060
  if (!parameters.has('client_id')) {
@@ -970,7 +1062,10 @@ export function buildAuthorizationUrl(config, parameters) {
970
1062
  }
971
1063
  if (!parameters.has('request_uri') && !parameters.has('request')) {
972
1064
  if (!parameters.has('response_type')) {
973
- parameters.set('response_type', hybrid ? 'code id_token' : 'code');
1065
+ parameters.set('response_type', hybrid ? 'code id_token' : implicit ? 'id_token' : 'code');
1066
+ }
1067
+ if (implicit && !parameters.has('nonce')) {
1068
+ throw CodedTypeError('response_type=id_token clients must provide a nonce parameter in their authorization request parameters', ERR_INVALID_ARG_VALUE);
974
1069
  }
975
1070
  if (jarm) {
976
1071
  parameters.set('response_mode', 'jwt');
@@ -1075,7 +1170,7 @@ export async function fetchUserInfo(config, accessToken, expectedSubject, option
1075
1170
  }
1076
1171
  errorHandler(err);
1077
1172
  }
1078
- getContentType(response) === 'application/jwt' &&
1173
+ oauth.getContentType(response) === 'application/jwt' &&
1079
1174
  (await nonRepudiation?.(response));
1080
1175
  return result;
1081
1176
  }
@@ -1102,7 +1197,7 @@ export async function tokenIntrospection(config, token, parameters) {
1102
1197
  [oauth.jweDecrypt]: decrypt,
1103
1198
  })
1104
1199
  .catch(errorHandler);
1105
- getContentType(response) === 'application/token-introspection+jwt' &&
1200
+ oauth.getContentType(response) === 'application/token-introspection+jwt' &&
1106
1201
  (await nonRepudiation?.(response));
1107
1202
  return result;
1108
1203
  }
@@ -1167,7 +1262,4 @@ export async function fetchProtectedResource(config, accessToken, url, method, b
1167
1262
  }
1168
1263
  return result;
1169
1264
  }
1170
- function getContentType(response) {
1171
- return response.headers.get('content-type')?.split(';')[0];
1172
- }
1173
1265
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
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": "openid-client",
3
- "version": "6.4.1",
3
+ "version": "6.5.0",
4
4
  "description": "OAuth 2 / OpenID Connect Client API for JavaScript Runtimes",
5
5
  "keywords": [
6
6
  "access token",
@@ -86,7 +86,7 @@
86
86
  },
87
87
  "dependencies": {
88
88
  "jose": "^6.0.10",
89
- "oauth4webapi": "^3.4.0"
89
+ "oauth4webapi": "^3.5.1"
90
90
  },
91
91
  "devDependencies": {
92
92
  "@koa/cors": "^5.0.0",
@@ -95,28 +95,27 @@
95
95
  "@types/express": "^5.0.1",
96
96
  "@types/express-session": "^1.18.1",
97
97
  "@types/koa__cors": "^5.0.0",
98
- "@types/node": "^22.13.14",
98
+ "@types/node": "^22.15.3",
99
99
  "@types/passport": "^1.0.17",
100
100
  "@types/qunit": "^2.19.12",
101
101
  "archiver": "^7.0.1",
102
- "ava": "^6.2.0",
102
+ "ava": "^6.3.0",
103
103
  "chrome-launcher": "^1.1.2",
104
- "edge-runtime": "^4.0.1",
105
- "esbuild": "^0.25.1",
106
- "ky": "^1.7.5",
107
- "oidc-provider": "^8.8.1",
104
+ "esbuild": "^0.25.3",
105
+ "ky": "^1.8.1",
106
+ "oidc-provider": "^9.1.1",
108
107
  "patch-package": "^8.0.0",
109
108
  "prettier": "^3.5.3",
110
109
  "prettier-plugin-jsdoc": "^1.3.2",
111
- "puppeteer-core": "^24.4.0",
110
+ "puppeteer-core": "^24.8.0",
112
111
  "qunit": "^2.24.1",
113
112
  "raw-body": "^3.0.0",
114
113
  "selfsigned": "^2.4.1",
115
- "tsx": "^4.19.3",
114
+ "tsx": "^4.19.4",
116
115
  "typedoc": "0.27.9",
117
116
  "typedoc-plugin-markdown": "4.4.1",
118
117
  "typedoc-plugin-mdn-links": "4.0.8",
119
- "typescript": "^5.8.2",
118
+ "typescript": "^5.8.3",
120
119
  "undici": "^6.21.2"
121
120
  }
122
121
  }