-
Notifications
You must be signed in to change notification settings - Fork 6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Consider removing com.nimbusds:oauth2-oidc-sdk dependency #14245
Comments
The |
I'll add my 5 cents. The mentioned unexpected downgrade of The downgrade made in The author of I'm also not sure that Maybe it's worth to upgrade to the latest version of Is there any particular reason why |
We should strongly consider removing the
com.nimbusds:oauth2-oidc-sdk
dependency as it has caused a number of issues over the years ever since we added it's usage in the OAuth2 support.The root issue is the result of the out-of-sync release process used for the
oauth2-oidc-sdk
andnimbus-jose-jwt
artifacts. Sinceoauth2-oidc-sdk
depends onnimbus-jose-jwt
, it's important to keep the versions of these artifacts in sync - only ifoauth2-oidc-sdk
is being used. However, there are cases where this poses to be a challenge, when artifacts are unexpectedly downgraded as described in this comment. As a result, we're also forced to downgrade versions to prevent dependency convergence, and this is not ideal as we should always strive to be using the latest versions as a best practice.The support overhead that
com.nimbusds:oauth2-oidc-sdk
dependency has added over the years has outweighed the value of reuse of the library, so I recommend we remove the use of the library altogether and only depend oncom.nimbusds:nimbus-jose-jwt
and ensure we're always on the latest version.We are currently using
com.nimbusds:oauth2-oidc-sdk
in the following classes:OAuth2ErrorResponseErrorHandler
ClientRegistrations
DefaultReactiveOAuth2UserService
OAuth2AccessTokenResponseBodyExtractor
NimbusOpaqueTokenIntrospector
NimbusReactiveOpaqueTokenIntrospector
After reviewing the code in the above classes, I believe updating the code with our own implementation would be minimal effort and it ultimately would save us from any further support overhead.
Related gh-13843, gh-13990
The text was updated successfully, but these errors were encountered: