Hi All: I have a question: I don't want to use mediawiki's internal user management system; instead, I want to login in as follows: I click a button in the wiki's mainpage, and it will redirect me to a external site. And after I login in the external site, it will redirect to the wiki's page with some user infomation in the URL returned. And I can get the user info by parsing the URL. And I want use this user as my current wiki user. There will be no other internal databases related with the user system. My external site does't support OpenID or other systems. So, my problem is: how I can achieve this? Do I need to modify the wiki's user management system
Hi Zeng,
If the external site is just another web application on a different domain, then this is probably not possible. At least, not possible to do in a secure way.
If they share a domain, and mediawiki can read (and verify, and use) the other website's cookies, then you could write your own extension for it in php, using the AuthPlugin framework. I haven't seen any examples that did this well, so I think it would be fragile at best.
If the external application is running on your own server, and uses a directory or it's own database for users, you could use the LDAP Authentication extension, or do something similar to check the other application's DB for authentication.
I think those are your options.
On Tue, May 28, 2013 at 9:42 AM, Zeng Pengcheng zpcpromac@gmail.com wrote:
Hi All: I have a question: I don't want to use mediawiki's internal user management system; instead, I want to login in as follows: I click a button in the wiki's mainpage, and it will redirect me to a external site. And after I login in the external site, it will redirect to the wiki's page with some user infomation in the URL returned. And I can get the user info by parsing the URL. And I want use this user as my current wiki user. There will be no other internal databases related with the user system. My external site does't support OpenID or other systems. So, my problem is: how I can achieve this? Do I need to modify the wiki's user management system _______________________________________________ MediaWiki-l mailing list MediaWiki-l@lists.wikimedia.org https://lists.wikimedia.org/mailman/listinfo/mediawiki-l
Hi Chris: Thank you for your answer. The external site is in another domain, but it's an specified web application for authentication. When I login in the external site, it will redirect to wiki with its user info. I have seen an extension OpenID which I think works similiarly with my requirement. OpenID will hijack wiki's login, and use its returned user as an $wgUser. However, It seems quite complicated to replace wiki's internal user login system. I have not fully understood the principle by now. And I will try it with my best.
Best Regards!
mediawiki-l@lists.wikimedia.org