I was using OpenID Connect with mediawiki 1.28.2. For some reason I was installing jumbojett/openid-connect-php:0.1.0 manually during installation. Everything was working fine.
With the update to 1.29.1 I figured out that this line was unnessicary because the dependencies are already listed in the composer.json coming with this extension. So I removed it from my Dockerfile (I'm using Docker).
After installation, login didn't work. I switched back to my 1.28.2 build (worked before), removed the same line from my Dockerfile. Similar issue.
I came to the conclusion that the version of jumbojett/openid-connect-php was causing this issue.
I temporarily solved it by editing the composer.json of the "OpenID Connect" extension, requiring version 0.1.0 instead of *.
Does anybody have the same issue?
----------
concrete information:
oAuth server: Gluu Identity Appliance 2.4.4.sp2 (shoudn't matter I guess)
I have this on for debugging
$wgDebugToolbar = true;
$wgDevelopmentWarnings = true;
$wgShowExceptionDetails = true;
$wgShowDBErrorBacktrace = true;
$wgShowSQLErrors = true;
--------------------------------------------------
mw vers: 1.28.2
OpenID vers: 3.0 (648beef)
Pluggable Auth vers: 2.0 (cdb0435)
jumbojett/openid-connect-php:0.1.0:
- works fine
jumbojett/openid-connect-php:0.3.0:
- doesn't work
- get oAuth loginpage if cookie isn't set
- get redirected to "http://wiki.local/index.php/Spezial:PluggableAuthLogin?code=..." (url includes user_id etc.) if oAuth cookie is set
- get this error message at the top of the page 2x:
"Notice: Did not find alias for special page 'PluggableAuthLogin'. Perhaps no aliases are defined for it? [Called from SpecialPageFactory::getLocalNameFor in /var/www/html/wiki/includes/specialpage/SpecialPageFactory.php at line 692] in /var/www/html/wiki/includes/debug/MWDebug.php on line 311"
--------------------------------------------------
mw vers: 1.29.1
OpenID vers: 4.0 (648beef)
Pluggable Auth vers: 4.0 (cdb0435)
jumbojett/openid-connect-php:0.1.0:
- seems to work
jumbojett/openid-connect-php:0.3.0:
- doesn't work
- get oAuth loginpage if cookie isn't set
- get redirected to "http://wiki.local/index.php/Spezial:PluggableAuthLogin?code=..." (url includes user_id etc.) if oAuth cookie is set
- no error visible
- from debug log:
OpenIDConnectClientException: Client authentication failed (e.g. unknown client, no client authentication included, or unsupported authentication method). The authorization server MAY return an HTTP 401 (Unauthorized) status code to indicate which HTTP authentication schemes are supported. If the client attempted to authenticate via the Authorization request header field, the authorization server MUST respond with an HTTP 401 (Unauthorized) status code, and include the WWW-Authenticate response header field matching the authentication scheme used by the client. in /var/www/html/wiki/vendor/jumbojett/openid-connect-php/OpenIDConnectClient.php:228
Stack trace:
#0 /var/www/html/wiki/extensions/OpenIDConnect/OpenIDConnect.class.php(151): OpenIDConnectClient->authenticate()
#1 /var/www/html/wiki/extensions/PluggableAuth/PluggableAuthLogin.php(45): OpenIDConnect->authenticate(NULL, NULL, NULL, NULL, NULL)
#2 /var/www/html/wiki/includes/specialpage/SpecialPage.php(522): PluggableAuthLogin->execute(NULL)
#3 /var/www/html/wiki/includes/specialpage/SpecialPageFactory.php(578): SpecialPage->run(NULL)
#4 /var/www/html/wiki/includes/MediaWiki.php(287): SpecialPageFactory::executePath(Object(Title), Object(RequestContext))
#5 /var/www/html/wiki/includes/MediaWiki.php(862): MediaWiki->performRequest()
#6 /var/www/html/wiki/includes/MediaWiki.php(523): MediaWiki->main()
#7 /var/www/html/wiki/index.php(43): MediaWiki->run()
#8 {main}