Page MenuHomePhabricator

Allow to use User pages as OpenIDs even if user is using OpenID already
Closed, ResolvedPublic

Description

Author: sergey.chernyshev

Description:
Currently, users can't use their user page URLs on site A as OpenID on site B if they login to site A using OpenID - some users might want to do that for vanity purposes or whatever (because one person can have multiple OpenID URLs).

To enable this, we need:

  • to have adding openid.server and openid2.provider to be independent from having an OpenID url
  • to allow logging to Special:OpenIDServer same way as logging in to the web site instead of just having an option to enter password.

Version: unspecified
Severity: enhancement
URL: http://www.mediawiki.org/wiki/Extension:OpenID

Details

Reference
bz18635

Event Timeline

bzimport raised the priority of this task from to Medium.Nov 21 2014, 10:34 PM
bzimport set Reference to bz18635.

ipatrol6010 wrote:

I wouldn't recommend this. This isn't our job and we don't provide any uniqueness assurance. Let's stick to what we're supposed to be doing, not becoming a general web service.

sergey.chernyshev wrote:

I think you're talking about Wikimedia wikis - I agree that Wikimedia might not want to have this enabled, but other wikis might find this feature useful.

(In reply to comment #0)

Currently, users can't use their user page URLs on site A as OpenID on site B
if they login to site A using OpenID - some users might want to do that for
vanity purposes or whatever (because one person can have multiple OpenID URLs).

For openid-php-openid-782224d (taken from [1]) and OpenID-MediaWiki-1.16-r66255 [2] I created a patch which allows this per-wiki.

  1. introduced a new switch

/**

  • Allow to use User pages as OpenIDs even if user is using OpenID already *
  • If true, users can use their user page URLs of this site A as OpenID

on another site B

$wgOpenIDAllowServingOpenIDUserAccounts = true;

  1. renamed the README file of the MediaWiki extension to

README.OpenID-mediawiki-extension - to avoid overwriting when merging with
the openid-php files, as currently suggested in the documentation

  1. made everything working in MediaWiki 1.16.2 under PHP 5.3.5 (the patch fixes "Call-time pass-by-reference is deprecated" error when using in PHP 5.3.x [3])
  1. complete patched code

4.1 OpenID__openid-php-openid-782224d_plus_MW1.16-r66255 (original code
from openid-php and OpenID-MW extension [1] plus [2]
4.2 OpenID (patched version; on request)
4.3 diff between 4.1 -> 4.2 (attached here)

[1] http://github.com/openid/php-openid/downloads (https://github.com/openid/php-openid/zipball/2.2.2)
[2] http://www.mediawiki.org/wiki/Extension:OpenID (http://upload.wikimedia.org/ext-dist/OpenID-MW1.16-r66255.tar.gz)
[3] https://github.com/openid/php-openid/issues#issue/8 "Call-time pass-by-reference is deprecated"

Created attachment 8137
patch for (openid-php 2.2.2 and OpenID Mediawiki extension 1.16.x) 1.allow openid accounts work as openid provider url 2. fix "deprecated" error in PHP 5.3.x

attachment z.diff ignored as obsolete

Created attachment 8348
see bug 27581

Attached: