Extension talk:OpenID/LQT Archive 1

I removed links to two sites that use the shitty old MW patch. It only works for MW 1.4.x, it's invasive, and it breaks your user database. Don't use it! --207.134.56.158 14:40, 21 February 2007 (UTC)

The mentioned OpenID http://wikitravel.org/en/User:Evan does not seem to work. E.g. jyte.com says "Unable to find your OpenID server" and I could not find any openid related meta data on the page 83.135.213.203 00:49, 23 February 2007 (UTC)


 * I don't think there's a good reason for you to be trying to log in to sites with my OpenID. However, I switched all my Wikitravel accounts to use OpenID, so that user page is no longer a valid OpenID. -- wikitravel:User:Evan 00:37, 26 February 2007 (UTC)

I am using Mediawiki 1.9.3. I created the table for OpenID in the database and added the require_once line to LocalSettings.php. I don't see the OpenID login page on SpecialPages. Two questions: 1. I changed $wgMainCacheType=CACHE_NOTHING to CACHE_ANYTHING. Is that okay? 2. Which of the configuration changes are required?


 * The OpenID login page won't show up in Specialpages. Just go to it directly, Special:OpenID. Eventually you should put a link to that in your MediaWiki:Loginprompt. 1. I don't know, but I think it should. 2. None of them are required, but I think it won't work very well unless you set the trust root correctly. Also, if you deny by default nobody can log into your server, so read the documentation about the Allow/Deny stuff, then set deny-by-default to false. --wikitravel:User:Evan 00:37, 26 February 2007 (UTC)

Internal_error.html
Possible issue in 1.9: Whenever someone tries to view the page of a non-OpenID user, that page will error out into "Internal_error.html". I can stop this from happening by commenting out the code block in OpenID.php related to providing the X-XRDS header and meta tags.

else { $wgOut->addLink(array('rel' => 'openid.server', 'href' => OpenIDServerUrl)); $rt = Title::makeTitle(NS_SPECIAL, 'OpenIDXRDS/'.$user->getName); $wgOut->addMeta('http:X-XRDS-Location', $rt->getFullURL); header('X-XRDS-Location', $rt->getFullURL); }

But I'm not familiar with what exactly is causing the error; I do know it wasn't an issue with 1.8.whatever. Since I don't need to provide OpenID server capabilities, I have just commented it out, but I thought I'd put the issue here in case anyone runs into the same problem or knows how to fix it.

