2010-12-10 19 views
2

私は自分のログインシステムを持っており、MediaWikiに同じセッションを共有したいと思っています。私は自分のログインシステムを自動的に私のMediaWikiにもログインさせようとしています。つまり、おそらく同じユーザーデータベースを共有する必要があります。MediaWikiのセッションはどこで設定されていますか?

アドバイス?

+0

http://www.mediawiki.org/wiki/OAuth oauth maybe? –

答えて

1

これがまさにあなたが望むものであるかどうかはわかりませんが、LDAP Authenticationを使用しています。

+0

これが私の必要なものかどうかは分かりません。私はLDAPが何であるか知りません。 – Strawberry

1

セッションはincludes/GlobalFunctions.phpに設定されています。ユーザーがシステムにログインした後にmediawikiへのユーザーログインを偽装するには、Cookieのパラメータが一致するようにする必要があります(CookieのURLは同じでなければなりません)。彼らはsession_set_cookie_paramsの呼び出しでそれを構築するために使用する引数を見てください。

セッションが正しく設定されたら、ユーザーを読み込んでセッションに挿入する必要があります。その結果、mediawikiはユーザーがログインしているかどうかを確認するときに、直前。 includes/User.phpを見ると、User::loadFromSessionコールは、彼らがそこで見つけることを期待している有望な場所のように見えます。

+0

これは有望ですが、私はこれを試してみるつもりです。 – Strawberry

1

MediaWikiソースを直接変更すると、MediaWikiの将来のバージョンにアップグレードするのが難しくなります。あなたの既存のログインシステムが何であるかを指定していないが、あなたはならラッキー誰かがすでにそれ用のプラグインを構築してい

http://www.mediawiki.org/wiki/AuthPlugin

:既存の認証プラグインフレームワークを使用するより良いだろう

http://www.mediawiki.org/wiki/Category:User_identity_extensions

関連する問題