在我的主机中,我目前安装了 2 个 wordpress 应用程序、1 个 phpBB 论坛和一个 MediaWiki。
有没有办法合并登录,以便所有应用程序共享相同的凭据?
例如,我只想在我的 phpBB 中注册,然后我想使用给定的用户名和密码访问所有其他应用程序。
就算你不知道统一的方式,你还知道哪些其他的登录集成方式?各有优劣?
在我的主机中,我目前安装了 2 个 wordpress 应用程序、1 个 phpBB 论坛和一个 MediaWiki。
有没有办法合并登录,以便所有应用程序共享相同的凭据?
例如,我只想在我的 phpBB 中注册,然后我想使用给定的用户名和密码访问所有其他应用程序。
就算你不知道统一的方式,你还知道哪些其他的登录集成方式?各有优劣?
当您集成系统时。只要记住两件事:
登录系统
检查两个系统的用户名/密码。
更改密码
更新两个系统上的密码。
我不知道如何共享会话 cookie,但您可以轻松共享相同的登录名。即人们需要分别登录到两个站点,但可以使用相同的用户名和密码。
在 mediawiki 文件“LocalSettings.PHP”中,您可以告诉它使用不同的(wordpress)数据库进行身份验证:
例如
require_once('includes/AuthPlugin.php');
require_once('extensions/AuthPress.php');
$wgAuth = new AuthPress();
$wgAuth->setAuthPressTablePrefix('evo_');
# Only include the following if you aren't using the same db as MediaWiki
$wgAuth->setAuthPressDBServer ('localhost');
$wgAuth->setAuthPressDBName('yourWordPressDB');
$wgAuth->setAuthPressUser('mySQL user for same');
$wgAuth->setAuthPressPassword('The password');
见http://bbpress.org/forums/topic/mediawiki-bbpress-and-wordpress-integration
我曾经从 phpBB 端做了一个 phpBB/MediaWiki 登录集成。
检查出来。
如果您正在集成一堆不同的应用程序,并且您真的只是想要一个桥接器,那么我在Single-Signon.com的桥接器上取得了很好的成功。您可以在此处查看支持的应用程序: http ://www.single-signon.com/en/applications.html
我还为 phpBB 集成使用了 MediaWiki 扩展: http ://www.mediawiki.org/wiki/Extension:PHPBB/Users_Integration
几年前曾尝试过这样做,我记得这并不容易。
我这样做的方法是为用户/传递创建全新的表,然后用新表的外键替换相应软件中的这些列 - 这需要在每个应用程序中对核心文件进行大量自定义调整 - 主要确保所有对此数据的 SQL 请求具有新表所需的额外连接。如果我有时间,我可能会尝试逐步提供所需的更改。
不过,这种方法有一些相当大的缺点。主要的是从现在开始你将不得不手动更新任何补丁
如果您还没有内容或用户,请查看http://bbpress.org/documentation/integration-with-wordpress/,这将使您的事情变得更简单。
我不太记得了,但我相信我遇到的大问题是 MediaWiki 要求用户名的格式与 phpBB 冲突。
当然,一种完全不同的方法是修改每个软件以使用 OpenID _ 我相信插件/扩展对于您提到的所有应用程序都是现成的。
我个人认为集成登录系统是使用多个预构建应用程序时最困难的工作之一。作为重用和模块化的拥护者,我觉得这令人失望。如果有人知道在随机应用程序 X 和随机应用程序 Y 之间处理这个问题的任何简单方法,我很想知道。
您可以为 mediaWiki 编写自定义登录挂钩。我已经为 LibraryThing 完成了这项工作,以便将来自我们主站点的登录凭据转移到我们的 mediaWiki 安装中。身份验证钩子扩展了 mediaWiki 的 AuthPlugin。
有几个小问题:
但是,如果您可以处理这些问题,那么您当然可以在 mediaWiki 中使用您自己的用户/密码数据。
优点: