mirror of https://github.com/ghostfolio/ghostfolio
You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
6.5 KiB
6.5 KiB
Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
Unreleased
[0.1.2] - 2024-02-08
Fixed
- Fixed intermittent "Failed to obtain access token" error by updating
oauthdependency from 0.9.x to 0.10.x. This error seems to occur more frequently on fast connections which get reset after receiving an access token response.
0.1.1 - 2021-11-29
Added
- Support for
promptoption toauthenticate().
0.1.0 - 2021-11-17
Added
- Parsing
profile.usernamefrom standard claims. - Parsing
profile.emailsfrom standard claims. - Support for
loginHintoptions toauthenticate(). - Support for
stateobject passed as option toauthenticate, which will be persisted in the session by state store. - Support for
responseModeoptions toStrategyconstructor. - Support for
claimsoptions toStrategyconstructor. - Added
customHeadersoption toStrategyconstructor, matching functionality inpassport-oauth2. - Added
proxyoption toStrategyconstructor, which can be set totrueto indicate the app is behind a front-facing proxy. Used when resolving relative redirect URIs to an absolute URI. - Added
agentoption toStrategyconstructor, used to controlhttp.Agentbehavior. - 5-arity form of
verifyfunction invoked with (iss,profile,contextidToken,cb) arguments. - 9-arity form of
verifyfunction invoked with (iss,uiProfile,idProfile,context,idToken,accessToken,refreshToken,params,cb) arguments. - Added
maxAgeandnonceproperties to state stored in session. - Added
issuedproperty to state stored in session, only whenmaxAgeoption is used. - Parsing of errors from token endpoint.
Changed
- By default, profile is parsed from ID token and UserInfo is not fetched, optimizing for network latency.
- The 3-arity form of
verifyfunction now invoked with (iss,profile,cb) arguments, rather than (iss,sub,cb). - The 4-arity form of
verifyfunction now invoked with (iss,profile,context,cb) arguments, rather than (iss,sub,profile,cb). - The 7-arity form of
verifyfunction now invoked with (iss,profile,context,idToken,accessToken,refreshToken,cb) arguments, rather than (iss,sub,profile,accessToken,refreshToken,params,cb). - The 8-arity form of
verifyfunction now invoked with (iss,profile,context,idToken,accessToken,refreshToken,params,cb) arguments, rather than (iss,sub,profile,claims,accessToken,refreshToken,params,cb). promptoption can now take any value, rather than just defined values, in order to support values defined by extensions.displayoption can now take any value, rather than just defined values, in order to support values defined by extensions.ui_localsoption toStrategyconstructor renamed touiLocales.login_hintoption toStrategyconstructor renamed tologinHint.max_ageoption toStrategyconstructor renamed tomaxAge.acr_valuesoption toStrategyconstructor renamed toacrValues.id_token_hintoption toStrategyconstructor renamed toidTokenHint.Strategyconstructor no longer requires aclientSecretoption.info.statesupplied tosuccess()action contains only app-level state, no longer contains state internal to the strategy (handle, etc).- Treat invalid
issclaim as an authentication failure rather than an error. - Treat invalid
audclaim as an authentication failure rather than an error. - Treat invalid
azpclaim as an authentication failure rather than an error. - Treat expired
expclaim as an authentication failure rather than an error. - Treat invalid
nonceclaim as an authentication failure rather than an error. StateStore#store()function signature now only supports single variation with arguments (req,ctx,state,meta,cb), as opposed to previous four, three, and two argument variations.- Callback passed to
StateStore#store()now expected to be involved with(err, ctx, state), rather than(err, ok, state), wherectxis an object, rather than a boolean, and contains the protocol context needed to validate the authentication response. skipUserProfileoption, when set to a function, is now invoked withreq,claimsarguments, rather thaniss,sub.- Switched to using
OAuth2#get, fromOAuth2#_request, when making UserInfo request. As a result,Accept: 'application/jsonheader no longer sent. This header isn't needed, per spec.
Removed
- Removed support for OpenID Connect Discovery and Dynamic Registration, as it is largely unused and the functionality would be better suited in a different package.
- Removed the
schema=openidparameter when making a request to the UserInfo endpoint. The last draft specification to include this was 24. - Removed capability to pass
nonceoption as string or number values. - Removed the 6-arity form of
verifyfunction which was invoked with (iss,sub,profile,accessToken,refreshToken,cb) arguments. - Removed
issuer,authorizationURL,tokenURL,userInfoURL,clientID, andcallbackURLfrom state stored in session. This information is redundant as state is stored with a key derived from the issuer. - Removed
clientSecretproperty from state stored in session. - Removed
paramsproperty, which contained all authentication request parameters, from state stored in session. Most of these parameters are not required to validate the authentication response and this minimizes the size of session data. - Removed
timestampproperty from state stored in session.
Fixed
- Correctly validating that an
azpclaim is present if the ID token contains multiple audiences. - ID token expiration check is inclusive of the current time.
0.0.2 - 2017-02-23
0.0.1 - 2013-02-16
- Initial release.