我有我自己的登录系统,我想让MediaWiki共享同一个会话。我试图让我的登录系统自动登录到我的MediaWiki,这意味着我可能也必须共享相同的用户数据库。MediaWiki的会话在哪里设置?
建议?
我有我自己的登录系统,我想让MediaWiki共享同一个会话。我试图让我的登录系统自动登录到我的MediaWiki,这意味着我可能也必须共享相同的用户数据库。MediaWiki的会话在哪里设置?
建议?
不知道这是否正是你想要的,但我们使用LDAP Authentication。
我不确定这是否是我需要的。我甚至不知道LDAP是什么。 – Strawberry 2010-12-10 19:03:16
会话设置在includes/GlobalFunctions.php
。如果您想在用户登录到系统后假冒用户登录到mediawiki,则需要确保Cookie参数匹配(例如Cookie URL必须相同);看看他们在调用session_set_cookie_params
时使用的参数。
正确设置了会话后,您需要加载用户并将其注入会话,以便在mediawiki检查用户是否登录时找到注入的用户并进入就在前方。看看includes/User.php
,User::loadFromSession
调用看起来像是一个很有前途的地方,可以找出他们期望在那里找到的东西。
这听起来很有希望,我会尝试一下。 – Strawberry 2010-12-13 20:59:39
如果您直接对MediaWiki源进行更改,您将很难升级到MediaWiki的未来版本。这将是更好的使用现有的身份验证插件框架:
http://www.mediawiki.org/wiki/AuthPlugin
没有指定现有的登录系统是什么,但如果你是幸运的人已经建立了一个插件吧:
http://www.mediawiki.org/wiki/Category:User_identity_extensions
http://www.mediawiki.org/wiki/OAuth oauth也许? – 2010-12-10 18:56:07