Error
- mwversion: 1.44.0-wmf.19
- reqId: 1e1f2ab2-8a69-4fc3-8695-e4470eea6964
- Find reqId in Logstash
[{reqId}] {exception_url} Wikimedia\NormalizedException\NormalizedException: Authentication failed because of inconsistent provider array| Reedy | |
| Mar 5 2025, 11:08 PM |
| F58620272: Screenshot Capture - 2025-03-06 - 16-48-48.png | |
| Mar 6 2025, 8:15 PM |
[{reqId}] {exception_url} Wikimedia\NormalizedException\NormalizedException: Authentication failed because of inconsistent provider arrayThis is a security check introduced during the SUL3 project to make sure authentication configuration cannot change mid-authentication (the likely cause would be some bug in how we determine whether a user is opted into SUL3, but it could also be caused by a deployment changing auth config while someone is going through login/signup).
There have been two small spikes (logstash):
The old provider array is
preauth: U...(private), CentralAuthSharedDomainPreAuthenticationProvider, AccountCreationEventProvider primaryauth: CentralAuthTemporaryPasswordPrimaryAuthenticationProvider, CentralAuthRedirectingPrimaryAuthenticationProvider, CentralAuthPrimaryAuthenticationProvider secondaryauth: CampaignsSecondaryAuthenticationProvider, ResetPasswordSecondaryAuthenticationProvider, EmailNotificationSecondaryAuthenticationProvider
The new provider array is
preauth: ThrottlePreAuthenticationProvider, G...(private), U...(private), SpamBlacklistPreAuthenticationProvider, TitleBlacklistPreAuthenticationProvider, AntiSpoofPreAuthenticationProvider, CentralAuthSharedDomainPreAuthenticationProvider, AccountCreationEventProvider, IPReputation\PreAuthenticationProvider, AbuseFilterPreAuthenticationProvider, CaptchaPreAuthenticationProvider primaryauth: CentralAuthTemporaryPasswordPrimaryAuthenticationProvider, CentralAuthRedirectingPrimaryAuthenticationProvider, CentralAuthPrimaryAuthenticationProvider, LocalPasswordPrimaryAuthenticationProvider secondaryauth CheckBlocksSecondaryAuthenticationProvider, CentralAuthSecondaryAuthenticationProvider, CampaignsSecondaryAuthenticationProvider OATHAuth\\SecondaryAuthenticationProvider, ResetPasswordSecondaryAuthenticationProvider, EmailNotificationSecondaryAuthenticationProvider
which looks like SUL3 flipping from enabled to disabled mid-login (on the local domain). We are supposed to have explicit usesul3 query flags to prevent that, maybe there's something wrong with that?
(Also I think U...(private) should be disabled for SUL3 login on the local domain.)
I think it happens when the user's IP changes mid-authentication, and they take more than 5 minutes so the usesul3 cookie expires. I confirmed that we don't set usesul3=1 in the return URL, we should fix that.
Change #1125496 had a related patch set uploaded (by D3r1ck01; author: Derick Alangi):
[mediawiki/extensions/CentralAuth@master] SUL3: Attach SUL mode to the return URL of local wiki
I guess I just assumed AuthPreserveQueryParams would handle this (since we do call it when generating the return URL) but then there is no reason for the usesul3 query parameter to be set on the initial request to the login page, where we are generating the return URL.
Change #1125496 merged by jenkins-bot:
[mediawiki/extensions/CentralAuth@master] SUL3: Attach SUL mode to the return URL of local wiki
Change #1125643 had a related patch set uploaded (by Gergő Tisza; author: Gergő Tisza):
[mediawiki/extensions/CentralAuth@master] Simplify return URL parameter handling
Change #1126049 had a related patch set uploaded (by Gergő Tisza; author: Derick Alangi):
[mediawiki/extensions/CentralAuth@wmf/1.44.0-wmf.19] SUL3: Attach SUL mode to the return URL of local wiki
Change #1126049 merged by jenkins-bot:
[mediawiki/extensions/CentralAuth@wmf/1.44.0-wmf.19] SUL3: Attach SUL mode to the return URL of local wiki
Mentioned in SAL (#wikimedia-operations) [2025-03-10T14:49:53Z] <tgr@deploy2002> tgr: Backport for [[gerrit:1126050|SpecialCentralAutoLogin: Handle nullable wiki ID (T388252)]], [[gerrit:1126049|SUL3: Attach SUL mode to the return URL of local wiki (T388067)]], [[gerrit:1126051|Log and add user IDs that mismatch in the runtime exception (T388177)]] synced to the testservers (https://wikitech.wikimedia.org/wiki/Mwdebug)
Mentioned in SAL (#wikimedia-operations) [2025-03-10T14:58:12Z] <tgr@deploy2002> Finished scap sync-world: Backport for [[gerrit:1126050|SpecialCentralAutoLogin: Handle nullable wiki ID (T388252)]], [[gerrit:1126049|SUL3: Attach SUL mode to the return URL of local wiki (T388067)]], [[gerrit:1126051|Log and add user IDs that mismatch in the runtime exception (T388177)]] (duration: 15m 48s)
Change #1125643 merged by jenkins-bot:
[mediawiki/extensions/CentralAuth@master] Simplify return URL parameter handling