Как подключить Mediawiki к пользовательской базе данных пользователей?
извините за титул, я не могу найти правильные слова для этого. Позвольте мне объяснить, что я хочу сделать:
У меня есть сайт и Wiki (последние Mediawiki). Вики закрыта, поэтому вам нужна учетная запись для чтения / записи в вики. Но когда пользователь входит на мой сайт, он должен автоматически войти в Вики, когда он приходит туда.
мой первый взгляд на пользовательскую таблицу MySQL mediawiki сделал меня невежественным: все сохраняется как двоичные данные, но в моей базе пользователя это открытый текст, за исключением пароля, конечно.
Я не знаю, как поступить?
2 ответов
вы в основном хотите иметь две вещи:
- одна база данных учетной записи на вашем сайте, которая также используется из mediawiki.
- автоматический вход в MediaWiki при входе пользователя на ваш сайт
Центральная база данных пользователей
Mediawiki имеет несколько расширений с подключением управления пользователями к другой базе данных, для пример:
вы должны взглянуть на ExtAuthDB, так как он должен быть достаточно настраиваемым для вас.
Единый Вход
Single sign on (SSO) в основном выполняется путем обмена файлами cookie между веб-приложениями. Чтобы это произошло, вам нужно иметь wiki в a поддомен вашей главной страницы, т. е. wiki.example.org
когда ваш сайт находится на example.org
.
на вашем сайте установите cookie для .example.org
(обратите внимание на ведущую точку в домене cookie), поэтому она доступна для wiki.example.org
тоже.
содержимое cookies может быть либо полноценным файлом cookie mediawiki (который вам нужно создать на вашем сайте), либо файлом cookie с соответствующей информацией о пользователе, который читает и регистрирует пользователь в собственном расширении wiki. Я предлагаю посмотреть, как Phpbb_Single_Sign-On реализовано и сделать то же самое для вашего сайта.
вы можете позвонить MediaWiki API: Login на вашем сайте войти в рутину и API: выход при выходе из системы Укажите имя пользователя и пароль, используемые на вашем сайте и Вики одинаковы.