对不起标题,我找不到合适的词语。 让我解释一下我想做的事情:
我有一个网站和一个Wiki(最新的Mediawiki)。 Wiki已关闭,因此您需要一个帐户才能在Wiki中读/写。 但是当用户登录我的网站时,他来到维基时会自动登录到维基。
我第一次看到mysql mediawiki用户表让我一无所知:一切都保存为二进制数据, 但在我的用户数据库中,它是纯文本,当然除了密码。
我不知道该怎么办?
答案 0 :(得分:9)
你基本上想要两件事:
Mediawiki有几个扩展,将用户管理连接到不同的数据库,例如:
你应该看看ExtAuthDB,因为它应该可以配置给你。
单点登录(SSO)主要通过在Web应用程序之间共享cookie来完成。要实现这一点,您需要将wiki放在主页的子域中,即当您的网站位于wiki.example.org
时example.org
。
在您的网站上,为.example.org
设置一个Cookie(请注意Cookie域中的前导点),因此它也适用于wiki.example.org
。
Cookie内容可能是一个成熟的mediawiki cookie(您需要在您的网站上创建),或者是一个cookie,其中包含维基的自己的扩展读取并记录用户的相关用户信息。 我建议您查看Phpbb_Single_Sign-On是如何实施的,并对您的网站执行相同操作。
答案 1 :(得分:2)
您可以在您的网站登录例程上调用MediaWiki API:Login,在注销例程中调用API:Logout,提供您网站上使用的用户名和密码,wiki也是相同的。