OpenID Connect Client
The module tries to link a new external login to an existing account with the same email address. Someone could take over an existing account and change or add data. They could not take over the main administrator account.
- Who could do thisAnyone visiting the site. No login needed.
- Does it apply to youThe site is set up to use an external login service that does not verify the email address of the user.
- Has it been used in attacksNo sign of it.
- How urgentDrupal rates this moderately critical. Include it in your next routine update, within the month.
Tell your developerUpdate OpenID Connect Client to 2.3.1.
For developers: what the fix changed
The fix adds a `link_existing_account` setting (defaulting to false) checked in `OpenidConnectController::authenticate()` and introduces an `isEmailVerified()` check in `LinkExistingAccountSubscriber::linkAccountByEmail()` and `UpdateUserSubscriber::onUserUpdate()` to prevent unverified emails from taking over existing accounts.
Also in this release The release also fixes login redirects not preserving query parameters, fixes unwanted redirects on non-HTML requests, adds typehints, updates development dependencies, and modifies DDEV configurations.
.ddev/config.yaml+1 −1.ddev/docker-compose.keycloak.yaml+5 −7.ddev/docker-compose.web.yaml+4 −4.ddev/githooks/commit-msg+8 −12.ddev/githooks/pre-commit+21 −9.ddev/keycloak/clients/drupal.json+61 −0.ddev/keycloak/realms/oidc.json+0 −0.gitattributes+5 −0.gitignore+0 −1CHANGELOG.md+13 −0composer.json+16 −13config/install/oidc.settings.yml+1 −0 fix