Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jsf-2/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mediawiki AuthManager和SessionManager SSO_Mediawiki_Mediawiki Extensions - Fatal编程技术网

Mediawiki AuthManager和SessionManager SSO

Mediawiki AuthManager和SessionManager SSO,mediawiki,mediawiki-extensions,Mediawiki,Mediawiki Extensions,我目前正在使用1.24.x,并使用LoginForm类和FauxRequest来登录远程服务器(如果远程服务器不存在,则在本地创建远程服务器),但该功能在1.27.x中被删除,因此我不得不使用AuthManager和SessionMager编写新的标准。我也将升级到1.31,只要它的LTS版本出来。 在阅读AuthManager和SessionManager时,我不明白如何对外部用户进行身份验证。我还研究了扩展插件pluggableSSO,它使用PluggableAuth,但不能理解它。 有人能

我目前正在使用1.24.x,并使用LoginForm类和FauxRequest来登录远程服务器(如果远程服务器不存在,则在本地创建远程服务器),但该功能在1.27.x中被删除,因此我不得不使用AuthManager和SessionMager编写新的标准。我也将升级到1.31,只要它的LTS版本出来。 在阅读AuthManager和SessionManager时,我不明白如何对外部用户进行身份验证。我还研究了扩展插件pluggableSSO,它使用PluggableAuth,但不能理解它。 有人能给我举一个简单的例子,说明如果我有用户id和用户名,如何对用户进行身份验证?如果该用户不存在,我如何创建一个用户并在本地对其进行身份验证


谢谢

如果像我这样对MediaWiki非常陌生的人,有一个名为PluggableAuth和Auth_Remoteuser的SSO解决方案。 我选择了PluggableAuth,它是基于AuthManager实现的,非常容易集成。 我们只需要定义一个全局变量$PluggableAuth_类,并在其中实现以下方法:

public function authenticate( &$id, &$username, &$realname, &$email, &$errorMessage )
public function saveExtraAttributes( $id )
public function deauthenticate( User &$user )
有关更多信息,请访问:

如果不知道SSO系统如何工作的模糊细节,就很难说。