--74.60.50.82 22:17, 26 February 2007 (UTC)


 * I had the same error as this user (I'm running 1.9.3), but I haven't managed to get OpenID working regardless, so I don't know what's going on. Commenting out this block did indeed stop the '500' errors that occurred when I tried to view my own userpage! No problem on user talk pages, or even IP pages I think. pfctdayelise 15:00, 13 April 2007 (UTC)

I think the problem is that the PHP function header call is invalid. I'm not a PHP programmer, I admit, but I read the manual and it says that the second argument is supposed to be "true" or "false" (or not present). I think the proper invocation of this line is: header('X-XRDS-Location: ' . $rt->getFullURL); I replaced the failing code with that line and it's no longer failing. Admittedly, it's not a great test since I'm having some other issue with the server functionality and I'm not able to do a complete successful login, but it does seem to cure the immediate problem.

To summarise: fix this issue by replacing on the comma on ~line 209 of OpenID.setup.php with a period. i.e. from header('X-XRDS-Location: ', $rt->getFullURL); to header('X-XRDS-Location: ' . $rt->getFullURL); 202.81.18.30 22:22, 13 March 2008 (UTC)

To confirm the above, I have just installed v0.8.2 of OpenID on A MediaWiki v1.11.0 Attempting to view User Pages caused '500' errors and changing the comma to period as detailed above (in line 239 of OpenID.setup.php for me) fixed this. --BrillyuntWebby 17:50, 29 May 2008 (UTC)

Fatal error: Class 'Services_Yadis_ManagerLoader' not found in .../pear/php/Auth/OpenID/Consumer.php on line 307
line 307: $loader = new Services_Yadis_ManagerLoader;

According to this Services_Yadis_ManagerLoader is located in /Services/Yadis/Manager.php (line 199). But this Services_Yadis_ManagerLoader is not defined in my Manager.php, at least.

which version of this package was this extension successfully used with? pfctdayelise 12:15, 15 April 2007 (UTC)


 * OK evidently installing OpenID and installing Yadis is NOT the same as installing Yadis through OpenID. wtf.

./pear install --alldeps -f http://www.openidenabled.com/resources/downloads/php-openid/pear/Auth_OpenID-1.2.2.tgz I re-installed OpenID and it seemed to update the files properly. Now I'm back to the errors without any detail whatsoever, yay... :/ --pfctdayelise 12:53, 15 April 2007 (UTC)

Sample settings
require_once("extensions/OpenID/OpenID.php"); $wgOpenIDConsumerDenyByDefault = false; $wgTrustRoot = ...; $wgOpenIDConsumerStoreType = "file"; $wgOpenIDConsumerStorePath = "extensions/OpenID/consumerstore";

the Path variables create a bunch of files under that directory, so don't call them "consumerstore.txt" like I first did. ;)

Some more info about the file vs memc option would be useful... --pfctdayelise 13:55, 16 April 2007 (UTC)

Usernames with slashes
Signing up via special:userlogin, usernames aren't allowed to have slashes ("/"). It seems OpenIDLogin needs to allow them too. While testing my setup I tried putting in the OpenID URL for the username (which happened to be "getopenid.com/username". And uh, it caused the wiki to break on line 495 in Consumer.php: $user->addToDatabase;

So I guess the user suggested names need to be escaped somehow to avoid this. pfctdayelise 14:37, 16 April 2007 (UTC)

MediaWiki:Openidlogininstructions
This accepts HTML but not wikitext. It should accept wikitext too. pfctdayelise 14:56, 16 April 2007 (UTC)

Bad OpenID mode
I had the OpenID extension running in MW 1.6.5, but since upgrading to 1.9.3 I've been unable to log in. I am redirected to my OpenID provider (in this case myopenid.com) correctly, but I get the message:

This request had a bad OpenID mode. The requested mode was p.Use your browser's back button to return to the requesting site and inform them of this problem.

The debug log does not show anything helpful. Has anybody encountered this before? Anybody know what's up? Thanks for any advise. JacobPappe 18:18, 22 May 2007 (UTC)


 * Hmm, this seems to have resolved itself. I think some of my OpenID settings had been commented out. JacobPappe 21:01, 22 May 2007 (UTC)

OpenID accounts not appearing in Newuserlog
Accounts create via OpenID login don't seem to appear in the log, when using Newuserlog. I'm not sure which extension needs to be updated OpenID or Newuserlog - anybody have an idea? Jclerner 16:31, 11 July 2007 (UTC)

SpecialOpenIDLogin.php
So I've installed the OpenID extension following the instructions, but now I get a warning about a missing file (includes/SpecialOpenIDLogin.php) whenever I try to access the login page. I've looked for the file everywhere and I can't find it. Thanks in advance for help on this!

Broken?
The plugin just doens't work for me.


 * My Wiki's allow me to enter an OpenID at "Spesial:OpenIDLogin".
 * It then redirects to the OpenID provider to say alright, share the identity with this site.
 * It then goes back to MediaWiki and displays "Finish OpenID login" and claims "Your OpenID server did not provide a nickname (either because it can't, or because you told it not to). All users need a nickname; you can choose one from the options below." and allows me to choose "An auto-generated name (OpenIDUser2)" or "A name of your choice:".
 * MW then says "Verification of the OpenID URL failed. " at Spesial:OpenIDFinish/ChooseName. Every single time. At every provider.
 * Something is obviously extremely rotten in Denmark. And I have no idea why/what would cause this.

The extention don't seems to bother anything else, though, so I'll leave it "enabled" (but not working), perhaps mr. Prodromou or someone else can try http://dikt.org/Spesial:OpenIDLogin and give me a clue as to why oh why this doesn't work... --81.227.239.183 13:02, 26 July 2007 (UTC)

https login on WikiTravel does not work
Interesting that the MediaWiki wiki here has no OpenID support.

Anyway, I tried to sign up for WikiTravel through my OpenID provider, which uses https (which is a smart thing, all OpenID providers should do that), but the bloody wiki does not let me login through https, only standard http. I wonder if they are using an older version of this extension, therein lying the problem perhaps. Or perhaps not. I wonder how I may approach them on this subject.

I do know that this extension works with https because we installed it at XiphWiki, and there I can login anytime.--Saoshyant 00:30, 12 August 2007 (UTC)

Report: Notable Bugs
I decided to create a list of bugs that are annoying me to no end, in hopes that they may be fixed by the developer.--Saoshyant 03:30, 12 August 2007 (UTC)

Profile erasing
I have tested this several times, and the issue appears to be real. Every time I login through OpenID, my profile is completely erased. Real Name, Signature, E-mail &mdash; it's all gone! This is a serious problem and needs to be fixed.

Lack of "Remember Me" option
This is just annoying. I have to login again everytime I restart my browser. Why can the extension not mimic the standard login procedure to allow me to stay logged on after verification?

Separated Standard and OpenID login options
Why is this even happening? Most OpenID sites out there put the two login methods in one single page.

OpenID/XRDS Meta tags are not generated for users logged in via external OpenID provider
I was wondering why can't I use my Userpage to sign in to other OpenID-enabled sites and I realized that Userpage doesn't have the required Meta tags. I started digging and found that OpenID.php has these lines:

$openid = OpenIdGetUserUrl($user); if (isset($openid) && strlen($openid) != 0) { $url = OpenIDToUrl($openid); $disp = htmlspecialchars($openid); $wgOut->setSubtitle(" " .		"" .		"$disp" .		" "); } else { $wgOut->addLink(array('rel' => 'openid.server', 'href' => OpenIDServerUrl)); $rt = Title::makeTitle(NS_SPECIAL, 'OpenIDXRDS/'.$user->getName); $wgOut->addMeta('http:X-XRDS-Location', $rt->getFullURL); header('X-XRDS-Location', $rt->getFullURL); }

Why is that? It seems to me that you either get a link to your OpenID url or proper meta tags? So, if you've signed up using OpenID you can't use MediaWiki as an OpenID-server anymore? It makes so little sense it almost doesn't make any sense at all to me. --81.195.21.207 19:13, 22 August 2007 (UTC)

Length parameter must be greater than 0
I've done a small amount of hacking in CryptUtil, but I can't get it to work. /dev/urandom is working, so I don't know what CryptUtil is complaining about. Warning: fread [function.fread]: Length parameter must be greater than 0 in /usr/local/src/php-openid-2.0.0-rc2/Auth/OpenID/CryptUtil.php on line 65

Special:Version looks like this: * MediaWiki: 1.10.0 * PHP: 5.2.0-8+etch7 (apache2handler) * MySQL: 5.0.37-log

Extensions Other ConfirmEdit	Simple captcha implementation	Brion Vibber MicroID (version 0.1)	adds a MicroID to user pages to confirm account with external services	Evan Prodromou OpenID (version 0.7.0)	lets users login to the wiki with an OpenID and login to other OpenID-aware Web sites with their wiki user account	Evan Prodromou Guaka 11:48, 18 October 2007 (UTC)


 * Maybe it's due to the redirect. I tried to log in at http://wiki.foaf-project.org/ with http://guaka.org, which is merely an OpenID delegation to http://guaka.myopenid.com. guaka.org didn't work, myopenid.com worked. Here's the relevant piece of XHTML at guaka.org:

  Guaka 12:59, 2 November 2007 (UTC)

AddAccount Hook
Would it be possible to run the AddAccount hook when the user sets up their account so the newly configured/added user shows up in the new user log? That'd be cool, there are a few admins on our site that were wondering where these new users came from when they didn't show up in the log.

--Tderouin 17:16, 7 January 2008 (UTC)

Odd Header behavior
I have two wikis which I put the OpenID extension into recently, and the OpenID extension broke the User Pages for which it was acting as an OpenID server.

The solution that I came to was to comment out line 172 of OpenID.php:

$wgOut->addLink(array('rel' => 'openid.server', 'href' => OpenIDServerUrl)); $rt = Title::makeTitle(NS_SPECIAL, 'OpenIDXRDS/'.$user->getName); $wgOut->addMeta('http:X-XRDS-Location', $rt->getFullURL); // 						header('X-XRDS-Location', $rt->getFullURL);

It appears that MediaWiki 1.11 is outputting something before it reaches the OpenID extension included in the LocalSettings.php. I'm trying to run down exactly where this is happening, but as for now, commenting the header line works.

--NoTea 04:32, 25 January 2008 (UTC)


 * I went through the list of wikis using this extension and these ones are using MediaWiki 1.11.0:
 * http://wiki.creativecommons.org/Special:Version
 * http://wiki.openid.net/Special:Version


 * My CreativeCommons wiki userpage seems fine, but perhaps it's only a problem after it's used as an ID on another site. So I tried using this to login to Wikevent.org, but after the CC wiki asks for confirmation, it just leaves me at an empty page of Search results. I'll do more experimenting later - gotta run now.


 * At Appropedia, we also use this version, and want to make sure there's no problem before we install it. NoTea, after you commented out the line, have you had any problems at all? What is the url of the wiki are you managing? --Chriswaterguy 05:52, 19 February 2008 (UTC)


 * I still can't use my CreativeCommons wiki userpage as an OpenID - when trying to use it to log into another site, it again failed in the same way. At first it looks promising ("Check if you want to share data with http://bmannconsulting.com" but then it just displays the text Search results.


 * I can't test this using wiki.openid.net, as the login is only by OpenID, and it seems like this site isn't set up to work as an identity provider.


 * Any insights? --Chriswaterguy 14:09, 19 February 2008 (UTC)


 * Success - I can login to another wiki (Wikevent) with OpenID, using my userpage on Schwarzes Wiki (German Gothic-Wiki - just posted today on the "list of wikis using this extension" and also using MW 1.11.0).


 * Creating my account there was a slight challenge (but thank you translate.google.com), and when I went to login to Wikevent and was passed to the Schwarzes Wiki, I had to guess that "Suche" ("Search") actually meant to register, and it did.


 * Now to check whether my userpage on the Schwarzes Wiki is broken... nope, looks fine!


 * As Mel Brooks might say, the Schwarzes be with you. --Chriswaterguy 03:47, 20 February 2008 (UTC)

Cannot login to OpenID
Hello, I setup my MediaWiki at http://www.khamthai.com/ My login page is at http://khamthai.com/word/Special:OpenIDLoginOpenID

However I could not login with my OpenID either from Yahoo! OpenID or IDProxy.net. I got messages "Sorry! Something is not quite right with the request we received from the website you are trying to use..." from Yahoo! and "500 Error Server error." from IDProxy.net. My OpenID works fine with Wikitravel and Wikihow.

In my /tmp/openid-consumer, I have two files in /associations. Nothing is in /nonces and /temp. In my MySQL, there is a blank OpenID table.

Thank you for any response. Regards --Manop 22:55, 31 January 2008 (UTC)

Verification failed
I'm setting up OpenID for my new wiki. However, whenever I login, I get an error:
 * Verification of the OpenID URL failed. Error message: "return_to does not match return URL. Expected http://15monkeys.com/wiki/shared/index.php?title=Special:OpenIDFinish, got http://15monkeys.com/wiki/shared/index.php?title=Special:OpenIDFinish&janrain_nonce=2008-03-25T18%3A30%3A41ZQVKcHE"

When I login using a remote OpenID, I get even more janrain garbage which it doesn't expect. I'm using verion 2.0.1 of php-openid. --BigSmoke 18:39, 25 March 2008 (UTC)

OpenID Failed Clamshell Same Server
I am currently running a clamshell openid server on ____/openid my wiki is at ____/w/Main_Page or ____/Wiki:Main_Page when i try to convert my current login "Lenary" to my OpenID on the same server, it gives me this error: "Verification of the OpenID URL failed. Error message: "Not in requested trust domain:____"" with a link. when i click this link, another error comes up: "Invalid openid.mode ''". i have tried changing the $wgTrustRoot to both of the above addresses, but neither work. $wgOpenIDConsumerDenyByDefault = false; me and a friend are working on rectifying this, but nothing is working. The /Auth from the library you asked for a prerequisite is at ____/w/Auth as well as /usr/share/php5 and /usr/?bin?/php5 (i'm not sure of the last one) i have no clue what to do now. I have tried all 3 addresses clamshell lets you use, ____/openid/clamshell.php?u=### ___/openid/?u=### ___/openid/### (sorry, i have obscured all addresses for security... ____ is the server domain name, ### is my clamshell username)

i have just also copied /Auth to ____/w/extensions/OpenID


 * Hi Anonymous. You shouldn't need to do this last step, but rather place Auth in $IP/includes, since it'll be automatically included in the include_path. Regarding the error you are getting, it's probably related with $wgTrustRoot. Try to set it to a value equal to the start of your wiki URL, including the port, if you're using other port than 80. It took me some time to figure that out. I'm using it with: ClamShell 0.6.7 and MediaWiki 1.12.0 (had to upgrade from 1.10 to support the i18n new stuff). Thanks to Evan Prodromou for the great work. Nuno Tavares 00:17, 3 May 2008 (UTC)


 * would that route be something like http://example.com/Wiki: (where http://example.com/Wiki:Main_Page was the main page, but http://example.com/w/ was the actual dir of the wiki? thanks for the help so far Nuno


 * http://example.com/ should be enough, I believe. Nuno Tavares 21:28, 5 May 2008 (UTC)

not under trust_root
Nothing I did in LocalSettings.php helped with this error. Editing OpenID.setup.php and adding my trust_root URL to $wgTrustRoot did the trick.

OpenID.setup.php $wgTrustRoot = "http://www.example.com/wiki/";
 * 1) Defines the trust root for this server
 * 2) If null, we make a guess
 * 3) $wgTrustRoot = null;

--Beagle 17:18, 17 May 2008 (UTC)
 * Hmmm... that's odd. Just for fun, I commented the $wgTrustRoot entry in OpenID.setup.php and now it appears that the entry in LocalSettings.php is being read.
 * Yes, by George, it is reading LocalSettings.php now because if I comment the $wqTrustRoot entry there it fails. You can like see for yourself at tioat dot net slash wiki if ya don't believe me. I'm just so thrilled it works now. ;) --Beagle 09:47, 18 May 2008 (UTC)

Install problem with head MW 1.13
We have the most current files (subversion checkout) in phase3/extension/OpenID, executed the sql code to create the necessary table and have require_once("$IP/extensions/OpenID/OpenID.setup.php"); in LocalSettings. We do use symbolic links: /var/www/PWiki/ contains a link extensions to /usr/share/mediawiki/phase3/extensions. All other extensions work that way, so we believe this is not the problem. So far only OpenID does not work with MediaWiki head revision. Showing main pages works ok, but navigating to special pages creates an error. The error is strange to non-experts, because it refers to plenty of paths that simply don't exist:

Warning: AutoLoader::require(/var/www/PWiki/Auth/OpenID/Server.php) [function.AutoLoader-require]: failed to open stream: No such file or directory in  /usr/share/mediawiki/phase3/includes/AutoLoader.php on line 506 Fatal error: AutoLoader::require [function.require]: Failed opening required '/var/www/PWiki/Auth/OpenID/Server.php' (include_path='/var/www/PWiki:/var/www/PWiki/includes: /var/www/PWiki/languages:.:/usr/share/php:/usr/share/pear') in   /usr/share/mediawiki/phase3/includes/AutoLoader.php on line 506

Anyone has an idea or a solution? Many thanks! --Vigilius 18:00, 20 July 2008 (UTC)

Where to download
Where do I go to download this?


 * Follow the link in the infobox in the upper right corner, after "download". Easiest is, however, to use subversion to check out the entire extension branch; many extensions are supported in the mediawiki subversion system. At a place where you want the checkout to be downloaded to, run the following commandline:
 * svn checkout http://svn.wikimedia.org/svnroot/mediawiki/trunk/extensions
 * --Vigilius 22:20, 31 July 2008 (UTC)