Describe the bug
In 6.0.1 (#109), discovery construction changed from string concatenation to new URL(): Issuer.discover((new URL('/.well-known/openid-configuration', issuer)).href).
A path that starts with / is treated as absolute, so the issuer’s path is replaced instead of appended.
Reproduction Steps?
- Install
@okta/oidc-middleware@6.0.1.
- Create ExpressOIDC with a custom authorization server issuer:
const { ExpressOIDC } = require('@okta/oidc-middleware');
const oidc = new ExpressOIDC({
issuer: 'https://{yourOktaDomain}/oauth2/default',
client_id: '{clientId}',
client_secret: '{clientSecret}',
appBaseUrl: 'https://{yourDomain}',
});
oidc.on('error', err => console.error(err));
- Observe the discovery request (or the error event). The client requests
https://{yourOktaDomain}/.well-known/openid-configuration instead of https://{yourOktaDomain}/oauth2/default/.well-known/openid-configuration
SDK Versions
@okta/oidc-middleware: 6.0.1
Node: 20+
Regression vs: 6.0.0 / 5.5.1
Additional Information
No response
Describe the bug
In 6.0.1 (#109), discovery construction changed from string concatenation to new URL():
Issuer.discover((new URL('/.well-known/openid-configuration', issuer)).href).A path that starts with
/is treated as absolute, so the issuer’s path is replaced instead of appended.Reproduction Steps?
@okta/oidc-middleware@6.0.1.https://{yourOktaDomain}/.well-known/openid-configurationinstead ofhttps://{yourOktaDomain}/oauth2/default/.well-known/openid-configurationSDK Versions
@okta/oidc-middleware: 6.0.1
Node: 20+
Regression vs: 6.0.0 / 5.5.1
Additional Information
No response